z
Actividades - GNU/Linux - Administración de equipos
![GNU/Linux](assets/gnulinux.png)
[![cc-by-sa](assets/cc-by-sa.png)](http://creativecommons.org/licenses/by-sa/4.0/)
2016 - IES Luis Vélez de Guevara - Écija - Spain
La versión más actualizada de este documento se encuentra en [jamj2000.github.io](http://jamj2000.github.io/gnulinux/1/actividades)
# Índice
#### [Introducción](#introduccion)
#### [Sistemas de archivos](#sistemas_archivos)
#### [Interfaces de usuario](#interfaces)
#### [Comandos](#comandos)
# [Introducción](#indice)
1. __¿Quién inició el proyecto GNU?__
1. __¿Quién inició el núcleo o kernel de Linux?__
1. __¿Cuáles son las libertades que proporciona el software libre a los usuarios? __
1. __Nombra varias licencias para software libre. ¿Dónde se utilizan?__
1. __Nombra 3 distribuciones derivadas de Debian.__
1. __Nombra 3 distribuciones derivadas de RedHat.__
1. Consulta la página [Distros españolas](https://es.wikipedia.org/wiki/Anexo:Distribuciones_GNU/Linux_de_Espa%C3%B1a) o página similar e __indica las distribuciones utilizadas en las siguientes comunidades autónomas: __
- Andalucía
- Extremadura
- Madrid
- Comunidad Valenciana
- Cataluña
- Castilla
- Galicia
- Asturias
1. Consulta la página [distrowatch](http://distrowatch.com) y __haz un resumen de las siguientes distros, indicando procedencia, formato de paquetes y tipo de escritorio soportado: __
- Guadalinex
- Knoppix
- Wifislax
- Fedora
- Linux Mint
- openSUSE
- Scientific Linux
1. __En una máquina virtual realiza la instalación de Lubuntu para un entorno doméstico.__ Crea una partición separada para el directorio /home.
1. __En una máquina virtual realiza la instalación de Fedora para un entorno doméstico.__ Crea una partición separada para el directorio /home.
1. __En una máquina virtual realiza la instalación de Debian para un entorno empresarial.__ Crea una partición separada para el directorio /var.
### Actividades de ampliación
1. __Resumen brevemente en qué consiste las licencia GPL __
1. Consulta la página [distrowatch](http://distrowatch.com) o página similar__ y haz un resumen de las siguientes distros, indicando procedencia, formato de paquetes y tipo de escritorio soportado: __
- Korora
- Damm Small Linux
- Mageia
- Manjaro
- FreeBSD
- ROSA
- Kylin
- CentOS
- Chakra
- PCLinuxOS
- Kali
1. __En una máquina virtual realiza la instalación de openSuSE para un entorno doméstico.__ Crea una partición separada para el directorio /home.
1. __En una máquina virtual realiza la instalación de Linux Mint para un entorno doméstico.__ Crea una partición separada para el directorio /home.
# [Sistemas de archivos](#indice)
1. __Nombra 4 tipos de formato para particiones__
1. __¿Cuál es el formato por defecto actualmente para particiones de GNU/Linux?__
1. __¿Qué formato de sistema de archivos se utiliza por defecto en GNU/Linux?__
1. __¿Qué formato de sistema de archivos utiliza GNU/Linux para la partición de intercambio?__
1. __¿Cuál es el tamaño adecuado para la partición swap?__
1. __Para el siguiente particionado, indica__
- Partición raíz: nombre, tamaño y punto de montaje
- Partición de usuarios: nombre, tamaño y punto de montaje
- Partición de intercambio: nombre, tamaño y punto de montaje
![particiones](assets/particiones.png)
1. __¿Dónde se monta la partición swap?__
1. __¿Está soportado el sistema de archivos FAT en GNU/Linux?__
1. __¿Está soportado el sistema de archivos NTFS en GNU/Linux?__
1. __Ejecuta los siguientes comandos para ver información acerca de las particiones.__
```sh
fdisk -l
blkid
df
```
1. __¿Cuántas particiones necesitamos para instalar GNU/Linux?__ Explica la respuesta.
1. __Indica qué tipos de archivos se almacenan en:__
- /bin
- /usr/sbin
- /sbin
- /usr/sbin
1. __Para el ejercicio anterior, busca 3 archivos importantes dentro de cada directorio.__
Usa `ls /bin` o similar para ver el contenido de cada directorio.
1. __Indica qué tipos de archivos se almacenan en:__
- /etc
- /var
- /tmp
- /usr
- /opt
1. __Para el ejercicio anterior, busca 3 archivos o subdirectorios importantes dentro de cada directorio.__
Usa `ls /etc` o similar para ver el contenido de cada directorio o realiza una búsqueda en internet.
1. __Indica qué tipos de archivos se almacenan en:__
- /home
- /root
1. __Para el ejercicio anterior, busca 3 archivos o subdirectorios importantes dentro de cada directorio.__
Usa `ls /root` o similar para ver el contenido de cada directorio o realiza una búsqueda en internet.
1. __Indica qué tipos de archivos se almacenan en:__
- /mnt
- /media
1. __Indica qué tipos de archivos se almacenan en:__
- /boot
- /dev
- /lib
### Actividades de ampliación
1. __¿Qué utilidades vienen en el paquete __ntfs-3g__?__
```
apt-get install apt-file
apt-file list ntfs-3g | egrep /s?bin
```
1. __Comprueba que vienen las siguientes aplicaciones en el paquete anterior?__
```
/sbin/mkfs.ntfs
/sbin/mkntfs
/sbin/mount.ntfs
/sbin/ntfsclone
/sbin/ntfslabel
/sbin/ntfsresize
```
1. __¿Por qué crees que todos los comandos anteriores estan bajo el directorio /sbin?__
1. Busca información. __¿Para qué se utilizan las particiones de tipo exFAT?__
1. __¿Qué utilidades vienen en el paquete __exfat-utils__?__
```
apt-cache show exfat-utils
```
1. Busca información. __¿Para qué sirven los comandos mkswap y swapon/swapoff?__
1. Busca información. __¿Qué es FHS referido al sistema de archivos GNU/Linux?__
# [Interfaces de usuario](#indice)
1. __Inicia sesión en cada terminal virtual (tty1, tty2, tty3, tty4, tty5, tty6).__ Recuerda que has de pulsar la combinación de teclas __Ctrl+Alt+F1 ... Ctrl+Alt+F6__ para acceder a cada terminal virtual. Para volver al terminal gráfico pulsa Ctrl+Alt+F7. __Ejecuta el comando `who` en uno de los terminales y muestra la salida que obtienes.__
1. __Cierra la sesión que iniciaste en cada uno de los terminales virtuales (tty1, tty2, tty3, tty4, tty5, tty6).__ Recuerda que has de pulsar la combinación de teclas __Ctrl+Alt+F1 ... Ctrl+Alt+F6__ para acceder a cada terminal virtual. Para volver al terminal gráfico pulsa Ctrl+Alt+F7. __Ejecuta el comando `who` en uno de los terminales y muestra la salida que obtienes.__
1. __En el entorno gráfico (Ctrl+Alt+F7) inicia 3 ventanas de terminal. Ejecuta el comando `who` en una de las ventanas de terminal (pseudoterminales) y muestra la salida que obtienes.__
1. __¿Cuál es la diferencia entre un terminal virtual y un pseudoterminal?__
1. __¿Cuál es la diferencia entre un terminal virtual y un pseudoterminal?__
1. __Inicia 3 sesiones en Guake. Ejecuta el comando `who` o `w` para ver los pts en los que hay una sesión abierta.__
1. __¿Qué combinación de teclas se utiliza en un pseudoterminal para copiar texto?__
1. __¿Qué combinación de teclas se utiliza en un pseudoterminal para pegar texto?__
1. __¿Cuál es el gestor de sesiones y el gestor de ventanas en GNOME?__
1. __¿Cuál es el gestor de sesiones y el gestor de ventanas en KDE?__
1. En el __escritorio GNOME__, nombra las aplicaciones predeterminadas para:
- Explorador archivos
- Editor de texto
- Compresor archivos
- Grabador CD/DVD
- Visor PDF
- Visor imágenes
- Reproductor música
- Reproductor vídeo
1. En el __escritorio KDE__, nombra las aplicaciones predeterminadas para:
- Explorador archivos
- Editor de texto
- Compresor archivos
- Grabador CD/DVD
- Visor PDF
- Visor imágenes
- Reproductor música
- Reproductor vídeo
1. ¿Es posible instalar una aplicación de un escritorio en otro tipo de escritorio?. Pon un ejemplo.
1. ¿Qué combinación de teclas se utiliza para lanzar un comando?
1. ¿Qué combinación de teclas se utiliza para cerrar una ventana?
1. __¿Qué escritorio trae por defecto la distribución Ubuntu?__
1. __Obten una captura de pantalla (en internet o en tu equipo) para cada uno de los siguientes escritorios: __
- GNOME
- KDE (Plasma)
- Unity
- XFCE
- LXDE
- Enlightenment
- Cinnamon
### Actividades de ampliación
1. __Busca información en Internet acerca de cuál es el explorador de archivos por defecto para cada uno de los escritorios anteriores.__
1. __Busca información en Internet acerca de cuál es el editor de texto por defecto para cada uno de los escritorios anteriores.__
1. __Busca información acerca del escritorio LXQt.__ Responde las siguientes cuestiones:
- ¿Por qué recibe este nombre?
- ¿Cuál es la página oficial del proyecto?
- ¿Es un escritorio ligero?
- Muestra una captura de pantalla de este escritorio.
# [Comandos](#indice)
## Conceptos
1. __Indica 20 comandos externos.__ ¿Para qué sirven?
1. __Indica 10 comandos internos.__ ¿Para qué sirven?
1. __Consulta la página de manual del comando ls.__ ¿Cuál es la opción para hacer un listado en orden inverso?
1. __Consulta la ayuda del comando echo.__ ¿Cuál es la opción para mostrar un mensaje sin salto de línea final?
1. __¿Qué tipo de ayuda (`man` o `help`) has utilizado para el comando `echo`?__
1. __El comando `echo`, ¿es un comando interno o externo?__ Puedes averiguarlo con `type echo`.
1. __En el caso de que el comando `echo` sea un comando interno, ¿por qué funciona entonces la ayuda `man echo`?.__
1. __Haciendo uso del comando `type`, indica si los siguientes comandos son internos o externos:__
- ls
- cd
- cp
- bg
- fg
- jobs
- mv
- rm
- mkdir
- touch
- nano
- less
- man
- clear
- reset
- adduser
- deluser
- pwd
- help
- echo
- kill
- history
- exit
- logout
- type
1. De los comandos externos anteriores, ¿cuáles se guardan en la carpeta /bin? ¿Y en la carpeta /usr/sbin?
1. Para obtener __ayuda acerca de un comando externo__ usamos la orden:
1. Para obtener __ayuda acerca de un comando interno__ usamos la orden:
### Actividades de ampliación
1. __Consulta las páginas de manual del comando `ls`.__ ¿Cúal es la opción que debemos usar para hacer un listado en orden alfabético inverso.
1. __Consulta las páginas de manual del comando `touch`.__ ¿Cuál es la opción que debemos usar para ver la versión de dicho comando.
1. __Consulta la ayuda del comando `exit`.__Muestra cuál es su salida.
1. __Consulta la ayuda del comando `logout`.__Muestra cuál es su salida.
## Comandos básicos
Teniendo en cuenta el siguiente árbol de directorios y que __nuestro directorio actual es /home/usuario__
![arbol](assets/linux-filesystem.png)
1. __Ejecuta comando para ver el directorio actual__
1. __Si no estamos en el directorio /home/usuario, ¿qué comandos podemos usar para situarnos en él?__
1. __(Actividad resuelta) Indicar ruta absoluta para listar contenido de directorio /bin.__
```sh
ls /bin
```
1. __(Actividad resuelta) Indicar ruta relativa para listar contenido de directorio /bin.__
```sh
ls ../../bin
```
1. __Indicar ruta absoluta para listar contenido de directorio /usr/bin.__
1. __Indicar ruta absoluta para listar contenido de directorio /usr/sbin.__
1. __Indicar ruta relativa para listar contenido de directorio /usr/bin.__
1. __Indicar ruta relativa para listar contenido de directorio /usr/sbin.__
1. __Indicar ruta absoluta para listar contenido de directorio /home/usuario/Descargas.__
1. __Indicar ruta relativa para listar contenido de directorio /home/usuario/Descargas.__
1. __Indicar ruta relativa para listar contenido de directorio /home/usuario/Descargas/Apuntes.__
1. __Indicar ruta relativa para listar contenido de directorio /home/usuario/Descargas/Apuntes/ISO.__
1. __Indicar ruta relativa para listar contenido de directorio /usr/share/doc.__
1. __Indica qué hacen los siguientes comandos.__
- `cd /`
- `cd`
- `cd ~`
- `cd -`
1. __Indica como podemos hacer un listado de los archivos del directorio /usr/bin cuyo nombre __
- tiene 5 letras
- tiene 6 letras
- empieza por letra 'a'
- empieza por letra 'a' y tiene 5 letras
- termina por letra 'a'
- termina por letra 'a' y tiene 5 letras
- empieza por letra 'a', 'b' o 'c'
- empieza por letra 'a', 'b' o 'c' y tiene 5 letras
1. __Crea el siguiente alias.__ Necesitarás conexión a Internet.
alias tiempo="curl -4 http://wttr.in/Ecija"
1. __Indica 4 formas distintas de ver el contenido del archivo /etc/passwd.__
1. __Indica comando para limpiar el terminal de texto.__
1. __Indica comando para ver el historial del terminal de texto.__
1. __Indica comando para ver el espacio ocupado en disco del directorio /usr.__
1. ¿Qué significa la __opción -R__ en los siguientes comandos?
- ls
- cp
- rm
- chown
- chmod
1. __Realiza un tarball .tar.gz de tu directorio Descargas.__
1. __Haz listado del tarball creado anteriormente.__
1. __Copia el tarball anterior a tu directorio Documentos. Realiza la extracción ahí.__
1. __Realiza un tarball .tar.bz2 de tu directorio Escritorio.__
1. __Haz listado del tarball creado anteriormente.__
1. __Copia el tarball anterior a tu directorio Documentos. Realiza la extracción ahí.__
1. __Instala el paquete `xaos`.__ Una vez instalado, pulsa `Alt+F2` y escribe `xaos`. Pulsa `Intro` para lanzar la aplicación.
1. __Pulsa `Alt+F4` para cerrar la ventana de `xaos`.__
1. __Instala los siguientes paquetes:__
- vlc (reproductor de vídeo)
- ubuntu-restricted-extras (codecs privativos -mp3, flash, ...-)
- unrar rar p7zip-full unace unzip (programas de compresión más comunes)
```sh
apt-get install vlc ubuntu-restricted-extras unrar rar p7zip-full unace unzip
```
Puede ser que algunos paquetes los tengas ya instalados.
1. __Comprueba si tienes instalado VirtualBox.__ Si no lo tienes instalado, busca el nombre exacto del paquete e instálalo.
```sh
apt-cache search virtualbox
apt-get install virtualbox
```
1. __Instala el paquete `gdebi`.__ Busca información acerca de para qué sirve este paquete.
1. La aplicación `Master PDF` es una aplicación de la empresa _Code Industry_ para la edición de archivos PDF. __Descarga el paquete .deb adecuado a tu S.O. (32 o 64 bits) desde la web oficial y realiza la instalación con gdebi.__
![gdebi gráfico](assets/gdebi.png)
1. __Muestra el valor de la variable de entorno $PATH.__ Ejecuta `echo $PATH`.
1. __Muestra el valor de la variable de entorno $HOME.__
1. __Muestra el valor de la variable de entorno $USER.__
1. __Muestra el valor de la variable de entorno $SHELL.__
1. __Muestra el valor de la variable de entorno $PS1.__
1. __Muestra el valor de la variable de entorno $PS2.__
1. __Muestra el valor de todas las variables de entorno.__ Ejecuta `env`.
1. __Muestra el valor de todas las variables de entorno relacionadas con PWD.__ Ejecuta `env | grep PWD`.
1. __Muestra el valor de todas las variables de entorno relacionadas con LANG.__ Ejecuta `env | grep LANG`.
1. __¿Para qué sirve la variable de entorno $PATH?__
1. __¿Para qué sirve la variable de entorno $PS1?__
1. __Visita la página [bashrcgenerator -PS1 Generator-](http://bashrcgenerator.com/) y diseña un prompt PS1 igual al mostrado en la imagen.__
![PS1](assets/ps1.png)
1. __Copia el código obtenido en el ejercicio anterior `export PS1=" ... "` en un terminal de texto y ejecútalo.__ Haz un captura donde se muestre como queda el indicador de sistema o prompt.
1. __Visita la página [bashrcgenerator -PS1 Generator-](http://bashrcgenerator.com/) y diseña un prompt PS1 igual al mostrado en la imagen.__
![PS1](assets/ps1-color0.png)
1. __Copia el código obtenido en el ejercicio anterior `export PS1=" ... "` en un terminal de texto y ejecútalo.__ Haz un captura donde se muestre como queda el indicador de sistema o prompt.
### Actividades de ampliación
1. __Para que los cambios realizados en la variable de entorno $PS1 se guarden debemos editar el archivo ~/.bashrc. __ Haz una copia de este archivo (`cp ~/.bashrc ~/.bashrc.orig`) y modifícalo de la siguiente forma.
![PS1](assets/ps1-color.png)
En las siguientes sesiones de terminal que inicies debería aparecer el nuevo prompt o indicador.
1. __Prompt o indicador distinto para los usuarios y para root.__ Para los usuarios sin privilegios edita el archivo /home/`usuario`/.bashrc.
![ps1 distinto](assets/ps1-user-root.png)
```sh
PS1="\[$(tput bold)\]\[\033[38;5;255m\]\[\033[48;5;22m\] \h \[\033[48;5;0m\] \w \[\033[48;5;20m\] \u \[$(tput sgr0)\] "
```
Haz un captura de pantalla para comprobar como queda el resultado.
1. __Prompt o indicador distinto para los usuarios y para root.__Para el usuario root edita el archivo /root/.bashrc.
![ps1 distinto](assets/ps1-user-root.png)
```sh
PS1="\[$(tput bold)\]\[\033[38;5;255m\]\[\033[48;5;22m\] \h \[\033[48;5;0m\] \w \[\033[48;5;88m\] \u \[$(tput sgr0)\] "
```
Haz un captura de pantalla para comprobar como queda el resultado.
1. __Si queremos que todos los usuarios nuevos que demos de alta tengan el nuevo prompt debemos modificar los archivos `/etc/profile` y/o `/etc/bash.bashrc` o similar (dependiendo de la distro utilizada).__ Busca información acerca de como hacerlo. Si deseas realizar cambios, recuerda hacer dos cosas previamente:
- Utiliza una máquina virtual
- Saca copia de seguridad de los archivos originales (P. ej. `cp /etc/profile /etc/profile.orig`)
1. __Pásate por la página [Después de Instalar Ubuntu Vivid Vervet (15.04)](http://glatelier.org/2015/04/23/despues-de-instalar-ubuntu-vivid-vervet-15-04/) y realiza los cambios que estimes oportunos. Recuerda realizar todos los cambios en una máquina virtual.__
1. __¿Para qué sirve el comando `apt-get upgrade`?__ Consulta la página de manual de apt-get (`man apt-get`)
1. __¿Para qué sirve el comando `apt-get dist-upgrade`?__ Consulta la página de manual de apt-get (`man apt-get`)
1. __¿Qué son los repositorios PPA?. ¿Qué función tienen?__
## Usuarios
1. __¿Cuál es la aplicación para iniciar sesión en terminal de texto?__
1. __¿Cuál es el comando para cerrar una sesión en terminal de texto?__
1. __¿Cuál es el Display Manager para iniciar sesión en GNOME?__
1. __¿Cuál es el Display Manager para iniciar sesión en KDE?__
1. __Da de alta a usuario1 y usuario2.__ La contraseña será igual al nombre de usuario.
1. __Inicia sesión como usuario1. Ejecuta el comando `id`.__ Escribe el resultado. ¿Qué UID tiene? ¿Qué GID tiene? ¿Cuál es su grupo primario?
1. __Inicia sesión como usuario2. Ejecuta el comando `id`.__ Escribe el resultado. ¿Qué UID tiene? ¿Qué GID tiene? ¿Cuál es su grupo primario?
1. __Inicia sesión como usuario1. Cambia la contraseña de dicho usuario por la de 'prueba'.__
1. __Inicia sesión con tu usuario normal. Modifica desde esta sesión la contraseña del usuario anterior dejándola como 'usuario1'.__
1. __Inicia sesión con el usuario que utilizas regularmente. Ejecuta el comando `id`.__ Escribe el resultado. ¿Qué UID tiene? ¿Qué GID tiene? ¿Cuál es su grupo primario? ¿Y sus grupos secundarios?
1. __Añade usuario1 a los mismos grupos secundarios a los que pertenece el usuario que utilizas regularmente.__
1. __Añade usuario2 a los mismos grupos secundarios a los que pertenece el usuario que utilizas regularmente.__
1. __Inicia sesión con usuario1 y comprueba que puede utilizar el comando `sudo`. Haz lo mismo con el usuario2.__
1. __¿Cuál de los grupos secundarios permite que un usuario pueda ejecutar el comando sudo?.__
1. __¿Cuál sería el comando completo para eliminar el usuario1 y su carpeta personal?.__ No lo elimines, puesto que nos hará falta más adelante.
### Actividades de ampliación
1. __Edita el archivo /etc/shadow.__ Edita la línea `root:!: ...`. Elimina el carácter `!` del segundo campo. Debe quedar así `root:: ...`. Los puntos suspensivos representan el resto de campos que debes dejar tal cual estaban. Pulsa `Ctrl+Alt+F1` e inicia sesión como usuario `root`. ¿Qué sucede?. Cierra la sesión.
1. __Vuelve a editar el archivo /etc/shadow.__ Deja la línea `root:: ...` como estaba, es decir, vuelve a poner `!` en el segundo campo. Debe quedar así `root:!: ...`. Los puntos suspensivos representan el resto de campos que debes dejar tal cual estaban. Pulsa `Ctrl+Alt+F1` e inicia sesión como usuario `root`. ¿Qué sucede?.
1. __Abre el archivo `/etc/sudoers`.__ Este archivo guarda los usuarios y grupos que pueden ejecutar el comando `sudo`. ¿Qué usuarios pueden ejecutar este comando? Además, ¿qué grupos de usuarios pueden hacerlo?
## Archivos
1. __¿Qué archivos del directorio /bin son ejecutables binarios (ELF - Executable and Linkable Format)?__
Ejecuta la orden
```sh
file /bin/* | grep ELF
```
1. __¿Qué archivos del directorio /bin son ejecutables de script?__
Ejecuta la orden
```sh
file /bin/* | grep script
```
1. Cuando hacemos un listado largo, en la columna de permisos, la primera letra indica el tipo. __¿Qué letra aparece para cada uno de los siguientes tipos?__
- directorio (directory)
- archivo regular
- enlace simbólico (link)
- dispositivo de caracteres (char)
- dispositivo de bloques (block)
- tubería con nombre (pipe)
- socket con nombre (socket)
1. __¿Cuál es el código octal para los siguientes permisos?__
- `rwx rwx rwx` --> 777 (resuelto)
- `rwx r-- ---` --> 740 (resuelto)
- `rw- rw- rw-`
- `rwx r-- r--`
- `r-- r-- r--`
- `r-- r-- ---`
- `r-x r-x r--`
- `rwx r-x r--`
1. Para los siguientes códigos en octal, indica cuáles son los permisos asociados.
- 777 --> `rwx rwx rwx` (resuelto)
- 740 --> `rwx r-- ---` (resuelto)
- 664
- 440
- 755
- 754
- 550
1. __Indica comando completo para dar de forma recursiva los permisos 755 a la carpeta /usr/share/doc.__
1. __Indica comando completo para dar de forma recursiva los permisos 750 a la carpeta /usr/share/doc.__
1. __Indica 3 formas de añadir el permiso de ejecución para todo el mundo sobre el archivo `/bin/sleep`.__
1. __Indica como añadimos el permiso de ejecución sólo para el propietario sobre archivo `/bin/sleep`.__
1. __Indica como añadimos el permiso de ejecución sólo para el grupo sobre archivo `/bin/sleep`.__
1. __Indica como añadimos los permisos de lectura y escritura sólo para el propietario sobre archivo `/bin/sleep`.__
1. __Accede a la página http://file-permissions.ninja. Pon los máximos permisos.__
![file-permissions.ninja.png](./assets/file-permissions.ninja.png)
Escribe cuál es la representación
- numérica
- binaria
- simbólica
1. __Activa el SETUID bit.__
Escribe cuál es la representación
- numérica
- binaria
- simbólica
1. __Activa el SETGID bit.__
Escribe cuál es la representación
- numérica
- binaria
- simbólica
1. __Activa el STICKY bit.__
Escribe cuál es la representación
- numérica
- binaria
- simbólica
1. __Desactiva el bit EXECUTE del propietario.__
Escribe cuál es la representación
- numérica
- binaria
- simbólica
1. __Desactiva el bit EXECUTE del grupo.__
Escribe cuál es la representación
- numérica
- binaria
- simbólica
1. __Desactiva el bit EXECUTE del resto de usuarios.__
Escribe cuál es la representación
- numérica
- binaria
- simbólica
### Actividades de ampliación
## Procesos
1. __Ejecuta el siguiente comando y pulsa Ctrl+C para finalizarlo__
```sh
ping 8.8.8.8
```
1. __Ejecuta el siguiente comando en segundo plano (background) y pulsa Ctrl+C para finalizarlo__
```sh
ping 8.8.8.8 &
```
¿se puede finalizar el proceso?
1. __Para finalizar adecuadamente sigue estos pasos.__ Escribe
```sh
fg 1
```
para traerlo a primer plano (foreground) y luego pulsa __Ctrl+C para finalizar el proceso__
1. __Vuelve a ejecutar__
```sh
ping 8.8.8.8
```
pulsa __Ctrl+Z para detener el proceso__
1. __El proceso está detenido, pero no finalizado__. Ejecuta
```sh
jobs
```
para ver las tareas activas.
1. __Para que el proceso continue funcionando en segundo plano (background) ejecuta__
```sh
bg 1
```
1. __Para finalizarlo, lo pasamos a primer plano (foreground)__
```sh
fg 1
```
y pulsamos __Ctrl+C para finalizar el proceso__
1. __Ejecuta los siguientes comandos e indica qué ejecutables tienen el bit SETUID.__
```sh
ls -lR directorio | tr -s ' ' | cut -d ' ' -f 1,9- | grep ^...s......
```
Para los siguientes directorios:
- /bin
- /usr/bin
- /sbin
- /usr/sbin
1. __Ejecuta los siguientes comandos e indica qué ejecutables tienen el bit SETGID.__
```sh
ls -lR directorio | tr -s ' ' | cut -d ' ' -f 1,9- | grep ^......s...
```
Para los siguientes directorios:
- /bin
- /usr/bin
- /sbin
- /usr/sbin
1. __Ejecuta los siguientes comandos e indica qué ejecutables tienen el bit STICKY.__
```sh
ls -lR directorio | tr -s ' ' | cut -d ' ' -f 1,9- | grep ^.........t
```
Para los siguientes directorios:
- /bin
- /usr/bin
- /sbin
- /usr/sbin
1. __Ejecuta los siguientes comandos e indica qué archivos o directorios tienen el bit STICKY.__
```sh
ls -lR directorio | tr -s ' ' | cut -d ' ' -f 1,9- | grep ^.........t
```
Para los siguientes directorios:
- /tmp
### Actividades de ampliación
1. __Prueba el siguiente comando con el pendrive montado.__¿Qué muestra en pantalla?. Abre un archivo del pendrive. Vuelve a ejecutar el comando. ¿Qué aparece ahora?
```sh
ps `fuser -m /dev/sdb1 2> /dev/null | tr -s ' '`
```
NOTA: Si el dispositivo _sdb1_ no se asigna al pendrive, prueba con _sdc1_, o _sdd1_.