Considerations about Sun Solaris 10.

In NewBay I’m currently working on a project which uses Sun Solaris 10 in a multi-tier architecture. I’ve already used before this system in Italy, so it isn’t new for me; in Italy I was responsible for creating Sun packages for projects made by my ex company in behalf of Nokia and Vodafone Italy.

By the way, as I started working in Newbay, I was allocated to this project called MyFaves for T-Mobile International. This is based exclusively on Solaris 10 (both x86 and sparc architecture).
After a few months I’ve used, and I’ve became pretty confident, with most of the big new and historical features of Solaris 10 like the SMF, the ZFS file system, the Solaris zone/containers.

So what do I think about it?

Well, I think the only stuff really good in Solaris are the 3 I’ve mentioned above. All the other things I’ve seen around the system are pretty crappy. When I started using SMF I was thinking: «oh man! this is ridiculous! I’ve to type svcadm enable/disable svc:/blabla/blablala/myapp:default every fucking time i need to start or stop a service! /etc/init.d/service start/stop is much more better!». Then I studied a lot this SMF, and I have to admit is brilliant! I really would like to have it in enterprises Linuxes like Red Hat, or even, let’s say, in Debian! 😀

ZFS is brilliant as well! I know it’s now stable and ready for production on BSD systems like FreeBSD. I’m not really sure if the Linux ZFS implementation, which use the fuse subsystem, is ready for production as well…

Zones and containers… well… I think they’re cool. Maybe I’m wrong but I think they’ve copied the FreeBSD jails and they’ve integrated it very nicely with the system, especially with the solaris resoure manager. So you can, for exapmle, decide the amount of memory, or the number of CPUs that can be used by a single process, user, or group, in each zone. Integration between ZFS and Zones is cool as well!

Despite all these stuff I have to say that I still don’t really like Solaris:

  • I don’t like to have the f***ing old style vi written by Bill Joy.
  • I dont’t like to have defined export EDITOR=ed and export PAGER=more by default.
  • I don’t like the fucking ps command (but you have to use the one into /usr/ucb/).
  • I don’t like the fact that your default shell is an old style c-shell instead of /bin/bash
  • I don’t like the fucking OLD cron daemon which is not able to read the GNU syntax (for something like */5 to schedule a job every 5 minutes you have to write “05,10,15,20,25,30,35,40,45,50,55“. So ridicolous!!!!!)
  • I don’t like the fact that you don’t have ANY messages while booting!
  • I don’t like the packaging system, is shit compared with APT/DPKG, or with the the BSD ports system.
  • I don’t like CDE and JavaDesktop (or should I say GNOME! :P).

Why the fuck aren’t they using the GNU subsystem instead of their own CRAP? Are they using this only on OpenSolaris maybe?

Someone might say that this is because big companies (like banks for example) are still using OLD software which needs to use old crap to work. So they need old crap shell interpreter, and stuff like that. And they obviously like to have all the old crap by default installation…

Fuck them I say! This is ridicolous! They have to do the effort to adjust their our systems to work with the new OS’s. Not me! 😀

So this is what I think about Solaris 10. You can insult me now.

Cheers.
Angelo

Comments Posted in English posts, Informatica, Lavoro, Software, Unix
Tagged , , , , ,

