Recurso complementario: Aprenda Linux como si estuviese en primero.
Lee el primero de los recursos de la sección anterior.
Considera la estructura de directorios y ficheros que se muestra en la siguiente figura:
Los óvalos representan carpetas, y los rectángulos ficheros de texto. Arranca tu sistema Linux y abre un terminal de comandos. Con la ayuda de la chuleta de comandos Linux, y ejecutando todos los comandos con el intérprete, realiza los siguientes ejercicios.
En el directorio de usuario crea la misma estructura
de carpetas que se muestra en la figura (solo las carpetas). Debes
utilizar el comando mkdir varias veces pero debes
ejecutarlo sin cambiar de carpeta, es decir,
ejecutando los comandos siempre desde la carpeta de usuario
/home/teleco
(consulta las opciones de
mkdir en el manual).
Cambia de directorio en el intérprete de comandos y
vete a la carpeta Seccion1
. Recuerda que cuando
comienzas a escribir el nombre de un fichero o carpeta en el intérprete, la
tecla TAB lo completa. Una vez en la carpeta
Seccion1
ejecuta desde la linea de comandos el
editor kate. Inserta en el fichero la frase
“Este es el contenido del fichero 1” y guardalo con
nombre fichero1.txt
tal y como se muestra en la
figura.
Repetimos la operación anterior con
fichero2.txt
pero en lugar de crearlo con el
editor primero crea un duplicado de
fichero1.txt
con nombre
fichero2.txt
con el comando
cp. Abre el nuevo fichero con el editor y
modifica el texto para que diga “... del fichero
2”.
Repite este último paso, pero ahora tienes que crear
los ficheros fichero3.txt
y
fichero4.txt
en la carpeta
Seccion2
. Ejecuta los comandos pertinentes en
el intérprete (creación de duplicado y edición utilizando
kate) sin cambiar el directorio de
trabajo. Debes, por tanto, utilizar las rutas de los
nuevos ficheros de tal forma que reflejen su nueva situación en la
jerarquía de carpetas.
Cambia el directorio de trabajo en el intérprete con
un único comando para pasar de la carpeta
Seccion1
a la carpeta
SegundaParte
. Ejecuta ahora los comandos
necesarios para crear un duplicado de cualquiera de los cuatro
ficheros creados hasta ahora y modifica su contenido de manera
análoga a como lo has hecho en el apartado anterior. De nuevo, no
debes cambiar tu directorio de trabajo. Recuerda que mientras
escribes los nombres de los ficheros y los caminos, la tecla
tabulador puede ser útil para completar
nombres.
Por último, la carpeta Seccion2
no queremos que esté en ese nivel, sino al nivel de las carpetas
PrimeraParte
y
SegundaParte
. Por tanto, desde el directorio
superior PracticaLinux
ejecuta un único comando
que mueve la carpeta Seccion2
a su nuevo lugar
con nombre TerceraParte
.
Lee la página de manual del comando cat y utilízalo para mostrar el contenido de todos los ficheros del apartado anterior por pantalla con un único comando.
Lee la página de manual del comando cp y crea, con un sólo comando, un duplicado del árbol de ficheros con el que has trabajado.
Lee la página de manual del comando rm y borra el duplicado de los ficheros que acabas de crear con un sólo comando.
Lee la página de manual del comando
ls y ejecútalo en la carpeta
PracticaLinux
. Utiliza las opciones
-a, -l y
-t. Prueba a ponerlas todas juntas y ver el
resultado.
Utiliza el comando chmod para cambiar los permisos de un fichero. Prueba a cambiar por separado los de usuario, grupo y resto. Utiliza el comando ls con las opciones pertinentes para ver tus cambios.
En la empresa SAUCEM S.L. de la que eres jefe de proyecto se trabaja por grupos. Cada grupo de trabajo debe realizar una serie de proyectos, elaborar un presupuesto, llevar a cabo un conjunto de actividades, etc. Para ello, cada grupo de trabajo debe organizarse estableciendo un conjunto de carpetas o directorios de manera estructurada, y ubicando correctamente sus ficheros en ellas. Así mismo, cada grupo de trabajo debe poder tener mecanismos para obtener información del sistema, y para eliminar algunas carpetas y ficheros cuando sea necesario.
Como jefe de grupo de trabajo en SAUCEM S.L. se te pide que realices una serie de comandos en Linux para crear, y gestionar las carpetas e información del sistema relacionado con tu grupo de trabajo. En concreto, tienes que realizar 3 sub-tareas, que se pasan a detallar a continuación. Es importante que los comandos que vayas ejecutando en cada sub-tarea los vayas poniendo en un fichero de texto, cada comando en una línea, pues al final deberás entregar dicho fichero:
Creación de un conjunto de carpetas y ficheros. En esta tarea debes ejecutar una serie de comandos en Linux para la creación de un conjunto de directorios y ficheros con unos permisos concretos.
Debes crear la estructura de carpetas o directorios
que indica la figura, debiendo estar el directorio
“Grupo_Trabajo” debajo de la ruta
/home/teleco
. Ejecuta la secuencia de comandos
necesaria para ello, teniendo en cuenta que la localización inicial
del directorio donde te encuentras en el sistema puede ser
cualquiera y la secuencia debe funcionar en cualquier caso
independientemente del directorio inicial donde te encuentres. Para
todo ello, debes utilizar los comandos mkdir y
cd. Otro requisito obligatorio es que tienes que
utilizar el comando mkdir tanto pasándole una
ruta absoluta en uno de los comandos como una relativa en otro de
los comandos.
A continuación, debes asignar los permisos adecuados
a cada directorio, para que puedas controlar quien accede a dichos
directorios y con qué permisos. Todos los directorios deberán tener
permisos de lectura y ejecución para los miembros del mismo grupo en
Linux, y además permisos de escritura para el propietario de los
mismos, y ningún permiso para el resto. Así mismo hay una excepción
a esto, para el directorio de Presupuesto
, los
permisos deben ser de lectura, escritura y ejecución para el
propietario del mismo, y ningún permiso para el resto, ya que sólo
al jefe de proyecto le estará permitido operar con los archivos de
presupuesto. Realiza la secuencia de comandos necesaria para asignar
todos estos permisos, teniendo en cuenta que la localización inicial
del directorio donde te encuentras en el sistema puede ser
cualquiera y la secuencia debe funcionar en cualquier caso
independientemente del directorio inicial donde te encuentres. Para
todo ello, debes utilizar los comandos chmod y
cd. Otro requisito obligatorio es que tienes que
utilizar el comando chmod tanto pasándole una
ruta absoluta en uno de los comandos como una relativa en otro de
los comandos.
Seguidamente, debe crear un fichero
descripcion.txt
debajo del directorio
P1
que incluya en su interior el texto
“Descripción del proyecto”. Para ello, debe utilizar de
manera obligatoria el comando echo y la
redirección de salida.
Copie el fichero
descripcion.txt
desde la carpeta
P1
hacia las carpetas P2
y
P3
, de manera que también allí quede
presente. Para ello debe utilizar el comando
cp.
Copie el fichero
descripcion.txt
también hacia el directorio de
Presupuesto
, y al directorio de
Comunicacion
utilizando el comando
cp. A continuación cambie de nombre el fichero
que está bajo el directorio Presupuesto
para
que se llame presupuesto.ax
, utilizando el
comando mv. Seguidamente reemplace completamente
el texto del fichero por el siguiente texto: “Fichero de
presupuesto”. Para ello, otro requisito es que debe utilizar
obligatoriamente el comando echo y la redirección
de salida.
Mueve el fichero
descripcion.txt
que está en el directorio
Comunicacion
, hacia el directorio de
Otros
, y al mismo tiempo cámbielo de nombre
para que se llame otros.txt
. Para todo ello,
utilice el comando mv. Seguidamente remplace
completamente el texto del fichero por el siguiente texto:
“Otros asuntos”. Para ello, otro requisito es que debe
utilizar obligatoriamente el comando echo y la
redirección de salida.
Utilizando el comando echo y la
redirección de salida, modifica los ficheros de “descripcion.txt”
que hay debajo de los directorios P1
,
P2
, y P3
, para que
incluyan un espacio en blanco y el número 1, 2 o 3 respectivamente,
anexados al texto que ya había en el fichero.
Para todos los ficheros que se han ido creando, asigne los mismos permisos que los directorios que los contienen.
Finalmente, ponga toda la secuencia de comandos que
ha ido realizando en un fichero llamado
creacion.sh
con un editor de textos y
guárdelo. Debe poner una línea por cada uno de los comandos y en el
mismo orden que establecía este ejercicio. Además, añada en la
primera línea del fichero el siguiente texto:
#!/bin/bash
Asigne permisos de ejecución al nuevo fichero creado. A este nuevo fichero que contiene una secuencia de comandos se le denomina script. Si ejecuta este fichero desde un terminal de comandos con ./creacion.sh, entonces se ejecutarán todos los comandos de una sóla vez en la secuencia establecida. Así, si en un futuro se quiere ejecutar la misma secuencia de comandos tan sólo tendrás que ejecutar el script de esa manera, en lugar de teclear todo comando a comando.
Generación de información.En esta tarea deberá realizar una serie de comandos en Linux para la generación de información sobre la estructura de directorios creada, el contenido de los ficheros y otra información del sistema.
En primer lugar ejecuta el comando date para que se muestre la fecha actual en el sistema.
En segundo lugar, muestra el directorio actual en que te encuentras, que en general puede ser cualquiera. Para ello, utiliza el comando pwd.
Muestra todos los procesos que se están ejecutando en el sistema Linux en ese momento. Para ello, utiliza el comando ps.
Utilizando los comandos cd y ls, muestra la información de los ficheros y subdirectorios que hay debajo de cada una de las 8 carpetas del grupo de trabajo. La información debe mostrar al menos la fecha de creación de los ficheros o/y directorios, su tamaño, así como sus permisos.
Utilizando el comando grep, muestre todos los ficheros que contienen el string “de”, que estén debajo de algún directorio de la estructura del grupo de trabajo.
Finalmente, ponga toda la secuencia de comandos que
ha ido realizando para la generación de información en un fichero
llamado informacion.sh
con un editor de textos
y guárdelo. Debe poner una línea por cada uno de los comandos y en
el mismo orden que establecía este ejercicio. Además, añada en la
primera línea del fichero el siguiente texto:
#!/bin/bash
Asigne permisos de ejecución al nuevo fichero creado.
Borrado de carpetas y ficheros. En esta tarea deberá realizar una serie de comandos en Linux para el borrado parcial de la estructura de directorios, así como de algunos ficheros.
Borra completamente todos los ficheros y
directorios que hay por debajo del directorio
Proyectos
, incluyendo el mismo directorio de
Proyectos
. Debes hacerlo únicamente utilizando
el comando rm.
Seguidamente borra el fichero que hay en la carpeta
Otros
utilizando el comando
rm.
Seguidamente borra el directorio
Otros
utilizando el comando
rmdir. Nota que esto es posible porque ya no hay
ningún fichero debajo del directorio
Otros
.
Finalmente, ponga toda la secuencia de comandos que
ha ido realizando para la generación de información en un fichero
llamado borrado.sh
con un editor de textos y
guárdelo. Debe poner una línea por cada uno de los comandos y en el
mismo orden que establecía este ejercicio. Además, añada en la
primera línea del fichero el siguiente texto:
#!/bin/bash
Asigne permisos de ejecución al nuevo fichero creado.