Riavviare Xorg

Xorg può andare in crash per diversi motivi, ad esempio a causa di driver instabili o di configurazioni particolari. Il modo più semplice per riportare la situzaione alla normalità è riavviarlo manualmente invocando il login manager del desktop environment. Prima di tutto lanciamo la console d'emergenza tramite la combinazione di testi [Ctrl]+[Alt]+[F3]; ci ritroveremo dunque ad operare tramite una shell con la quale potremo riavviare Xorg.

Non solo, si potrà verificare ad esempio lo status dei processi avviati, tramite tool come htop, e terminare quelli sospettati di aver mandando in crash il display server.

Quindi sfruttiamo systemd per avviare il login manager del nostro ambiente grafico:

sudo systemctl restart gdm3

Questo comando può rivelarsi utile quando usiamo GNOME come desktop environment, nel caso usassimo KDE bisognerà richiamare "sddm" oppure "lightdm". Se non dovessero funzionare è sempre possibile riavviare il sistema nel modo seguente:

sudo shutdown -r now

SSH

Un'altra soluzione per accedere al nostro sistema in caso di crash di Xorg è usare SSH. Se avete a disposizione un altro device, basta un semplice smartphone, è possibile connettersi da remoto al PC tramite questo protocollo.

sudo apt install openssh-server

ssh nomeutentedelPC@IndirizzoIPdelPC

Una volta connessi tramite ssh possiamo riavviare Xorg sempre tramite systemd:

sudo systemctl restart gdm3

Alt + SysRq + REISUB

Può capitare che oltre al crash di Xorg anche il sistema diventi instabile. Il kernel Linux dispone però di varie feature che permettono di riavviare la macchina senza perdere dati. Questa funzionalità può essere attivata tramite la pressione dei testi [Alt]+[SysRq] (che corrisponde al tasto [STAMP]). Questo comando indicherà alla distribuzione di porre attenzione solo all'utente, smettendo dunque di concederla ad altri processi. Per eseguire il roboot sicuro sarà quindi necessario digitare:

Alt+SysRq 

e successivamente le lettere

REISUB

dopo questo comando il sistema provvederà a terminare tutti i processi attivi, smonterà i dischi e procederà con un riavvio dopo il quale tutto dovrebbe tornare nella norma.

Chroot dal live CD

A volte il sistema può davvero corrompersi, magari a causa di un errore nel file system o per un bug del bootloader, in questi casi ci può venire in aiuto un live CD con il quale accedere al nostro sistema tramite Chroot. Dunque avviamo il live CD della nostra distribuzione e iniziamo l'operazione creando le directory che ci interessano:

sudo mkdir /media/recovery
sudo mkdir /media/recovery/{boot,home}

Ora montiamo le partizioni del nostro sistema:

sudo mount /dev/sda2 /media/recovery
sudo mount /dev/sda1 /media/recovery/boot
sudo mount /dev/sda3 /media/recovery/home

poi montiamo anche le varie directory di sistema:

sudo mount -t proc /proc /media/recovery/proc
sudo mount --rbind /sys /media/recovery/sys
sudo mount --make-rslave /media/recovery/sys
sudo mount --rbind /dev /media/recovery/dev
sudo mount --make-rslave /media/recovery/dev

adesso sarà possibile entrare nel sistema tramite chroot:

sudo chroot /media/recovery
source /etc/profile

Ora che siamo loggati nel sistema sarà possibile risolvere il problema, magari tramite i file di log presenti dentro la home o nella root, oppure semplicemente ripristinando il bootloader. Ad esempio se usate GRUB:

grub-install /dev/sda

Ovviamente al posto di sda andrà indicata la partizione dove è installato GRUB. Nella sessione di Chroot è anche possibile usare il gestore di pacchetti per installare tool o magari per fare pulizia dei programmi che danno problemi all'avvio.

Via Make Tech Easier

CommentaDi' la tua

Il tuo indirizzo email non sarà mostrato pubblicamente. I campi obbligatori sono contrassegnati da *