A Solaris egy teljesen más világ az operációs rendszerek között. Mégis talán akik az ingyenes és elterjedt Linux-al már megbarátkoztak, azoknak lehet könnyebb az ismerkedés ezzel az újdonsággal. A Solaris sok speciális és egyedi technológiát használ, és sok esetben korlátozottak a Linuxból ismert parancsok kapcsolói. Ezzel az írással próbálnék némi rálátást adni annak, aki Linuxos oldalról közelítene Solaris irányába.
Fontos hangsúlyozni, hogy a következő bemutató a Solaris 10-ig érvényes, a Solaris 11 sok újdonságot fog tartalmazni.
Shell
Linuxon megszokhatták a felhasználók, hogy az alapértelmezett shell a bash. Általában a /bin/sh a bash-re mutat egy szimlinkkel. A Solarisban az alapértelmezett shell a Bourne shell. Sok esetben kompatibilsak, viszont nem minden esetben.
Filesystem struktúra
Rengeteg közös fedezhető fel a Linux és Solaris között ez esetben is. Íme azok a filerendszerek, melyek funkciója és helye megegyezik:
-
/
/sbin
/bin
/lib
/usr
/etc
/var
/opt
/proc
A Solaris rendszereken viszont megtalálható még néhány alapértelmezett könyvtár. Ilyen például a /platform. Ebben a Solaris a különböző hardwarehez vagy architektúrához kötödö állományokat tárolja. Legyen az Remote Board vezérlő bináris, vagy firmware frissítés.
A Linuxok alapértelmezett filerendszernek ext3/4-et, XFS, JFS-t használják. Míg Solarison ez UFS, újabb rendszereknél ZFS és más esetben külső gyártók termékét a VxFS-t.
Binárisok helye
A futtatható bináris állományok helye bizonyos esetekben mindkét rendszeren megegyezik.
-
/bin
/usr/bin
/sbin
/usr/sbin
Viszont a Solaris kicsit különcködő.
A BSD és System V kompatibilis, vagy sok esetben opensource termékek, parancsok egyéb verzióit a következő struktúrákba szokás gyűjteni:
-
/usr/openwin/bin
/usr/dt/bin
/usr/sfw/bin
/opt/sfw/bin
/usr/xpg4/bin
/usr/ccs/bin
/usr/ucb
Konfigurációs állományok
Íme néhány összehasonlító táblázat arról, hogy mit hol is tárol a Linux és a Solaris:
Hálózat

Filerendszer

Levelezés

Log file-ok
Míg a Linux a /var/log/ struktúra alá gyűjti a logokat, addig a Solaris alapértelmezetten a /var/adm/ és /var/log könyvtárak alá. A fö állomány, amibe szinte minden logolódik alapértelmezetten Linuxon a /var/log/syslog míg Solarison a /var/adm/messages
Solaris saját technológiái, amik nincsenek Linuxon
SMF: Ez egy új Service szemléletű megoldás az RC scriptek leváltása érdekében. Részletesen lehet róla olvasni itt.
Zónák: Leginkább a jail-hez vagy chroot környezethez lehet hasonlítani Linuxon. Egyfajta saját virtualizációja a Solarisnak. Részletesen lehet olvasni róla itt.
Dtrace: Egyfajta debugolásra, nyomon követésre lehet használni. A Solaris rendszer rengeteg kernel szintű mérési pontot támogat, amelyet a Dtrace megtud hívni, le tud kérdezni, és tetszőleges kimutatásokat képes generálni.
ZFS: A Solaris új generációs filerendszere. Egybe ötvözi a volume managert és a filerendszert is. Részletesen lehet olvasni róla itt.
Parancsok kevesebb opcióval
Sajnos a Solaris híres arról, hogy megszokott parancsok, jóval kevesebb opcióval érhetőek el. Erről szeretnék én egy gyors áttekintést adni.
AWK

cat

du

ps

useradd

groupadd

Indítás, leállítás, futási szintek
Linux esetében néhány alapvető futási szint létezik:

Ehhez képes a Solaris 10 előtti rendszerek futási szintjei a következőek:

A Solaris 10-től pedig úgynevezett milestones került bevezetésre, amik az SMF szervizekhez kötődnek már. Így itt a következő szintek érhetőek el:

Hálózat
A Solaris esetében a következő alapértelmezett utasításokat használhatjuk a hálózattal kapcsolatban:

