OmniOS testailua virtuaalikoneessa

Tänään on tiistai 10.06.2025. Asensin eilen illalla huvikseni uuden virtuaalikoneen, johon asensin uusimman OmniOS stable-version r151054 omnios-r151054-6ad70ba62c May 2025. Asennus sujui ilman ongelmia ja käynnistän virtuaalikoneeni seuraavanlaisella shell-skriptillä:

#!/bin/bash
qemu-system-x86_64 \
-enable-kvm \
-m 6096 \
-smp 3 \
-drive file=/home/kalevi/virtmachines/omnios.qcow2,format=qcow2 \
-vga std \
-net nic -net user,hostfwd=tcp::2222-:22,hostfwd=tcp::5432-:5432 \
-audiodev pipewire,id=snd0 \
-device ich9-intel-hda \
-device hda-output,audiodev=snd0

En ole edes yrittänyt asentaa mitään X serveriin liittyvää, vaan hallinnoin OmniOS:ia puhtaasti komentoriviltä SSH-yhteydellä.

Tavoitteeni oli asentaa jokin moderni palvelinohjelmisto ihan vain kokeilun vuoksi. Aika nopeasti onnistuin asentamaan PostgreSQL 17.5 version pkg install komennon avulla. Ainoa ongelma oli se, että halusin tietokannan hallinnan tapahtuvan puhtaasti SMF:n svcadm komennolla, joten minun piti hieman selvitellä minne PG-tietokannan data hakemisto piti sijoittaa. Lopulta löysin oikein paikan ja tein tietokannan alustuksen initdb komennolla.

QEMU:n port-forwardin ansiosta pääsen OmniOS:in PG-tietokantaan käsiksi Fedora 42 host-koneeltani komennolla: psql -U kalevi -h localhost -p 5432 -W -d kalevidb.

SSH-yhteys taas onnistuu komennolla: ssh kalevi@localhost -p 2222.

Kokeilin äsken huvikseni kääntää lähdekoodista Sendmailin uusimman version eli 8.18.1. Käännös ei mennyt ihan nätisti läpi, vaan se kosahti siihen, että groff valitti pinon ylivuodosta vacation ohjelman dokumentaation kääntövaiheessa.

En viitsinyt tutkia ongelmaa sen enempää, sillä sendmail binääri ehti kääntyä normaalisti ja samoin myös makemap.

Uusi sendmail käynnistyikin ja tuntuu toimivan ihan normaalisti. En vaivautunut yrittää laittaa sitä SMF:n alaisuuteen, vaan käynnistin ohjelman ihan suoraan lähdekoodipuun polusta käsin. Testasin vain sen verran, että lähetin paikallista sähköpostia root@omnios.local osoitteeseen ja totesin, että /usr/lib/mail.local toimitti viestini perille rootin inboxiin /var/mail/root.

OmniOS:in käyttäjämääräksi on arvioitu vain noin 2000, joten kyse on todella pienen piirin käyttöjärjestelmästä. Se perustuu joskus vuoden 2005 tienoilla julkaistuun, CDDL-lisenssillä varustettuun avoimen lähdekoodin Open Solaris versioon. Kun Oracle osti myöhemmin Sun Microsystemsin, kyseinen firma teki taas Solaris käyttöjärjestelmästä suljettua lähdekoodia. Hakkerit kuitenkin saivat pitää aiemmin julkaistun Open Solariksen, joka muistaakseni pohjautui versioon 10.

OmniOS:in kernel on nimeltään illumos ja se siis on Open Solariksen jälkeläinen. Siinä on ZFS, DTrace, zonet ja virtualisointituki.

SMF on myös merkittävä parannus perinteiseen SysV init:iin, jota aiemmat Solarikset ja Red Hat Enterprise Linuxit käyttivät.

RHEL 7 otti käyttöön systemd ohjelmiston ja SMF tuli Solarikseen versiossa 10 jo vuonna 2005. Olen varma siitä, että kehittäessään systemd:tä Lennart Poettering otti mallia myös Solariksen SMF-toteutuksesta.