Saturday, July 30, 2016

Meet v9os, a minimalist illumos-based SPARC distro

This summer I decided то build something compact and modern for my two SunFire servers using IPS. Meet v9os - minimalist illumos-based SPARC distro.
On this stage, actually it's an OmniOS SPARC version, because the iso was mostly created using omnios-build, so I would like to express my deepest gratitude to OmniOS developers.

The iso was tested on SunFire v240. I would be grateful for any feedback on what works, and how it boots on other SPARC servers. I'm looking for the hosting for the IPS repository, for now you need to download packed IPS repo from the sourceforge and put it somewhere on installed system. I forgot to fix timezone installer issue in this iso, so please just type “Continue” on timezone screen while installing. Root password is solaris. This is a beta release and it lacks yet some packages like java, gcc 5. 

Special thanks to Martin (I used OpenSXCE on the first step) and Igor for the SPARC support in illumos.

25 comments:


  1. root@deimos:/home/sysadmin# ldm start v9os; telnet localhost 5004
    LDom v9os started
    Trying 127.0.0.1...
    Connected to localhost.
    Escape character is '^]'.

    Connecting to console "v9os" in group "v9os" ....
    Press ~? for control options ..
    NOTICE: Entering OpenBoot.
    NOTICE: Fetching Guest MD from HV.
    NOTICE: Starting additional cpus.
    NOTICE: Initializing LDC services.
    NOTICE: Probing PCI devices.
    NOTICE: Finished PCI probing.

    SPARC T5-2, No Keyboard
    Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
    OpenBoot 4.38.3, 8.0000 GB memory available, Serial #83453781.
    Ethernet address 0:14:4f:f9:67:55, Host ID: 84f96755.



    {0} ok boot cdrom
    Boot device: /virtual-devices@100/channel-devices@200/disk@1 File and args:
    WARNING: unrecognized token: pause
    WARNING: unrecognized token: cbcond
    WARNING: unrecognized token: aes
    WARNING: unrecognized token: des
    WARNING: unrecognized token: kasumi
    WARNING: unrecognized token: camellia
    WARNING: unrecognized token: md5
    WARNING: unrecognized token: sha1
    WARNING: unrecognized token: sha256
    WARNING: unrecognized token: sha512
    WARNING: unrecognized token: mpmul
    WARNING: unrecognized token: mont
    WARNING: unrecognized token: crc32c
    SunOS Release 5.11 Version master-0-g5093b3b 64-bit
    Copyright (c) 1983, 2010, Oracle and/or its affiliates. All rights reserved.
    WARNING: promif_ds_init: can't find ds_cap_init
    Remounting root read/write
    Probing for device nodes ...
    Preparing image for use
    Requesting System Maintenance Mode
    (See /lib/svc/share/README for more information.)
    Console login service(s) cannot run

    Enter user name for system maintenance (control-d to bypass): root
    Enter root password (control-d to bypass):
    single-user privilege assigned to root on /dev/console.
    Entering System Maintenance Mode

    Aug 1 04:31:49 su: 'su root' succeeded for root on /dev/console
    -bash: /usr/sbin/quota: No such file or directory
    The Illumos Project SunOS 5.11 master-0-g5093b3b June 2016
    -bash: /bin/mail: No such file or directory
    -bash: /usr/bin/hostname: No such file or directory
    root@:/root#


    so, how to make an actual install?

    ReplyDelete
  2. I think it can't find cdrom to mount.
    cat /etc/svc/volatile/system-filesystem-root-assembly:media.log

    ReplyDelete


  3. root@:/root# cat /etc/svc/volatile/system-filesystem-root-assembly:media.log
    [ start + 1.34s Enabled. ]
    [ start + 5.39s Executing start method ("/lib/svc/method/media-assembly"). ]
    Unable to mount media
    [ start + 5.41s Method "start" exited with status 95. ]
    -bash: /usr/bin/hostname: No such file or directory
    root@:/root#


    yeah, can't mount media. :-/


    compare output from solaris 11 and v9os:
    solaris11# prtconf -D
    virtual-devices, instance #0 (driver name: vnex)
    flashprom
    random-number-generator, instance #0 (driver name: n2rng)
    console, instance #0 (driver name: qcn)
    channel-devices, instance #0 (driver name: cnex)
    network, instance #0 (driver name: vnet)
    disk, instance #0 (driver name: vdc)
    disk, instance #1 (driver name: vdc)
    pciv-communication, instance #0 (driver name: vpci)
    virtual-domain-service, instance #0 (driver name: vlds)

    v9os# prtconf -D
    virtual-devices, instance #0 (driver name: vnex)
    flashprom
    random-number-generator
    console, instance #0 (driver name: qcn)
    channel-devices
    network
    disk
    disk
    pciv-communication
    virtual-domain-service

    so there's no driver attached.

    ReplyDelete
  4. Ah, I didn't include ldom in this first iso (will fix in next build). Thanks for the feedback!

    ReplyDelete
  5. What is default user/password for installed v9os? Thanks.

    ReplyDelete
  6. Thanks. Works in LDOM (baremetal hardware is T5-2).

    PS: a small bug report

    Aug 4 09:57:23 v9os unix: [ID 950921 kern.info] cpu0: SPARC-T5 (cpuid 0, clock 3600 MHz)
    Aug 4 09:57:23 v9os unix: [ID 950921 kern.info] cpu1: SPARC-T5 (cpuid 1, clock 3600 MHz)

    root@v9os:/root# prtdiag -v
    System Configuration: Oracle Corporation sun4v SPARC T5-2
    Memory size: 8192 Megabytes

    ================================ Virtual CPUs ================================


    CPU ID Frequency Implementation Status
    ------ --------- ---------------------- -------
    0 -694 MHz SPARC-T5 on-line
    1 -694 MHz SPARC-T5 on-line
    2 -694 MHz SPARC-T5 on-line
    3 -694 MHz SPARC-T5 on-line

    ================================ IO Devices ================================
    Slot + Bus Name + Model
    Status Type Path
    ----------------------------------------------------------------------------

    ReplyDelete
  7. Many thanks :) Would be interesting to investigate it, unfortunately I haven't access to such model

    ReplyDelete
  8. @Anatoly Pugachev
    I think you cannot run S11 on v480/v490 hardware.
    The support was discontinued by Oracle.
    Latest capable was Solaris Express release.

    ReplyDelete
  9. Is there a way to install this without a display device, such as via ftp? I have no graphics board installed. I'm trying to setup on a sun v240. It has a cd rom - i also have solaris 8 on disc.

    ReplyDelete
  10. sorry i meant i have a sunfire v120

    ReplyDelete
  11. Hi thanks for the reply Alhazred. Is it possible to replicate ALOM via a Windows PC if I have the Sun connected with a standard Ethernet cable or do i need special wiring or hardware?

    ReplyDelete
  12. You need something like this: http://www.ebay.com/itm/USB-to-RS232-Serial-to-RJ45-CAT5-Console-Adapter-Cable-for-Cisco-Routers-FTDI-/111485387687?hash=item19f50c03a7:g:y2QAAOSwIrNWFNDZ

    ReplyDelete
  13. Thanks that's helpful. How about if i got a graphics card - is that likely to work on a standard VGA monitor? We used to used big NEC monitors at Uni many moons ago!

    ReplyDelete
  14. Or maybe just cheaper to get a cable and run an x-term emulator from the Windows PC?

    ReplyDelete
  15. Ah, I found this for which advises connecting with SSH ->
    http://unixed.com/blog/2013/06/accessing-the-sparc-system-console/

    ReplyDelete
  16. cable is much cheaper (you will need also install FDTI driver: http://www.ftdichip.com/Drivers/VCP.htm)

    ReplyDelete
  17. Thanks for the help - much appreciated:)

    ReplyDelete
  18. Burn distro with software CdBurn XP use new CD-ROM [ supermarket quality ] with Operating System Windows 7 32, DVD-CDROM reader Sony IDE, System Ultra 10 Creator 3D UltraSparc IIi 440Mhz 640 Mb Openboot 3.27. SCSI Adaptec with Magneto Optical.
    consconfig: cannot find driver for screen device /SUNW,ffb@1e,0
    Can't find driver for console framebuffer
    svccfg: Pattern 'environment:init' doesn't match any instances or services
    svcadm: Pattern 'environment:init' doesn't match any instances
    ttymon cannot create log file "/var/saf/zsmon/log":Read-only file system
    want read floppy drive.
    ATA Hard Disk Maxtor 127,5 Gb
    want read floppy drive.
    After choice zone Europe the program return into installation screen.
    choice shell.
    format disk
    exit and choice install
    then choice disk, frequently want read floppy driver.
    choice UTC/GMT
    system coming to installation
    The installation system have some perplexity and write a lot of message for SONY IDE DVD reader, with block error. Jump the block and go next. not problem with Solaris DVD. [ perhaps low quality Cd-Rom ].
    After reboot the distro start fine. prtdiag - No failures found in System.
    Thanks a lot alhazred i hope you continue.

    ReplyDelete
  19. alhazred,

    I have this up and running in an LDOM on a T5240. I'd intended to use it for serving NAS, but haven't been able to progress thus far due to a fatal bug in the SMB server (I believe this is an Illumos/SPARC issue, not specific to v9os).

    I think the community really needs something like this. The Illumos SPARC distribution situation has become pretty bad. I had been about to take the plunge on attempting something like this myself, when I discovered your project.

    Do you have any plans to release the build system? I'd like to play around with building this myself. I know you've mostly used omnios-build, but I'm sure you had some hurdles to get everything working.

    Thanks for sharing your work.

    ReplyDelete
  20. alhazred,

    I have this up and running in an LDOM on a T5240. I had planned to serve NAS with it, but have been unable to progress due to a fatal bug in the SMB kernel code (I believe this is an Illumos/SPARC bug, not specific to v9os). Hopefully I will have some time to attack this soon.

    I think the community really needs something like this. The Illumos/SPARC distribution situation has become pretty bad. I had actually been about to take the plunge and attempt something similar myself, when I found your project.

    Do you plan to release the build system? I would like to play around with building this myself. I know you used omnios-build, but I'm sure there were still hurdles to getting this built and running.

    Thanks for sharing your work.

    ReplyDelete
  21. Build scripts are available: https://github.com/alhazred/v9os-build
    I've put updated repository archive to sourceforge, now it contains gcc-5.1.0 and other tools, so you can build some components

    ReplyDelete