Está en la página 1de 10

Taller de Linux 1. Realizar un comando que determine cuanto espacio ocupa el home.

R/: du sh /home Con el comando du podemos saber la cantidad de almacenamiento que tiene un fichero o directorio dado, con el parmetro -s imprime en la salida el uso de espacio para los argumentos dados, no para sus subdirectorios, en nuestro caso nos mostrara el peso del directorio home y no arrojara un informe detallado de los directorios que lo componen y el parmetro h para que muestre el tamao en un formato legible humanamente, es decir en unidades de bytes con sus prefijos.

2.

Haga un comando para mostrar los procesos del usuario con que se logueo que comiencen por g y s

R/: ps -u lewco | cut -c25-45 | grep -o '\<[gs].*\>' Con el comando ps nos muestra los procesos que se estn ejecutando, con el parmetro - u obtenemos los procesos del usuario dado (en nuestro caso del usuario lewco), redireccionamos la salida de este comando con una tubera al comando cut para eliminar aquellas columnas que no nos interesan y quedarnos solamente con el nombre de los procesos para eso usamos el parmetro -uc25-45 que son las columnas donde empiezan los nombres y aproximadamente terminan; esto lo volvemos a re-direccionar al comando grep para filtrar la informarcion de los procesos que empiezan con la letra g y s para esto usamos la expresin regular '\<[gs].*\>' y el parmetro -o para que muestre exactamente las palabras que empiezan con dichas letras y no las que coincidan en toda la lnea.

3. Realice un comando que muestre las particiones de arranque (boot) R/: sudo fdisk -l | grep '* ' Utilizamos el sudo porque se va a trabajar con informacin sensible por lo cual debemos tener permiso del super usuario, con el comando fdisk se manipulas las tablas de particiones en el sistema operativo GNU/Linux con el parmetro -l se listan las tablas de particiones de los discos IDE y de los disco SCSI, re-direccionamos esta informacin con la ayuda de una tubera al comando grep para filtrar los datos y como el smbolo '*' es quien indica que es una particin de arranque, entonces utilizamos la expresin '* ' para que nos muestre solamente las particiones de arranque (los espacios se usan para evitar alguna otra informacin que se refiere a multiplicacin y no a arranque).

4. Con un comando muestre el estado de la memoria. Y describa cada uno de los datos que aparecen en pantalla. R/: free -mt Con el comando free nos mostrara la cantidad de memoria usada y libre en el sistema, con el parmetro -m para que la informacin nos las de en Megabytes y el parmetro t para que muestre en una lnea los totales. En la grafica podemos observar que la memoria RAM del sistema es de 686 Mb y el sistema est usando 671 y hay 14 Mb libres, compartida con la memoria virtual 0 Mb, tambin nos dice que hay 52 Mb destinados al buffer, es decir el espacio de la memoria RAM otorgado para almacenar aquella informacin que ser procesada casi que inmediatamente, y 319 Mb en Cache, es decir el espacio reservado para los procesos de acceso inmediato. La expresin -/+ buffers/cache, hace referencia al espacio en memoria que los procesos estn usando actualmente hay usados 299 Mb y libres 386 Mb. Tambin tenemos la informacin acerca de la memoria SWAP (memoria virtual) que es de 1905 Mb de la cual tenemos usados 0 Mb y por consiguiente libre los 1905 Mb. Por ltimo tenemos los totales, entonces tenemos un total de memoria entre RAM y SWAP de 2592 Mb, usando 676 Mb y libres 1915 Mb.

5. Realice un comando que muestre las ltimas salidas del log y ubique las lneas del log que muestran la activacin de la tarjeta de red R/: tail -20 /var/log/messages

Usamos el comando tail para buscar al final del archivo messages (se encuentra en /var/log/messages) que es donde se encuentran los mensajes del log, y el parmetro -20 para que aparezcan solo las ultimas 20 lneas. Y con la expresin tail -20 /var/log/messages | grep 'eth0: link up' , re-direccionamos todos los mensajes con una tubera al comando grep para filtrar aquellos que hagan referencia a la activacin de la tarjeta de red usamos la expresin 'eth0: link up', que eth0 es como el sistema reconoce la tarjeta de red y link up indica que ha sido vinculada.

6. Realizar un shell script en Bash Shell que muestre la actividad de los usuarios. La salida ser un resumen por pantalla o un informe completo en un archivo. Toda la actividad ser indicada por los siguientes parmetros: 1. -a mostrar los archivos que el usuario/s ha/han modificado en las ltimas 24 horas. find /home -mtime -1 -type f | xargs ls -lt |less Utilizamos el comando find para buscar todos los archivos que se encuentran en la ruta /home, con el parmetro -mtime -1 para que muestre los ficheros que fueron modificados hace 24 horas (el parmetro -1 se usa porque el comando find multiplica este nmero por

24 horas), tambin usamos los parmetros -type f para que aparezcan los archivos tipo f, es decir archivo o fichero regular. Re-direccionamos estos resultados con una tubera al comando xargs para que el resultado anterior pase por el comando ls -lt, es decir listado de manera detallada y ordenaos por el tiempo. Esto los re-direccionamos al comando less para que el resultado se muestre paginado y podemos leer todo el contenido.

2. -p mostrar cadausuario/usuarios.

los

procesos

separado

por

estado

de

ejecucin

para

Haciendo uso del comando ps con los parmetros e, c, a y u , se mostraran los procesos con su nombre original para todos los usuarios, luego se usa una tubera para pasar la salida al comando awk para presentar en pantalla los campos 1, 8 y 11 correspondientes al nombre del usuario (USER), el estado de ejecucin del proceso(STAT) y el nombre del proceso(COMMAD).

-l mostrar cuantas conexiones ha/han hecho el/los usuario/s en la ltima semana (a partir de la fecha y hora en que se est ejecutando el script).

Con el comando find y el parmetro -mtime se mostrara los archivos de los ltimos 7 das, con el comando last se mostraran las conexiones que los usuarios han realizado y con ayuda del grep filtramos aquellas que empiezan t y con el comando wc -l se contaran dichas conexiones.

4. c nn mostrar los ltimos nn comandos ejecutados por cada usuario en las terminales. Se supone que todos los usuarios utilizan el Bash Shell por defecto En caso que no sea posible se deber indicar con un mensaje de error. El shell script para este parmetro buscara los nombres de los usuarios en el fichero /etc/passwd guardndolos en una variable como se muestra en la siguiente linea var=`cat /etc/passwd | awk 'FS=":" { if ($3 > 999 && $3<2000){ print $1 }}' | head -1` Luego realiza una bsqueda en el fichero bash_history donde se encuentran guardados los comandos escritos por el usuario en el bash , el comando tail se encarga de escoger las ultimas n lneas para finalmente imprimirlas en pantalla

5 c nn mostrar los ltimos nn comandos ejecutados por cada usuario en las terminales. Se supone que todos los usuarios utilizan el Bash Shell por defecto En caso que no sea posible se deber indicar con un mensaje de error. El shell script para este parmetro buscara los nombres de los usuarios en el fichero /etc/passwd guardndolos en una variable como se muestra en la siguiente lnea: var=`cat /etc/passwd | awk 'FS=":" { if ($3 > 999 && $3<2000){ print $1 }}' | head -1`

luego realiza una bsqueda en el fichero bash_history donde se encuentran guardados los comandos escritos por el usuario en el bash , el comando tail se encarga de escoger las ultimas n lineas para finalmente imprimirlas en pantalla.

También podría gustarte