Chi non conosce nohup?
Per chi non lo sapesse, è uno di quei comandi che dovrebbero essere sempre bagaglio di ogni buon sistemista “Unix Like”.
Nohup ci consente di avviare una sessione shell “connection less” e ci risolve diversi problemi quando dobbiamo eseguire delle attività da remoto che richiedono lunghi tempi di elaborazione.
In questi casi infatti la perdita di connessione provocherebbe la chiusura della shell e di ogni processo figlio attivato dalla stessa.
Uno di questi casi si verifica quando dobbiamo effettuare per esempio l’analyze di un disco per rilevare blocchi difettosi e tale operazione può richiedere parecchie ore di elaborazione.
Questa è la sintassi:
nohup /root/m_analyze.sh >/root/m_analyze.log 2>&1 ; tail -f /root/m_analyze.log
Nohup esegue un seplice script m_analyze.sh che esegue il format con una serie di parametri che automatizzano l’esecuzione dei sub-command.
L’output e gli errori vengono rediretti su file di log m_analyze.log e il tail mostra in console lo sviluppo dell’analyze.
In questo caso anche se la sessione dovesse morire il processo legato allo script m_analyze.sh continuerebbe la sua esecuzione fino al termine del sub-command del format.
Lo script m_analyze.sh, dove c4t1d0 è il disco da analizzare:
#!/bin/sh format c4t1d0 <<EOF a read yes q q EOF
Rispondi