Linux server e GUI

La storia infinita. Sono stati versati fiumi di byte sulla questione che, per certi versi, assume connotazioni da autentico dogma di fede.

Basta solo fare un giro sulla documentazione ufficiale ubuntu [ubuntu help] per vedere che, ancora nel 2014, i sistemisti ostinati alla linea di comando non mollano la presa e arrivano ufficialmente a sconsigliare l’instalazione della GUI su un server. Insomma sembrano diffidare sulla stabilità e qualità del prodotto sviluppato da loro stessi.

Vediamo i punti che loro sostengono per motivare le loro fisime:

You’ll have more code subject to security vulnerabilities, more packages that need updating, and more server downtime.

Concordo sulle vulnerabilità ma solo in parte. Ad accedere fisicamente alla GUI saranno solo i sistemisti del caso e se qualcuno che non doveva accedere ci è riuscito direi che il problema è altrove. D’accordo invece sulla quantità di pacchetti da mantenere.

Sono completamente in disaccordo sul server downtime. Mai avuto un downtime, nemmeno di 1 minuto, per via della GUI o dei suoi aggiornamenti. Semmai il contrario, mi è toccato invece perdere parecchio tempo con qualche server che non aveva la GUI e dover installare poi un pacchetto che invece richiedeva una GUI per l’installazione. C’era la possibilità di installare tutto con un file di configurazione (da scrivere a mano naturalmente). Ci sarà gente che si diverte a fare queste cose. Evidentemente hanno molto tempo da perdere.

Performance may suffer because resources (memory, hard disk space, CPU, etc.) will be consumed by the GUI.

Questa è un’autentica fesseria.

  • Primo, il costo dell’hardware oggi è veramente ridotto al minimo e se non è un server fisico è una virtual machine. In entrambi i casi la GUI non pesa quasi per nulla sulle richieste hardware. Certo, c’è gente che crede che un Raspberry Pi possa assumere le connotazioni di “server”, ma se una macchina che deve fare da server non è in grado di eseguire nemmeno Xfce o LXDE mi chiedo seriamente che server possa essere, almeno che non si tratti dei soliti immondezzai che riciclano il PC usato dalla segretaria e decidono di trasformarlo in server. Senza RAID, senza alimentazione ridondante, senza doppia scheda di rete, senza nemmeno una lontana parvenza di certificazione per stare in una sala server degna di questo nome, ma vuoi mettere, ha su una distro “server” e due share SMB e sshd, ergo è un server.
  • Secondo, non si sta sempre a lavorare sul server attivamente. Un server si mette in piedi, si configura il backup, i servizi e fine della storia. Ci si dimentica che esiste fino a quando non urla per qualche ragione. Non ci si collega al server per giocare a Quake, chattare su IRC e nemmeno per cazzeggiare con gli effetti di compiz. Il peso della GUI è quindi nullo tranne per quel mezzo percento di cpu che può consumare quando ci si collega a fare qualche attività.
  • Terzo, lo spazio su disco. Una distribuzione ubuntu server con il full desktop occupa meno di 10Gb. E una volta installata la GUI ci si può sempre disfare dei pacchetti inutili come Libreoffice, Gimp, Shotwell o chi per li. Basta usare apt-get.

It is best practice to only install needed software on a production server.

D’accordissimo, ma io faccio rientrare nel campo del “needed software” anche tutto ciò che mi fa risparmiare tempo e una GUI fa proprio parte di questo ambito.

The GUI may include other network services that are inappropriate for a server.

Basta disabilitare i servizi anche se per mia esperienza non so bene quali servizi offra una GUI che non siano appropriati per un server. Nella documentazione si fa il caso specifico di avahi-daemon, basta disabilitarlo anche se a me non ha mai dato nessun problema.

If you’re using an Ubuntu LTS release prior to 12.04 LTS, X11 and desktop packages are not supported for the full 5 year lifecycle of the LTS server release.

Vale sempre quanto scritto prima. Al server hanno accesso solo le persone che devono avere l’accesso. Se non è questo il caso il problema è decisamente ad un altro livello e non quello della stabilità o sicurezza dei pacchetti.

Il problema di fondo è sempre lo stesso, i sistemisti oltranzisti, i linuxiani atavici, i cantinari insomma. Il mondo loro è rimasto ancora immutato con la linea di comando che è sempre utilissima e a volte l’unica risorsa. Ma il concetto non cambia, la linea di comando, una GUI o un tool qualunque d’amministrazione remota sono solo strumenti e, come tutti gli strumenti, sono neutri e per ogni attività c’è uno strumento che fa al caso.

Leave a Reply

Your email address will not be published. Required fields are marked *