Comments

  1. Freddy says:

    Il trainer si chiama Jeff Turner
    Jeff [dot] Turner [at] Context-Switch [dot] com

    Il sito e’ vuoto, spero che sia ancora in attivita’ (e’ un over 50 🙂 ).

  2. LoneStar says:

    @pallo: guarda che mica ti accuso! prendo spunto da qualche parola che hai detto per fare un discorso generale, che non significa che mi continuo a riferire direttamente a te 😉

    @antonio: come ho detto già mentre scrivevo alcune di quelle cose, non è detto che siano vere o siano corrette. Vanno solo tenute in considerazione. Ed è un discorso ampio che trascende l’aspetto prettamente tecnico (io ho questa feature e tu no). Mi dà dispiacere il modo in cui molti linuxiani trattano gli altri Unix. Come immondizia superata che dovrebbe sparire prima di subito. Mi dà dispiacere perchè quella invece è la nostra storia, la roba a cui ci ispiriamo, il motivo stesso per cui Linux è nato, e da cui ancora trae ispirazione (perchè certo non la può trarre da Windows).
    Ovviamente questo non vuol dire che i difetti uno non li deve vedere ed evidenziare. Tutto ha difetti, anche Linux ovviamente.

    PS: è chiaro che se il kernel di Solaris verrà rilasciato sotto una licenza compatibile OpenSource, tutti saranno in grado di vederlo e metterci mano esattamente come Linux.

    PS2: Solaris non è affatto il mio prediletto. Ho sempre pensato che Digital Unix (Tru64) sia il miglior Unix commerciale mai esistito 🙂

  3. pallotron says:

    @lonestar: forse ti sfugge il fatto che certe cose di solaris mi piacciono e l’ho scritto eh! zfs, zones e smf sono ok! piu’ obiettivita’ di questa!

  4. ioggstream says:

    100% d’accordo con pallotron – senza contare le versioni di default awk&co.

  5. antonio says:

    Lonestar, dopo aver lavorato in un’azienda partner Sun per due anni, installando solaris, sun cluster e roba varia, sono venuto in irlanda e ho lavorato direttamente per Sun, a diretto contatto coi team che sviluppavano il kernel, zfs e altre cose del genere, stiamo parlando di due anni fa e opensolaris era gia’ in giro. Adesso lavoro con un’azienda che fa un uso MASSIVO di linux (stiamo parlando di decine di migliaia di server).

    Ti garantisco che il grado di innovazione che c’e’ su Linux e’ mooooooolto di piu’ di quello del kernel di solaris, ti basta guardare i commit giornalieri sul kernel linux e le nuove feature che introducono.

    Nessuna azienda, per quanto organizzata, puo’ riuscire ad avere lo stesso tasso di introduzione di innovazioni nel kernel quanto linux.

    Inoltre, Linux e’ molto piu’ flessibile da gestire ed e’ meglio customizzabile di Solaris, questo te lo posso garantire. Il fatto che solaris sia un OS di punta e’ dovuto solo a nicchie di mercato, dove storicamente si usa solaris e la migrazione a Linux, per il momento, non e’ contemplata. Quindi, anche li’, e’ piu’ un fatto storico che altro.

    Inoltre, sono ormai anni che Linux non e’ piu’ sviluppato da amatori ma da gente pagata da aziende (vedi redhat, ibm, et al), quindi direi di sfatare questo pregiudizio. Il fatto che chiunque possa contribuire e’ un plus.

    Anyway, non voglio fare una flamewar, voglio dire che ho esperienza in entrambi i campi e dal mio punto di vista tra solaris e linux non c’e’ paragone. Al di la’ del punto di vista del tecnico, anche dal punto di vista dell’azienda il non utilizzare roba ex-proprietaria come solaris comporta un rispario assurdo, esempio: c’e’ gente in giro che conosce il kernel di linux e che puo’ fare troubleshooting… quanti, a parte gli sviluppatori Sun, conoscono il kernel di solaris? E cosi’ via. In ogni caso, magari la mia esperienza e’ limitata e non e’ detto che sia quella giusta, ma da quello che ho visto, testando entrambi gli OS in campi enterprise, non c’e’ nessun paragone.

    Probabilmente la misconception viene da chi non ha mai visto linux in campi dove ci sono milioni di transazioni al secondo nei periodi di punta (basta per essere chiamato ‘enterprise’)? Mettici solaris con un application server Sun e vediamo quanti secondi regge 😀

  6. LoneStar says:

    pallo, i vari siti di commentatori e analisti hanno fatto una gran questione sulla ipotesi che Sun porti Solaris sotto una licenza OpenSource, tutti sicuri del fatto che questo potrebbe essere una mazzata per Linux in quanto Solaris è tremendamente evoluto e potente e potrebbe addirittura riuscire a metterlo in ombra… in generale nel mondo Unix, Solaris ha sempre goduto della fama di essere lo unix di punta, quello piu’ rappresentativo, quello più potente, ecc.ecc.

    Non dico che bisogna dare un peso enorme a questi discorsi, è chiaro che queste cose vanno sempre prese con il beneficio del dubbio, c’e’ tanto marketing dietro, c’è comunque sempre l’antico pregiudizio che un prodotto sviluppato da un’azienda ben determinata secondo logiche commerciali deve “per forza” essere superiore a un prodotto sviluppato da amatori nel tempo libero tra una poppata e l’altra dei figli (cosa che in grossa parte Linux non è più, ma appunto per questo è un pregidizio), ecc.ecc. PERO’..
    non bisogna nemmeno cadere nell’errore di pensare che solo il mondo Linux faccia innovazione, che qualsiasi software solo per il fatto di essere sotto licenza closed allora fa schifo e che il fatto che un’azienda realizzi un prodotto Unix da tempo immemorabile non significhi nulla e non abbia nessun peso.

    Ci sono sicuramente settori in cui Linux è indietro, funzionalità di livello enterprise che cominciano ad essere gestite solo adesso, cose che Solaris o altri Unix fanno normalmente da un ventennio o quasi.

    Insomma, obiettività.. e consapevolezza che il nemico è Windows, non gli altri Unix 🙂 (imho)

  7. antonio says:

    capirai il trainer di Sun, a tutti i dipendenti Sun fanno il lavaggio del cervello per dirgli che quello che vende Sun e’ la migliore cosa che ci sia, quindi le sue dichiarazioni non mi stupiscono.

    Poi, in che termini bash usa molta piu’ memoria di csh? boh. Io potrei dire il contrario senza provarlo, no?

    Una cosa e’ parlare di memory leaks, che possono essere fixati, un’altra coas e’ dire che bash utilizza delle strutture piu’ grosse di csh per storare i dati in memoria, ma anche se sono 50 o 500 gli utenti che lanciano uno script, ammesso che la struttura utilizzata sia il doppia, non vi e’ forse sfuggito che stiamo parlando di decine di bytes?

    Comunque, quando ci saranno le prove saro’ pronto a discuterlo, fino ad allora e’ aria fritta

  8. pallotron says:

    @Lonestar: potessi decidere io cosa installare… invece in certi ambienti NON PUOI A CAUSA DI POLICY STUPIDE. non puoi installare anche che ne so’, netcat, o che ne so’ vim. etc etc.
    per non parlare poi che il gestore dei pacchetti di solaris e’ primordiale 😀

    @freddy: minchia sarebbe cool avere l’indirizzo cosi’ aggiungo altri elementi importanti alla discussione. per vi. non e’ una questione di frocismi… e’ anche una questione di comodita’ per certe cose, tipo che ti puoi muovere anche in modalita’ INSERT utilizzando i tasti cursore, e altre cose 😀

  9. Freddy says:

    Pallotron, che ti devo dire? Se vuoi ti recupero nome e indirizzo email del trainer cosi’ vi mettete a discutere sui motivi secondo i quali lui ritiene csh migliore (o semplicemente piu’ formativa).

    Poi concordo che con una macchina con N giga di RAM sai chi se ne frega se hai 50 utenti loggati che usano bash?

    Per l’editor evviva VI e abbasso i frocismi e l’output colorato. 🙂

  10. LoneStar says:

    Anche i *BSD fanno cosi’. Nell’installazione del sistema core ci sono le utility tradizionali, il vi vecchio, ecc. Poi in /usr/local, prendendoli dai ports, ci sono le utility GNU. Per separare concettualmente e materialmente quello che è il core dei sistemi, la roba sviluppata e manutenuta dagli sviluppatori dell’os, da quello che è software di terze parti.

    Linux è l’unico unix che non adotta queste distizioni semplicemente perchè è l’unico (insieme a Minix, vabè) che non ha mai avuto “diritto” ad utilizzare le utility classiche, ma ha avuto sempre e solo i tool GNU.

    @stragatto: la presenza delle utility di Joy o comunque dei vecchi tool storici in cosa ti ingessa? Ti viene forse impedito di installarti qualsiasi altra utility sostitutiva che ti pare? Ormai tutti gli Unix che sono ancora in un qualche sviluppo sono corredati di package di compatibilità linux che contengono i porting di praticamente tutte le utility e software moderni esistenti.

    Capisco che il discorso non porta da nessuna parte 😉
    Alla fine, se si vuole un Solaris che parta direttamente con le utility più moderne si può usare OpenSolaris, per il quale Sun non dà nessun supporto commerciale e non garantisce nulla.. 😀

  11. pallotron says:

    ho trovato un documento del 94 con la comprazione fra sh, csh, ksh, tcsh, zsh, bash. nei parametri di riferimento non rientra alcun elemento come prestazioni, occupazione di memoria, etc.

    http://www.hep.phy.cam.ac.uk/lhcb/LHCbSoftTraining/documents/ShellChoice.pdf

    notare ZSH 😀

    venghino signori. venghino!

    pallotron@terminus ~  % mkdir provadir
    pallotron@terminus ~  % touch provadir/filenome.txt
    pallotron@terminus ~  % mkdir provadir/dir2/
    pallotron@terminus ~  % touch provadir/dir2/filenome.txt
    pallotron@terminus ~  % ls provadir/**/filenome.txt
    provadir/dir2/filenome.txt  provadir/filenome.txt
    

    questo e’ solo un esempio. guardatevi la documentazione 😀

  12. pallotron says:

    @freddy: io mi riferivo a VI contro VIM 😀 io uso vim, il mio .vimrc e’ di 154 linee. il vi di default di solaris e’ una cacca. ovvio che li so usare entrambi, vim sta per vi improved – http://www.vim.org 😀

    bash? occupazione di memoria nel 2008? ma quale puo’ essere la differenza? le shell, anche le piu’ evolute, vedi zsh, non e’ che siano cosi’ importanti dal punto di vista prestazioni/memoria. si fanno girare super mega elefanti java e ci si preoccupa della bash? csh di default non ha history, devi configurarla tu, non ha il completion, diversi utenti che accedono ad una macchina usano utenze diverse normalmente, e se devono usare script con utenza root si mette su un sudo e si configura sudoers, oppure si configura un sistema di process accounting, per sapere chi ha eseguito cosa e quando.

  13. stragatto says:

    La storia e la tradizione e’ che prima che Unix venisse “ingessato”, le cose, sia pure nell’ambito ristretto di At&T, funzionavano piu’ o meno secondo il modello collaborativo “bazar”. Chi aveva bisogno di una utility, se la faceva col C fornito da Dennis Ritchie, e la aggiungeva al sistema operativo in modo che se ne potessero servire anche gli altri.
    Poi qualche brillante manager decise che Unix dovesse essere “ingessato”. Con la C shell e la Korn shell, con ed e col vi di Bill Joy. Poi vennero le tastiere coi tasti cursore, ma Unix era “ingessato” e resto’ col vi di Joy.

  14. Freddy says:

    Un trainer Sun che conobbi tempo fa mi fece vedere come in determinati casi bash sia poco efficiente, anche a causa della maggiore occupazione di memoria rispetto a csh, e di come gestisca il file di history in maniera discutibile.

    Questo in un ambiente dove diversi utenti accedono alla macchina e lanciano script, chiaro che se a lavorare sulla macchina ci sei solo tu benvenga la bash.

    Per VI pero’ mi va benissimo cosi’: tanto sei sicuro di trovarlo ovunque, quindi se ti abitui ad usarlo e’ meglio.

  15. pallotron says:

    io rispetto la storia e la tradizione pero’ e’ anche vero che bisogna saper cambiare.

  16. antonio says:

    io la storia la rispetto, pero’ rendiamoci conto che siamo nel 2008, la storia sfortuantamente non e’ ancora storia ma e’ cronaca quotidiana, perche’ solaris viene usato in molti posti per vari motivi.
    E’ come se per andare da Messina a Milano mi dicessero di andare col carretto coi cavalli invece che prendere l’aereo.

  17. LoneStar says:

    pallo, quel “vecchiume” rappresenta il prestigio storico, l’onore di potersi fregiare della discendenza dai sorgenti originari AT&T e/o BSD. L’onore di potersi chiamare Unix e non soltanto Unix-like.

    Poi si può stare a discutere se ha senso, non ha senso, se sono minchiate, se è ingiusto, giusto, ecc.ecc. 🙂

    Personalmente non ho mai approvato troppo il disprezzo degli ambienti Unix tradizionali verso il sistemino Linux, considerato clone da due soldi, cosi’ come non ho mai approvato il disprezzo dei puristi Linux verso il mondo Unix classico, considerato appunto “vecchiume” obsoleto (anche se lo è, è comunque storia, e la storia si rispetta, non si disprezza).

  18. bacco1977 says:

    Non ho idea di perke’ si ostinino ad usare il vecchiume.

    Potrebbe essere un banale fatto commerciale. E’ cosi’ da anni, funziona, lasciamolo cosi’.
    Boh. :/

  19. pallotron says:

    ma anche io uso sunfreeware. il problema non e’ quello. il problema e’ che in certi posti ti “scassano le palle” per installare anche la qualsiasi minchiata. quindi ti tocca lavorare con la merda vecchia e secca 😀

  20. stragatto says:

    ci sono passato pure io … in caso di necessita’ mi servivo qua:
    http://www.sunfreeware.com/
    Ci ho preso perl, tcl/tk, apache, samba e forse qualcosa altro che non mi ricordo 😉
    Perl in particolare mi e’ stato essenziale per fare una utility che traducesse in forma umanamente leggibile dei file di configurazione che le persone avevano bisogno di poter leggere senza doversi lambiccare a tradurre codici numerici.
    Spero che in Solaris 10 si siano decisi finalmente a inserire tra i default almeno perl. Io ai tempi lo ho dovuto installare in ben 18 Sparc.

  21. pallotron says:

    @lonestar: io li conosco gli unix proprietari. non capisco appunto perche’ si ostinino ad usare certo vecchiume anche nelle versioni tradizionali 😀

    @ale: ma io non sono di palermo! e per ora mi sa che rimango qui.

  22. Ale says:

    ma che ce frega de Unix/Linux e nerdate varie…. ci interessa:
    resti a Dublin o torni a Palermo con il know how maggiorato e un lavoro serio? 🙂 Utopie emigra, la sua azienda ha gia’ chiuso dopo 3 mesi che ha cambiato …lol

  23. LoneStar says:

    Scusa pallo, ma le critiche che muovi mi fanno pensare che non conosci gli Unix commerciali 🙂

    gli unix commerciali usano TUTTI il vi tradizionale di Bill Joy, usano TUTTI la csh, usano TUTTI il cron all’antica, i loro vecchi sistemi di gestione pacchetti, il CDE OpenView, ecc.ecc.

    poi, A PARTE, ci sono i package di compatibilità con linux e con gli ambienti GNU in generale, che aggiungono bash, vim, e tutti i comandi più moderni con le sintassi aggiornate ecc.ecc.

    In particolare Solaris 10 ufficiale esce come versione tradizionale, mentre OpenSolaris 10 esce con la dotazione GNU, quindi ha già di partenza bash, KDE o Gnome, questo e quell’altro.

    In particolare se vuoi provare delle distribuzioni che utilizzano la struttura di un sistema Linux cambiando solo il kernel con quello di Solaris Nevada, puoi provare Belenix e/o Milax 🙂