Ejercicios boletín 1 y 2
De Wiki de Sistemas Operativos
Ejercicio 1
- Cree una máquina virtual
- Obtenga dirección IP, compruebe conectividad, actualice paquetes
- Cree un usuario 'prueba' y úselo
- Cree el siguiente árbol de carpetas y ficheros en el home de 'prueba', como usuario 'prueba'
| |--a | |--b | |--c | |--d | |--e
donde haya un fichero x.txt en a y un fichero y.txt en b.
- Copie la carpeta c al temporal
- Renombre b a w
- Establezca permisos de sólo lectura para el propietario del fichero x
- Como root, cree el fichero prueba.txt en el temporal y cambie el propietario y el grupo al usuario prueba
- Muestre todos los directorios que hay en el home del usuario prueba
- Cuenta el número de directorios que hay en el home del usuario prueba
- Instale el paquete python3-hug.
- Edite el fichero example.py que contenga lo siguiente:
import hug @hug.get() def hello(): return "hello world!"
- lance el programa con:
hug -f example.py
- Con wget, envíe una petición a http://127.0.0.1:8000/hello
- Averigue el PID del proceso hug y termine su ejecución de manera no abrupta.
- Edite el fichero example.py y añada en la primera línea del fichero:
#!/usr/bin/hug -f
- NOTA: Esta nomenclatura se denomina shebang e indica el binario que permite ejecutar el programa descrito en dicho fichero.
- Dé permisos de lectura, escritura y ejecución a example.py al propietario, no dé ningún permiso al grupo y al resto del mundo
- Pruebe a lanzar el programa example.py mediante:
./example.py
Ejercicio 2
- Cree una máquina virtual
- Obtenga dirección IP, compruebe conectividad, actualice paquetes
- Cree dos usuarios 'prueba1' y 'prueba2'
- Cree el grupo 'prueba'
- Añada 'prueba1' y 'prueba2' al grupo 'prueba'
- Cree el siguiente árbol de carpetas y ficheros en el home de 'prueba1'
| |--a | |_ x.txt | |_ y.txt | |__b
- copie la carpeta a al temporal.
- mueva el contenido de la carpeta 'a' a la carpeta 'b'
- Dé permiso al grupo prueba para que prueba2 pueda acceder a las carpetas a y b en el home de prueba1.
- Instale el paquete 'cowsay'
- Ejecute el programa 'cowsay' con:
cowsay "Hola amigos"
- Vuelque la salida de cowsay al fichero "prueba.txt"
- Cree el fichero example.py con el siguiente contenido:
import http.server import socketserver
PORT = 8080 Handler = http.server.SimpleHTTPRequestHandler
with socketserver.TCPServer(("", PORT), Handler) as httpd: print("serving at port", PORT) httpd.serve_forever()
- Láncelo con: python3 example.py
- Averigue el PID del proceso 'python3 example.py' lanzado anteriormente y termine la ejecución del proceso mediante la señal abrupta