No more tmux! Da oggi c’è una ragione in più per amare systemd: i processi in background moriranno al termine della sessione

systemd-logo

Tecnicamente, di fronte alla necessità di lasciare un processo attivo da parte di un utente che sta uscendo dalla propria sessione fino ad oggi la soluzione era quella di usareprogrammi come tmux, screen o nohup. Si usciva ed il processo rimaneva lì, indipendentemente dallo stato della sessione o della console che lo aveva lanciato.

Qualcosa oggi è cambiato. Con l’ultimo aggiornamento di sytemd, di cui abbiamo già parlato, il comportamento di default dell’init manager sarà quello di uccidere tutti i processi lanciati dalla console padre. Quindi ciaone tmux, screen, nohup o, per dire, anche autossh

Bene, come ha preso la community questa notizia? Tutto sommato, bene. Basta leggere questo bug tracker del progetto Debian per capire come nel bilancio tra i favorevoli e gli oppositori manchino solo i morti e i feriti.

Metodi per evitare che questo nuovo comportamento di default faccia danni ne esistono, si può impostare l’opzione KillUserProcesses a no nel file /etc/systemd/logind.conf, si può compilare systemd con l’opzione –without-kill-user-processes,  oppure si può impostare per gli utenti interessati il così detto lingering attraverso logind (si veda questo link per i dettagli), perciò non è necessario essere spaventati più di tanto.

Del resto Lennhart Poettering, autore di systemd ha serenamente affermato:

In my view it was actually quite strange of UNIX that it by default let arbitrary user code stay around unrestricted after logout.

Per come la vedo io è strano di Unix il fatto che per default lasci funzionare codice utente arbitrario incontrollato una volta che questi è uscito

Quindi, perché vi preoccupate?

La speranza è tutta nell’intelligenza dei maintainer dei pacchetti delle distribuzioni enterprise. Quale speranza? Chiaramente che KillUserProcesses rimanga “no”…

Da sempre appassionato del mondo open-source e di Linux nel 2009 ho fondato il portale Mia Mamma Usa Linux! per condividere articoli, notizie ed in generale tutto quello che riguarda il mondo del pinguino, con particolare attenzione alle tematiche di interoperabilità, HA e cloud.
E, sì, mia mamma usa Linux dal 2009.

3 risposte a “No more tmux! Da oggi c’è una ragione in più per amare systemd: i processi in background moriranno al termine della sessione”

  1. Avatar RiccardoC
    RiccardoC

    mi auguro almeno che non valga per i processi di utente root, se no uno i task lunghi da remoto come li fa?

  2. Avatar Alicia Frantinelli
    Alicia Frantinelli

    Ciao,
    crei un utente ad hoc per eseguire tali task. Poi lo lasci loggato.

  3. Avatar Paolo
    Paolo

    È da più di un anno che ho disinstallato systemd, quindi io proprio non mi preoccupo 😀

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *