blog.michalt.pl

Czas na trochę słońca w tą zimową aurę. Rzućmy okiem na system operacyjny Solaris i historię Sun Microsystems

19.12.2021 1:11 Tech

Dawno nie było o systemach operacyjnych. Za oknem zimno i ponuro, więc postanowiłem sięgnąć po coś słonecznego. Solaris to system z dosyć ciekawą historią i choć niewiele obecnie o nim słychać, odegrał on dosyć istotną rolę w historii techniki. Przy okazji pragnę wspomnieć, że nie jest to dystrybucja Linuksa, a pełnokrwisty Unix, którego historia zdaje się mieć nieco smutny ciąg dalszy. Co istotne, gwiazda dzisiejszego artykułu, uznawana jest za najlepszą implementację systemu Unix. Jego twórcy odegrali bardzo wielką rolę w świecie dzisiejszego oprogramowania.



Zacznijmy od początku

Daleki przodek Solarisa, SunOS swoje początki miał już w 1983 roku jako produkt firmy Sun Microsystems. Następny protoplasta, System V Release 4, czerpiący z rozwiązań swojego poprzednika (System V Release 3) oraz SunOS, 4.3BSD i Microsoft Xenix, został wydany w 1989 roku i był owocem AT&T oraz Sun Microsystems. Na System V Release 4 oparty został właśnie Solaris. Pierwotnie jego rozwojem zajmowała się firma Sun Microsystems, następnie została ona wchłonięta przez Oracle i tym samym wszystkie produkty stały się własnością nowego właściciela.

Omawiany dziś Unix dla wielu może się wydawać bzdurnym i nic nie wartym systemem dla pasjonatów, jednak jak już wspomniałem, uważany jest za najbardziej udanego Unixa i potwierdzeniem tej tezy może się wydawać jego kosmiczna historia. Otóż można go było spotkać na komputerach wahadłowców kosmicznych i międzynarodowej stacji kosmicznej.


Co ciekawe, Sun rozwijał również własne komputery oparte m.in. na procesorach Intel, a także na własnej architekturze SPARC. Trzeba przyznać, że było ambitnie. Ambitny był również projekt interfejsu graficznego 3D, Looking Glass rozwijany przez Sun Microsystems.

Zrzut ekranu poniżej:

środowisko graficzne Looking Glass

W 2008 roku zainicjowano również otwarty wariant omawianego dziś systemu, OpenSolaris – wydaje mi się, że był on kontynuacją Express Edition.

Jako ciekawostkę, zdradzę Wam, że gdzieś u moich rodziców w moich starych gratach powinna być zagrzebana płytka z oryginalnym Solarisem w wydaniu Express.



Smutny ciąg dalszy

Trzeba przyznać, że Sun Microsystems było firmą pełna ambitnych głów. Zawdzięczamy im nie tylko omawianego dziś Unixa, ale również jeden z najczęściej używanych języków programowania, Javę i jeden z najbardziej znanych i najczęściej używanych systemów bazodanowych MySQL. Ponadto ich najbardziej znane projekty to VirtualBox i OpenOffice. Czas przejęcia przez Oracle był etapem bardzo ponurym. Doszło sporych starć i problemów w społecznościach, a także wielu obaw odnośnie przyszłości projektów – niestety, okazały się one uzasadnione.

Poza VirtualBoxem i Javą, większość z nich zostało albo zamknięte albo przeszło w stan stagnacji. Następstwem poczynań nowego właściciela było przejście pakietu OpenOffice pod skrzydła fundacji Apache, narodzin pakietu LibreOffice, a także sforkowanie MySQL i narodziny MariaDB.

Java stała się dla giganta bazodanowego szansą na trolling patentowy, czego owocem okazał się pozew przeciw Google za nielegalne wykorzystanie elementów Javy w maszynie wirtualnej Dalvik, działającej w systemie Android – na szczęście przegrali.


Zły los nie ominął niestety Solarisa. Wpadł on w stagnację i niewiele dzieje się w tym projekcie. Ostatnie wydanie 11.4 pojawiło się w 2018 roku, chociaż data noty do wydania pochodzi z maja 2021 i może sugerować coś innego, wprowadza ona w błąd. OpenSolaris został zamknięty w 2010 roku.



Trochę detali technicznych

Solaris posiada monolityczne jądro z dynamicznie ładowanymi modułami – podobnie jak Linux i w przeciwieństwie do pingwinka jest pełni zgodny z POSIX. Wykorzystywany system plików to ZFS. Co ciekawe, podobnie jak w Linuksie i tu spotkamy autorskie rozwiązanie dostarczające konteneryzacje – Solaris Containers, które w swej pierwszej odsłonie pojawiło się już 2005 roku (w wersji beta rok wcześniej).



