Soluciones 🙂
Crea un directorio llamado educatica en el directorio raíz de tu sistema de fichero

Crea los directorios public, private, dev, courses dentro del directorio /educatica. Utiliza rutas relativas

Muestra el contenido del directorio /educatica con información extendida de permisos, propietario y grupo

Muestra información extendida de permisos, propietario y grupo del directorio /educatica, no de su contenido.

Crea, dentro del directorio /educatica/courses los directorios ssoo, web, redes, bbdd y dev. Dentro de cada uno de estos directorios crea los directorios public, private, project y doc

Crea los siguientes usuarios con la contraseña ClaveRoot#25: marinapg, ramonam, alfredoff, javiergp, solgm, evaha, javiercg


Ojo… fíjate


Esto es muy pesado….. si pudiéramos automatizarlo 🙂

Vamos a ver si funciona…

Ojo!!! No te agobies, querido alumn@, estamos empezando a recordar cosas, dentro de un par de semanas seguro que eres capaz de hacer scripts como este. Hoy lo hacemos con comandos independientes, esto es solo para que veáis lo que se puede llegar a hacer y el tiempo que ganamos.
Para cada uno de los usuarios crea en su directorio personal el directorio web

Para cada uno de los usuario creados cambia su contraseña para que se ClaveRoot#20

Viva la automatización…

Ahora…

De nuevo… esto es solo un ejemplo de lo que podemos ganar con automatización utilizando scripts. No te agobies!
Para cada uno de los usuarios creados, en su directorio personal, crea un enlace simbólico con el nombre publico que les lleve al directorio /educatica/public

Esto lo tenemos que repetir siete veces… o no O:)

Vamos a ver lo de la virgulilla seguida del nombre de un usuario

Vamos a probar…
Ohhh!
Forma «cutre», suponemos que el directorio personal del usuario está en /home/

Funciona para nuestro sistema

La solución de pata negra sería no suponer nada

Crea los siguientes grupos en tu sistema: ventas, contabilidad, marketing y educatica

También podríamos haber automatizado 😀

Muestra los permisos del directorio web del usuario marinapg. ¿A quién pertence?.

Cambia el propietario de cada uno de los directorios web creado en el ejercicio 7 para que pertenezca al usuario apropiado.

Se puede automatizar… aunque ahora mismo tendríamos que hacerlo a mano posiblemente porque no nos acordamos (como en los casos anteriores, no te agobies)
Añade los siguientes usuarios a los grupos
educatica: Todos los usuarios creados en este caso práctico

Vamos a comprobarlo

¿Cómo podríamos mostrar solo el nombre del grupo y la lista de usuarios que pertenecen a ese grupo?

ventas: marinapg, alfredoff
contabilidad: javiergp, evaha
marketing: ramonam, solgm, javiercg
Muestra en pantalla las 15 últimas líneas del fichero de cuentas de usuario del sistema
Muestra en pantalla las 8 últimas líneas del fichero de cuentas de grupo del sistema
Muestra en pantalla la ruta del directorio personal del usuario javiergp

Vamos a refinar un poco la búsqueda utilizando -w


Vamos a asegurarnos de que la línea comienza por el patrón javiergp
No vamos a suponer nada de nada.. así que tendremos que consultar la información almacenada en el sistema para cuentas de usuario.

Yo no quiero la línea entera solo quiero un campo. Vamos a ver qué campos tengo en cada línea y qué significa cada campo. consultamos la página de manual de passwd pero….


….

Página de man de la sescción 5 de passwd


Lo ideal sería poder cortar la línea en porciones y quedarnos con el campo o porción número 6.

Si no sabes qué hace o cómo funciona el comando cut, consulta la página de manual. Si no entiendes las tuberías, consulta la entrada sobre tuberías en GNU/Linux, Comandos de www.educatica.es
Muestra en pantalla el uid y el gid del usuario evaha

Si no entiendes bien qué hace el comando tr, consulta su página de manual.
Muestra en pantalla la información de las cuentas de usuario de los usuarios que utilicen como shell /bin/bash

Vamos a refinarlo…

Solo mostramos el nombre del usuario que utiliza /bin/bash

Vamos a ordenarlos alfabéticamente

Pero es que… además, queremos que se muestre el directorio personal del usuario separado del nombre del usuario por un espacio.

No queremos que aparezca root en la lista :_(
Vamos a usar grep y la opción -v.

Quedaría así

Muestra en pantalla el nombre de los usuarios que utilicen como shell /bin/bash
Muestra en pantalla el nombre y la ruta del directorio personal de los usuarios que utilicen como shell /bin/bash
¿Y si queremos almacenar esta información en un fichero llamado informacionUsuarios.txt qué podríamos hacer?

¡Extra de Helloween!
Resulta que hemos metido la pata y los usuarios que hemos creado deberían tener su directorio personal dentro del directorio /home/staff. Es decir, el directorio personal del usuario solgm estaría en /home/staff/solgm.
Vamos investigar…


Vamos a probar con un usuario… marinapg

Oh my gosh! pero si está todo bien…. vamos a pensar un poco, nos falta haber creado el directorio /home/staff.

Tenemos que repetir el proceso con cada usuario…

Esto puede ser un poco tedioso, lioso y sobre todo que podemos cometer errores humanos.
Hemos tenido problema a la hora de ejecutar el comando con dos usuarios

Esto ha hecho que ahora mismo la información del sistema no esté consistente con respecto a sus directorios personales

Falta mover el directorio personal de estos usuarios… como podemos hacerlo

Para mañana… crea un script que te agilice este proceso de alguna forma. Si quieres puedes probar a ejectar el script para cambiar los directorios personales de los usuarios del directorio /home/staff al directorio /educatica/staff
Páginas: 12
Dejar una respuesta