Project

General

Profile

News

Dyson: Welcome the new LiveCD

Added by Igor Pashev about 7 years ago

Welcome the new LiveCD!

Fully 64-bit kernel and userland.
Only 80MB in size.

Includes Midnight Commander, OpenSSH client,
wget, Lynx browser, bash completion, vim. Almost
all utilities you expect on illumos, Linux cfdisk, debootstrap.

Console login: root/root

Known bug: #56

Download here: http://ftp.osdyson.org/iso/2013-03-25/

Dyson: New illumos kernel

Added by Igor Pashev over 7 years ago

illumos kernel finally (after more that a year) is compiled from sources.
Sources are at state of October 2012 with these fixes:
  • 3443 Missing curly-braces in one ixgbe file.
  • 995 boot message: No randomness provider enabled for /dev/random

Note that old zfsutils will not work on new kernel,
and new zfsutils will not work on old kernel.

Known issues:
  • There are warnings about multiple defined symbols in kmdbmod
  • Closed source drivers are missed (more warnings from scsi drivers)

Discuss at or #osdyson at irc.freenode.net.

How to jump onto new kernel:
  1. Create a shapshot of your VM !
  2. Update APT repository:
    apt-get update
    
  3. Make sure you have new bootadm:
    apt-get install bootadm
    
  4. Create a new "BE":
    zfs snapshot dyson/root@new
    zfs clone dyson/root@new dyson/new
    
  5. Mount devices under the new BE:
    mount -F lofs /devices /dyson/new/devices
    
  6. Sweep out old kernel and its configs - FROM JUST CREATED BE!:
    chroot /dyson/new apt-get purge illumos-kernel
    rm -f /dyson/new/etc/devlink.tab
    rm -f /dyson/new/etc/minor_perm
    rm -f /dyson/new/etc/driver_aliases
    rm -f /dyson/new/etc/driver_classes
    rm -f /dyson/new/etc/name_to_major
    rm -f /dyson/new/etc/security/device_policy
    rm -f /dyson/new/etc/security/extra_privs
    rm -f /dyson/new/etc/path_to_inst
    
  7. Install new packages into new "BE"
    chroot /dyson/new apt-get install illumos-kernel zfsutils
    
  8. install 32-bit libraries for componentents which are still 32-bit:
    chroot /dyson/new apt-get install lib32zfs1
    
  9. Create boot archive:
    bootadm update-archive -R /dyson/new
    
  10. Add a new GRUB entry:
    vim /dyson/boot/grub/menu.lst
    
  11. Add these lines (copy previous and edit bootfs and title):
    title New Kernel
    findroot (pool_dyson,0,a)
    bootfs dyson/new
    kernel$ /platform/i86pc/kernel/amd64/unix -B $ZFS-BOOTFS -m verbose -k
    module$ /platform/i86pc/amd64/boot_archive
    
  12. Reboot and remember to choose New Kernel in GRUB menu:
    sync
    reboot
    

Dyson: VirtualBox HDD updated

Added by Igor Pashev over 7 years ago

There is a new virtual disk image file for VirtualBox.
It is previous image updated from recent APT repository [1].

Almost all system libraries are updated from source (versions like 2.10-x).
There are several 32-bit libraries required for older stuff to run (e. g. init,
or svc.startd). But those libraries are not marked as dependencies.
So be careful and to not delete them until remaining components are rebuilt
from sources (and finally for 64-bit!)

How to use this image:

  1. Download it from http://ftp.osdyson.org/vdi/2012-12-24/
  2. Unpack with unxz
  3. Create a new virtual machine in VirtualBox, type Solaris 10, 64-bit
  4. Point to unpacked VDI when adding a hard drive.
  5. Start VM
  6. Login as "root" with password "root".
Note that it is not possible to boot this image with Qemu:
  1. The kernel fails to import root pool
  2. Network is not available
  3. Boot archive upgrade fails, and thus no console login. Sorry :-)

The first issue can be fixed from LiveCD [2]. I used this command on Debian amd64:

qemu-system-x86_64 -m 888M -hda dyson-vb-2012-12-24.vdi -cdrom dyson-bok-2012-05-22-2338.iso -boot menu=on

Just after Qemu starts, press F12, choose boot from CD. When LiveCD is booted login with "root" and reimport root pool:
zpool import -f dyson

Then reboot. After that you will get farther issues :-)

[1] http://ftp.osdyson.org/vdi/2012-12-24/
[2] http://ftp.osdyson.org/iso/2012-05-22/

Dyson: No binary slavery

Added by Igor Pashev over 7 years ago

After a year of binary slavery, Dyson now going to get all required illumos bits compiled from source.

C library with some other accompanying libraries (libsocket, libnsl and others) now built from illumos source and uploaded to Dyson APT repository.

With sources we are free to do what we need ;-)

The version is "2.10-xx", where "2" is for 2012 year, "10" - for October; thus the sources are at the state of 2012-10-01.

List of illumos issues fixed in Dyson libc package

  • 72 _tx_error needs to preserve the errno value
  • 2252 gettext should search in several directories
  • 2404 mmap.s inconsistency
  • 3243 Add shadow support to getent(1)
  • 3244 utmpd.c: 'ret_val' may be used uninitialized
  • 3253 tsol headers mess

Runtime linker changes

  • All libraries are under /lib/x86_64-illumos/. 32-bit libraries - under /lib32.
  • /usr/bin/crle is a wrapper executing real crle (/usr/lib/x86_64-illumos/crle or /usr/lib32/crle) depending on options. Default is "native", e. i. /usr/lib/<multiarch>/crle. Options -64/-32 will cause 64-bit or 32-bit version to be executed.
  • Default library search path is /lib/<multiarch>:/usr/lib/<multiarch>:/usr/lib for "native" arch, and /lib32:/usr/lib32 for 32-bit objects.
  • Runtime linker itself is /lib/x86_64-illumos/ld.so.1 (64-bit) and /lib32/ld.so.1 (32-bit). Compatibility links are maintained of course.

So, by default no configuration is required for runtime linker.

Library rename

illumos runtime linker rely on illumos ELF library and illumos AVL tree library. Since there are too many ELF and AVL libraries around, illumos' ones have been renamed to libsunelf and libsunavl. This will break some tools, but Dyson is not in production yet ;-).

Dyson: VirtualBox HDD updated

Added by Igor Pashev over 7 years ago

There is a new virtual disk image file for VirtualBox.
It is previous image updated from recent APT repository.

This new image now uses OpenSSH server, Debian shadow package, and Debian Korn shell.

Known issue: #56

Howto use this image:

  1. Download it from http://ftp.osdyson.org/vdi/2012-09-22/
  2. Unpack with unxz
  3. Create a new virtual machine in VirtualBox, type Solaris 10, 64-bit
  4. Point to unpacked VDI when adding a hard drive.
  5. Start VM
  6. Login as root with password root.

SSH server is running, so it is possible to login through ssh with the same credentials.

Dyson: Born again

Added by Igor Pashev about 8 years ago

Bad news: the only Dyson installation ever existed, accidentally died :-(

Good news: the new installation was created from the only ISO ever existed :-)

Issues were encountered:
  1. ISO misses fdisk, so I had to prepare hard drive on OpenIndiana,
    and then boot from ISO and just use debootstrap.
  2. libuuid1 failed to install: cannot create user libuuid.
    To solve it I had to edit /etc/passwd manually and then run debootstrap again.
  3. File /etc/user_attr is missed (#38), so it have to be copied from OpenIndiana,
    otherise svc.configd crashes on boot.
  4. Finally, root user should be created manually (#40)
(101-110/110)

Also available in: Atom