Instalujemy? Instalujemy!

Obraz systemu można pobrać za darmo stąd: https://www.oracle....nloads.html, jednak bez rejestracji i wypełnienia dużego formularza się nie obejdzie. Dostępne są warianty obrazów dla architektury SPARC i x86. Oba z wyżej wymienionych są podzielone na „Automated Installer Boot Image” i „Text Installer”. Główną różnicą między nimi jest to, że Automated Installer Boot image w przeciwieństwie do drugiego wariantu pobiera pakiety do instalacji komponentów systemu z internetu. Text Installer wita nas na początku odrobinę prymitywniejszym instalatorem i zmieniona jest nieco kolejność konfiguracji, ale następne etapy wyglądają tak samo (przetestowałem oba ;) ):

instalator solaris - wariant text installer

Wariant „text installer” posiada również ustawione tło dla menu rozruchowego GRUB i animację ładowania systemu (splash screen). Polecam wariant Text Installer.


Po rozruchu obrazu systemu zorientujemy się, że mamy do czynienia z tekstowym, ale bardzo przyjaznym instalatorem, który posiada bardzo charakterystyczny font.

Kolejną ciekawostką są kryteria haseł podczas tworzenia nowego użytkownika – wymagane jest aby zawierało ono co najmniej jedną cyfrę. Podobne zachowanie można uświadczyć w Windows Server. Brak języka Polskiego nie jest niczym zaskakującym, ale muszę przyznać, że byłem rozczarowany, gdy zauważyłem brak polskiego układu klawiatury – smutne i dziwne. Lista była bardzo krótka i zawierała tylko 27 pozycji.

układy klawiatury w instalatorze

Po zainstalowaniu systemu, nie mamy do dyspozycji środowiska graficznego. Trzeba je zainstalować samodzielnie. Jedynym dostępnym jest GNOME i to w dosyć archaicznej wersji 3.24.

Oprogramowanie instaluje się tu identycznie jak w przypadku innego znanego Uniksa, FreeBSD – służy do tego polecenie pkg.


Przykłady:

pkg install firefox #instaluje firefoxa
pkg search gnome #wyszukuje pakietów ze słówkiem „gnome” w nazwie lub opisie
pkg remove gcc #odinstalowuje GCC

Baza oprogramowania jest uboga i archaiczna – zatrzymała się w 2018 roku. Co smutne, nie ma dostępnej nowej wersji przeglądarki Firefox – zmuszeni jesteśmy do pracy na starym 52.9 ESR. Poza nią nie ma żadnej innej. Chromium lub Chrome nie są dostępne na Solarisa nawet w repozytoriach.

stary Firefox ESR


Można tu postawić serwer webowy oparty o stare pakiety. Dostępne są stare wersje django, PHP, Apache HTTP Server i Tomcata. Ciężko znaleźć jakieś inne praktyczne zastosowanie... Warto jednak pamiętać o wątpliwym bezpieczeństwie tego rozwiązania.



Stabilność i szybkość

Przez okres 2 tygodni zabawy system działał bardzo stabilnie i płynnie. Czy lekko i szybko? Korzystałem z dosyć skromnego środowiska i na samym pulpicie znikało aż 1,1 gigabajta pamięci RAM – co stanowi dosyć słaby wynik. Solaris ciągle obciążał 1 rdzeń procesora w okolicach 27-40% (Intel i7 11700F) - co również jest wynikiem pozostawiającym trochę do życzenia. Może to wina środowiska graficznego? Ponadto nie uświadczyłem żadnego crasha ani przycięcia.



Inne dystrybucje

Warto wspomnieć o tym, że Solaris doczekał się swoich dystrybucji. Większość z nich, o ile nie wszystkie, bazują na starym OpenSolarisie. Jak u nich ze wsparciem dla nowszego oprogramowania? Nie mam bladego pojęcia. Wśród nich można wymienić między innymi takie systemy jak OpenIndiana, SmartOS i Tribblix.



Podsumowując…

Solaris - o systemie

Z dobrego systemu pozostał zakurzony nieużytek. Oracle traktuje go bardzo po macoszemu. Do czego może się obecnie przydać Solaris? Do momentu w którym ktoś się nim nie zajmie, niestety do niczego. Jest to jednak kawałek bardzo ciekawej historii do której fajnie było powrócić.