L’importanza di usare Linux tutti i giorni

Ieri ero in laboratorio Dijkstra, quello con macchine Solaris, per il corso di sperimentazioni di sicurezza. Il tizio che ci insegnava, credo sia un ricercatore ora come ora, doveva farci scaricare e installare openssl.

Le conoscenze Unix sue e dei miei compagni di corso formavano una sorta di vuoto pneumatico intorno a me… Io procedo così:

  1. scarico la libreria e scompatto (con due comandi perchè tar xfz non va su solaris).
  2. guardo il file install, vedo che lo script di configurazione si chiama config invece che configure.
  3. ./config –help: accetta il parametro –prefix
  4. lancio ./config –prefix=$HOME/openssl
  5. lancio make
  6. la compilazione fallisce per un problema di quota, salvo la situazione andando a compilare sotto /tmp,
  7. mentre compila minimizzo il terminale perchè la grafica di quelle macchine è così lenta che lo scrolling del terminale mangia metà della cpu,
  8. lancio make install
  9. il make install fallisce per qualche strano motivo cercando di installare un file che non c’è. Poco male un quarto d’ora del mio tempo e tre righe in meno in un makefile e funziona tutto.
  10. infine aggiorno io mio path nel .cshrc (non posso usare bash come shell di login!) e nella shell bash corrente.

Procedura dell’insegnante:

  1. scaricare e scompattare la lilbreria graficamente,
  2. eseguire ./config senza parametro prefix, di cui ignora l’esistenza,
  3. eseguire make,
  4. fallisce, seguire il mio consiglio e andare sotto /tmp,
  5. “il make install è eseguibile solo da root”, certo senza dargli il prefix. “lo script di make install è bacato e non funziona”. È diversi anni che fanno questo laboratorio e non hanno ancora trovato il baco che ho trovato io in un quarto d’ora, che verosimilmente è dovuto da qualche dipendenza non soddisfatta bene o da qualche installazione non standard.
  6. copia manuale di alcuni files e l’eseguibile openssl nella home. Per grazia divina funziona, molti programmi non avrebbero funzionato.
  7. fare tutta una serie di script dove ogni volta viene lanciato openssl con il path relativo alla propria home.

Solaris 10 è fondamentalmente una merda, lentissimo, scomodo, lo GNOME installato è obsoleto e i tool da riga di comando sono molto più stupidi delle controparti GNU, ma rimane sempre uno Unix e se uno usa uno Unix come sistema operativo primario dopo qualche anno diventa una potenza. Linux è uno Unix utilizzabile per questo scopo (Solaris no, che ci vuoi fare).
Invece questo che ci viene a insegnare su Unix è nel pieno triangolo del male Windows-Office-Visual Studio e ne da prova diverse volte, tra cui:

  • “Openssl è opensurs, con licenza GPL, ed è uno standard di fatto, usato da molti prodotti commerciali”; GPL vuol dire che chi lo usa è GPL, al massimo potrebbe essere LGPL, penso io. Un rapido check sul sito e risulta una licenza apache. Disprezzo per l’open source.
  • “Non andate a compilare sul server perchè è una macchina con architettura alfa”; il server è della Sun ed infatti uno sparc. Disprezzo per le architetture non Intel.
  • Sul suo computer portatile c’è Windows, così non ci può far vedere come si compila, ma solo proiettarci un Powerpoint. Disprezzo per Unix.

Prima di abbandonare l’aula con una mezzora di anticipo gli dico: “Il tuo portatile, Dell D620, ce lo avevo anche io e Linux ci gira benissimo”, che tradotto sta per “non hai scuse per essere così scarso”. Lui mi risponde: “e il proiettore?” “Va anche quello, lo puoi anche rotare come ti pare, se vuoi vienimi a chiedere.” “E i Powerpoint?” “Lo installiamo anche…”
Già mi stavo allontanando perchè queste osservazioni non meritavano più risposta.

Ricercatori, tecnici e professori: quasi nessuno è bravo con Unix, quasi nessuno usa Linux tutti i giorni.