Ezen túl pedig a következő konfigurációs állományok használandóak a Solaris esetében.

Kernel konfiguráció
Míg Linux esetében a kernel konfigurációjának a megváltoztatásához rosszabb esetben újra kell forgatni a kernelt, jobb esetben modulokat kell ki-be tölteni minden féle paraméterrel, addig a Solaris esetében ez leegyszerűsödik egy szöveges állománnyal. Ez pedig a /etc/system. Ide írandó be minden féle Solaris kernelt módosítandó beállítás.
Device Management
A Linux és a Solaris ugyan úgy a /dev struktúrát használja a device mappinghez, ide hozza létre a speciális device állományokat. A Linux itt a diskeket /dev/hd[a-z] (IDE disk esetén) és /dev/sd[a-z] (SCSI disk esetén) nevezi el. Ehhez képest a Solaris a /dev/cAtBdCsD szemléletet viszi tovább. Ebben a formulában az A jelöli a kontroller számát, a B a SCSI target számát, a C a LUN számát a D pedig a Slice számát.
A TTY device-ok Linux alatt a /dev/pty* alatt, míg Solaris esetében /dev/pts/* alatt található meg.
Solaris alatt létezik egy /device struktúra is. Ez az OpenBoot Promt-hoz hasonlóan egy device tree-t hoz létre, ami egy hardware térképet fog prezentálni a gépünkről. A /dev alatti eszközök pedig erre lesznek szimlinkelve.
Ezt a linkelést Solaris alatt a devfsadm parancs teszi meg.
Összefoglaló
Természetesen rengeteg dologról lehetett volna még beszélni, viszont bízom benne, hogy sok fontos dologra rá tudtam mutatni azon Linux felhasználók számára, akik érdeklődnének továbbra is a Solaris iránt.
Kicsit úgy vagyok a Solarissal, mint a zsiráffal: Szép, szép, de otthonra nem kéne. Kicsit logikátlannak találok benne egy-két dolgot, ami Linux alatt szerintem teljesen jól és egyszerűen van megoldva. Persze, lehet ez csak azért van így, mert én nem jól értelmezek valamit.
Kis helyesbítés.
Futási szintek:
Ez még linux distronként is változhat. Uborka default-ja már kettes futási szinten ad GDM-et is, és gyakorlatilag teljesértékű desktop van már ott. RedHat-nél és SuSE-nál viszont majdnem ugyanaz a helyzet, amit Solaris-nál felvázoltál. Az eltérés annyi, hogy 5-ös szinten jön a grafikus felület, és nem power off.
Linuxos kernel confighoz:
/boot/config- fájlban található, és nem kell újraforgatni a kernelt. Restart az kell neki, ha fájlból akarjuk betölteni az új beállításokat, de a /proc piszkálgatásával is be lehet őket állítani.
Rosszabb esetben pedig biztosan vannak a Solaris kernelnek is hardcode részei.
RedHat derivátumok és SuSE alatt a terminálok szintén /dev/pts/* alatt vannak. Uborka alatt nem néztem.
Linux alatt (Redhat derivátumok és SuSE, Ubi:no info yet) a disk-ek elérésének klasszikus módján kívül adott még a /dev/disk alatt elérhető struktúra, ahol többféle módon érhetjük el ugyanazt a disk-et vagy fájlrendszert. Elérhető uuid, címke, vagy ID (pl ata-QEMU_HARDDISK_QM00001-part1)alapján. Illetve lehetőség van még elérni hardware közelibb címzéssel is: pci-0000:00:01.1-ide-0:0-part1 . Ezek szimlinkek a hagyományos, klasszikus, általad is leírt eszköznevekre, de a rendszer kezeli ezeket a linkeket, és új eszköz esetén létre is hozza az új linkeket is.
Csak a teljesség kedvéért:
OpenSolarison él még a /usr/gnu könyvtár ami a ggrep,gawk és egyébb gnu kompatibilis eszközöket tartalmazza.
ZFS van linuxon.. hát még BSDn a cddl licensz miatt nem került be natívan a linux kernelbe.
Solaris Containers:Az ~OpenVZ linuxon használt megfelelője.
Az SMF szabályozza még a hálózat kezelési beállításokat is: routolás nat static ip (linux alatt sysctl funkciók)
Elég teljes összefoglaló lett Köszönöm én még a Crossbow projectről beszélnék. az kimaradt és solaris újjítás