M�s acerca de shutdown

Es sumamente importante comprender y seguir los pasos correctos al momento de finalizar un sistema Linux. Si no realiza este procedimiento, sus sistemas de archivos se ver�n probablemente perjudicados y los archivos pueden quedar desordenados. Esto sucede porque Linux tiene un cache de disco que no escribe a disco cada vez que se le solicita, sino que solamente lo hace a intervalos. Esta manera de proceder mejora de manera significativa el desempe�o del sistema, pero al mismo tiempo significa que si se apaga el equipo de imprevisto puede perder informaci�n que deber�a estar en sus sistemas de archivos (y obviamente en sus discos). Esto �ltimo sucede porque la cache puede contener una gran cantidad de datos que se pierden con el apagado, y lo que est� en el disco puede no ser un sistema de archivos totalmente funcional (debido a que solamente parte de la informaci�n ha sido transcrita de la cache al disco duro).

Una raz�n adicional para no desconectar directamente el sistema de la energ�a (presionando por ej. el bot�n de apagado) es que en un ambiente multitarea existen diversos procesos que se est�n ejecutando en segundo plano, y desconectar la computadora en este momento puede ser desastroso. Utilizando el procedimiento correcto para el apagado del equipo garantiza que todos los procesos en segundo plano puedan guardar sus datos.

El comando para finalizar correctamente un sistema Linux es shutdown. Se utiliza generalmente de una de dos maneras diferentes:

Si Ud. es el �nico usuario del sistema, debe finalizar todos los programas que est�n en ejecuci�n, finalizar todas las sesiones (log out) de todas las consolas virtuales, e iniciar una sesi�n como usuario root (o mantener la sesi�n si ya existe una, pero debe cambiar de directorio de trabajo al directorio HOME de root, para evitar problemas al desmontarse los sistemas de archivos). Finalmente ejecute el comando shutdown -h now. Si desea postergar durante alg�n lapso el comando shutdown, reemplace now con un signo + (mas) y un numero que indica minutos de espera.

Alternativamente, si el sistema est� siendo utilizado por muchos usuarios, utilice el comando shutdown -h +time mensaje, donde time es el numero de minutos en que se posterga la detenci�n del sistema, y el mensaje es una explicaci�n breve de el porqu� se est� apagando el sistema. # shutdown -h +10 'We will install a new disk. System should > be back on-line in three hours.' # El ejemplo advierte a todos los usuarios que el sistema se apagar� en diez minutos, y que ser�a mejor que se desconectaran o se arriesgan a perder la informaci�n con la que est�n trabajando. La advertencia se muestra en cada terminal donde existe un usuario conectado, incluyendo las xterm (emuladores de terminales para el sistema X Window).


 Broadcast message from root (ttyp0) Wed Aug  2 01:03:25 1995...


We will install a new disk.  System should be back on-line in three hours.  The
system is going DOWN for system halt in 10 minutes !!  

El mensaje de advertencia (warning) se repite autom�ticamente varias veces antes de pagar la m�quina con intervalos cada vez m�s frecuentes.

Despu�s del tiempo de postergaci�n, cuando el proceso de apagado real empieza, se desmontan todos los sistemas de archivos (excepto el sistema de archivos ra�z /), se finalizan (kill) los procesos de los usuarios (si existen a�n usuarios dentro del sistema), los demonios y finalmente se desmonta el sistema de archivos ra�z. Cuando todo este proceso finaliza, INIT muestra un mensaje indicando que se puede apagar la m�quina. Es entonces y s�lo entonces que es posible bajar el switch (o interruptor de suministro el�ctrico).

Algunas veces, aunque es raro en un buen sistema, es imposible concluir el sistema de forma adecuada. Por ejemplo, si ocurre un error fatal con el kernel, puede ser imposible ejecutar cualquier comando nuevo, haciendo la finalizaci�n normal del sistema inviable. Todo lo que se puede hacer en este caso es esperar que ning�n da�o severo ocurra y entonces desconectar la m�quina. Si los problemas son menos serios (digamos, alguien quebr� su teclado con un hacha!), y el kernel y el programa update se encuentran en ejecuci�n normal, es aconsejable aguardar algunos minutos para que update tenga la chance de actualizar los discos con la informaci�n contenida en el buffer cach�, y solamente despu�s desconectar el equipo.

A algunas personas les gusta apagar el equipo tecleando el comando sync [25] tres veces, dando tiempo a que finalice la entrada y la salida del disco duro y entonces apagar el equipo. Si no hay programas en ejecuci�n, este m�todo es similar a utilizar el comando shutdown. Sin embargo, este procedimiento no desmonta los sistemas de archivos y puede acarrear problemas con la marca de "limpio" que algunos sistemas de archivos utilizan (“filesystem clean flag”), como por ejemplo ext2. El m�todo del triple sync no es recomendable.

Por pura curiosidad: la raz�n del triple sync viene de los d�as en que UNIX era joven, cuando los comandos fueron tipeados separadamente, y eso daba usualmente tiempo suficiente para que la entrada/salida a disco finalizara.



[25] sync vac�a el buffer cach