Puoi usare il killall
comando per inviare un SIGSTOP
segnale a tutti i processi corrispondenti a un determinato nome per congelarli e successivamente inviare SIGCONT
lo stesso modo per scongelarli di nuovo.
Per prima cosa scopri il nome del processo usando pgrep -l SEARCH_PATTERN
:
$ pgrep -l chrom
13010 chromium-browse
13036 chromium-browse
13038 chromium-browse
13153 chromium-browse
13166 chromium-browse
13169 chromium-browse
13175 chromium-browse
13187 chromium-browse
13195 chromium-browse
13206 chromium-browse
Nota che taglierà i nomi lunghi, quindi il r
manca. Ma questo non è un problema in quanto è possibile utilizzare il Tabcompletamento per inserire il nome del processo che lo completerà automaticamente.
Quindi si invia il SIGSTOP
segnale a tutti i processi denominatichromium-browser
questo modo:
$ killall -s STOP chromium-browser
La finestra di Chromium diventerà grigia come se non rispondesse. Bene, è diventato davvero insensibile, quindi era prevedibile. Non è possibile interagire con la finestra in alcun modo ora (ad eccezione della barra dei menu e della riduzione a icona, ecc. Che viene gestita dal gestore delle finestre e non dall'applicazione stessa). Ma gli eventi da clic sui pulsanti ecc. Vengono comunque generati e aggiunti alla coda degli eventi dell'applicazione, quindi saranno tutti elaborati immediatamente quando si scongela nuovamente l'applicazione!
Scongelare nuovamente l'applicazione semplicemente eseguendo questo comando che invia il SIGCONT
segnale ai processi specificati:
$ killall -s CONT chromium-browser
A volte il blocco di un'applicazione in questo modo può causarne l'arresto anomalo, quindi assicurati che vengano salvate cose importanti prima di congelare un'applicazione.
In rari casi, anche l'ambiente desktop / gestore di finestre / qualsiasi altra cosa potrebbe non rispondere. In questo caso devi scongelare l'applicazione congelata tramite un TTY:
Premi Ctrl+ Alt+ F1per passare a TTY1. Ti verrà chiesto di accedere, quindi inserisci nome utente e password. Quindi esegui il comando per scongelare l'applicazione nello stesso modo in cui eseguiresti attraverso il tuo normale emulatore di terminale. Dopodiché torna al desktop (TTY7) usando Ctrl+ Alt+ F7e dovresti andare di nuovo bene.