"Grep si interrompe, causando il blocco del processo di avvio per sempre"


10

Domanda all'interno di una domanda (dal wiki di Debian ):

Dovrei usare Sid sul mio desktop?

Se pensi di poter gestire un sistema Debian rotto, certo. Sai cosa fare se libpam0g si interrompe, impedendo tutti gli accessi? Sai cosa fare se grep si interrompe, causando il blocco del processo di avvio per sempre? Queste cose sono successe. Accadranno di nuovo.

La mia domanda è: in che modo un'interruzione grepcausa il blocco del processo di avvio per sempre?


4
Un errore che ho fatto grepè grep -r pattern . > pattern.grep. Poiché la shell crea il file di output prima di richiamare grep, il grepcomando cerca il file di output, che cresce fino a riempire il disco. Non ho idea se questo sia legato a qualcosa che potrebbe causare il blocco del processo di avvio per sempre.
Keith Thompson,

Risposte:


8

È comune che gli script di avvio chiamino grepad un certo punto. Se si grepblocca a causa di un bug, il primo di questi script di avvio che chiama si grepbloccherà. O, più comunemente, se uno di questi script viene interrotto e chiama grepsenza fornire un argomento per il nome del file e senza reindirizzare l'input, greprimarrà per sempre in attesa di input della console (non è così male se sei di fronte alla console e puoi tipo Ctrl+D). Se uno script è rotto e chiama grepuna pipe o un dispositivo in cui nessuno sta scrivendo ... peccato.


5

Bene, il modo ovvio sarebbe "grep si blocca per sempre, quindi qualcosa che usa grep si blocca per sempre, e qualcosa nel processo di avvio lo fa".

È probabile che il testo sia un esempio illustrativo piuttosto che letterale di problemi, ma non è impossibile.

Per capire davvero, inizia a leggere su /etc/init.d/rce /etc/init.d/rcS- quelli sono gli script della shell che eseguono tutti i bit che portano al tuo sistema.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.