E. U. de Informática Departamento de Informática Aplicada Examen Final de Administración de Sistemas Operativos 3 de septiembre de 2004 EJERCICIO 3 (3.5 puntos) Tiempo estimado: 30 m. En un sistema Linux disponemos de los siguientes directorios y ficheros: Fichero /etc/inittab: id:3:initdefault si::sysinit:/etc/rc.d/rc.sysinit l0:0:wait:/etc/rc.d/rc l1:1:wait:/etc/rc.d/rc l2:2:wait:/etc/rc.d/rc l3:3:wait:/etc/rc.d/rc l4:4:wait:/etc/rc.d/rc l5:5:wait:/etc/rc.d/rc l6:6:wait:/etc/rc.d/rc 0 1 2 3 4 5 6 Directorio /etc/rc.d Contiene los ficheros rc y rc.sysinit, y los directorios init.d, rc0.d, rc1.d, rc2.d, rc3.d, rc4.d, rc5.d, rc6.d Directorio /etc/rc.d/init.d Contiene los ficheros gdm, gpm, inetd, lpd, mail, nfsd, samba, httpd, ... Todos estos ficheros disponen de las opciones ‘start’, ‘stop’ y ‘restart’. Directorio /etc/rc.d/rc1.d Contiene los ficheros K01gdm, K14ppp, K20inetd, K20lpd, K20ssh, K90sysklogd y S20single Directorios /etc/rc.d/rc2.d, /etc/rc.d/rc3.d, /etc/rc.d/rc4.d, y /etc/rc.d/rc5.d Contienen los ficheros: httpd, S10sysklogd, S14ppp, S20inetd, S20lpd, S20ssh y S99gdm Se pide responder a las siguientes preguntas: a) ¿Qué tipo de ficheros de Unix serán los existentes en el directorio /etc/rc.d/rc2.d? Razona tu respuesta. Son enlaces simbólicos a ficheros del directorio /etc/rc.d/init.d. Porque en los directorios de arranque correspondientes a los distintos niveles de ejecución se guardan enlaces simbólicos para facilitar el mantenimiento. De esta forma, si hay que modificar un determinado servidor, bastará con modificar la versión existente en el directorio /etc/rc.d/init.d. b) ¿Qué tipo de ficheros de Unix serán los existentes en/etc/rc.d/init.d? Razona tu respuesta. Serán ficheros normales ejecutables, ya que corresponden a los servidores de los distintos subsistemas Unix. c) Indica de forma simbólica los permisos mínimos que tendrán los ficheros del directorio /etc/rc.d/init.d y quién será su propietario. Razona tu respuesta. Como mínimo serán ejecutables por su propietario (a menudo root), porque suelen arrancarse por el mismo durante el arranque del sistema y permanecer en ejecución. También suelen ser legibles para los demás usuarios. Los permisos serían: -rwxr--r-d) Trabajando bajo la cuenta de un usuario normal, indica el comando y las opciones del mismo con que podrás ver qué servidores están arrancados. Algunos comandos adecuados son: ps –aux ps –ef top e) ¿Qué procesos y en qué orden se ejecutarán cuando se ejecute el comando “telinit 1”? Razona tu respuesta. Se ejecutarían todos los ficheros existentes en el directorio /etc/rc.d/rc1.d en el orden en que aparecen. Los ficheros que comienzan con “K” pararían el servidor correspondiente, y el único proceso que comienza con “S” sería el que dejaría el sistema en modo monousuario. f) Indica un comando que sea equivalente a “telinit 0”. Dos comandos equivalentes son: halt y shutdown. g) ¿Qué procesos y en qué orden se ejecutarán durante el arranque del sistema? Razona tu respuesta. Como el nivel de arranque es el 3 (según se indica en el fichero /etc/inittab), se ejecutarán los ficheros cuyo nombre comienza por “S” del directorio de arranque correspondiente /etc/rc.d/rc3.d. h) ¿Hay algún proceso en el directorio correspondiente al nivel de arranque que no se ejecute nunca? Razona tu respuesta. Sí. El fichero httpd, dado que su nombre no comienza por “S”.