Centro de Informática
Sistemas Operativos II
Examen Agosto 2000.
Parte A. Sin consulta de material (40 puntos).
Responder brevemente las siguientes preguntas (4 puntos cada una).
1. Explicar el uso del comando exit en programación.
¿Para qué sirven los valores de retorno? ¿Cómo
se interrogan?
2. ¿Qué diferencia hay entre programa, archivo y proceso?
¿Qué relación hay entre ellos?
3. ¿Qué es el UID? ¿Qué es el GID?
4. ¿Qué función cumple el archivo /etc/passwd?
¿Qué contiene cada línea?
Escribir comandos para realizar las tareas indicadas:
1. Fijar, en modo simbólico y absoluto, los permisos del
archivo /usr/local/bin/conectar de modo que todos lo puedan ejecutar, el
usuario lo pueda leer y escribir, y el grupo lo pueda leer.
2. Crear, en el subdirectorio bin del directorio propio, un enlace
simbólico al script /usr/local/bin/conectar con nombre conec.
3. Crear en el subdirectorio bin del directorio propio, un enlace
hard hacia el script may2min ubicado bajo utils en el directorio propio.
Sea la siguiente salida de ls -l:
-rw-r--r-- 1 root root
33280 jun 12 19:40 Carta.doc
drwxrwxrwx 5 victor staff
1024 dic 4 1999 step
drwxrwxr-x 22 victor staff
1024 nov 20 1999 Office51
drwxr-x--- 6 victor staff
1024 may 7 16:43 argos
drwxrwxr-- 21 victor staff
1024 jul 11 18:22 bajados
-rw-rw---- 3 root root
542 jul 13 11:26 boor.exe
drwxrwxrwt 3 victor staff
1024 may 25 10:02 borrador
-rwsrwsr-x 1 root root
9218 jun 12 19:41 pph3
drwxrwx--x 2 victor victor
1024 may 7 16:47 cdir
-rw-rw-r-- 3 root root
542 jul 13 11:26 mysql-doc
-rw-r-xr-- 3 victor staff
1084 ago 1 10:01 ver.exe
-rwxr-xr-x 3 victor staff
1084 ago 1 10:01 ver
drwxr-xr-x 7 victor victor
1024 jul 25 11:48 lit
4. Indicar, si los hay,
a) directorios públicos;
c) archivos ejecutables;
d) directorios recorribles por todo el mundo;
5. Indicar, si los hay,
e) directorios donde el grupo puede borrar archivos;
g) archivos que son enlaces simbólicos.
6. Indicar, si los hay,
f) archivos ejecutables con permisos de root;
b) archivos que tienen enlaces hard;
Parte B. Con libre consulta de material (76 puntos).
1. Para definir un nuevo alias de correo, es preciso
insertar en el archivo /etc/aliases una lína de la forma
tecnicos:jperez,hvila,pgarcia
donde el primer nombre es el alias, luego el separador de campo ":" y finalmente
la lista de usuarios a incluir en el alias, separada por comas y sin espacios.
Escribir un script para crear un alias de correo. El script deberá:
-
pedir el nombre del nuevo alias;
-
verificar si ya existe, en cuyo caso emitirá un mensaje de error
y terminará.
-
solicitar el ingreso de nombres de usuario hasta recibir un nombre en blanco.
-
mostrar la lista de usuarios separada por comas y pedir confirmación.
-
si el usuario confirma, agregar la línea a incluir en /etc/aliases
y ejecutar el comando /usr/bin/newaliases; si no, terminar.
(20 puntos)
2. El archivo bedelia.lst contiene una lista
de grupos de alumnos donde el primer campo es el nombre del grupo. En el
sistema debe existir una cuenta de usuario con ese mismo nombre. Escribir
un script para verificar que todos los grupos de bedelía tienen
una cuenta de usuario. El script deberá mandar un correo al usuario
cdiadmin@cdi.edu.uy con el encabezamiento
# Alumnos faltantes en el sistema
# según lista de Bedelía
seguido de la lista de nombres de grupo carentes de cuenta de usuario en
el sistema. Sugerencia: crear un archivo auxiliar y luego borrarlo. (15
puntos)
3. Escribir un script que presente un menú
de alternativas para conexión a Internet, con este aspecto:
1.Adinet.
2.Uruguaynet.
3.Multired.
4.Technet.
0.Fin.
Opción:
El usuario digitará el número de opción. La conexión
se realiza mediante el script /usr/bin/pon (PPP on) seguida del nombre
de la opción elegida en minúsculas. Si el usuario elige Fin,
la conexión se corta con el script /usr/bin/poff (PPP off) sin parámetros.
(15 puntos)