Linux Flashcards

(824 cards)

1
Q

¿En qué año y quién lanzó la primera versión del núcleo (kernel) Linux?

A

Linus Torvalds en 1991.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

¿Qué sistema operativo tipo Unix sirvió de inspiración directa y base de desarrollo para Linus Torvalds?

A

Minix (creado por Andrew S. Tanenbaum).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

¿A qué se refiere el término ‘GNU/Linux’?

A

A la combinación del núcleo Linux con las herramientas y utilidades del proyecto GNU de Richard Stallman.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿Bajo qué licencia se distribuye el kernel de Linux?

A

GNU GPL (General Public License) versión 2.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

¿Qué significa que Linux sea un núcleo ‘monolítico’?

A

Significa que todo el sistema operativo (gestión de memoria, procesos, drivers) se ejecuta en el espacio del núcleo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

¿Cuál es la familia de distribuciones conocida por su compromiso con el software libre y su estabilidad, base de Ubuntu?

A

Familia Debian.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

¿Qué distribución es la base comercial de la familia que incluye a Fedora y CentOS?

A

Red Hat Enterprise Linux (RHEL).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

¿Qué distribución se caracteriza por seguir la filosofía KISS (Keep It Simple, Stupid) y un modelo de actualización ‘Rolling Release’?

A

Arch Linux.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

¿Qué distribución alemana es famosa por su herramienta de configuración centralizada llamada YaST?

A

SUSE / openSUSE.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

¿Cómo se llama la versión de Red Hat que sirve como laboratorio para probar las novedades que luego irán a la versión Enterprise?

A

Fedora.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

¿Qué formato de archivo de paquete utiliza la familia Debian?

A

.deb

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

¿Qué formato de archivo de paquete utiliza la familia Red Hat?

A

.rpm (Red Hat Package Manager)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

¿Cuál es la herramienta de bajo nivel en Debian para instalar archivos .deb locales?

A

dpkg

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

¿Cuál es la herramienta de alto nivel en Debian que gestiona dependencias y repositorios?

A

apt (o apt-get)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

¿Cuál es la herramienta de bajo nivel en Red Hat para gestionar archivos .rpm?

A

rpm

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

¿Qué gestor de paquetes de alto nivel sustituyó a YUM en las versiones modernas de Red Hat y Fedora?

A

DNF (Dandified YUM)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

¿Qué comando de la familia Debian se usa para actualizar la lista de paquetes disponibles desde los repositorios?

A

apt update

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

¿Qué comando de la familia Debian se usa para actualizar todas las aplicaciones instaladas a su última versión?

A

apt upgrade

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

¿Cómo se llama el sistema de paquetería universal desarrollado por Canonical (Ubuntu) que utiliza contenedores?

A

Snap

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

¿Cómo se llama el sistema de paquetería universal, rival de Snap, que se centra en el despliegue de aplicaciones de escritorio?

A

Flatpak

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

¿Qué comando se usa para instalar un paquete .deb local con dpkg?

A

dpkg -i nombre_paquete.deb

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

¿Qué comando de dpkg muestra una lista de todos los paquetes instalados en el sistema?

A

dpkg -l

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

¿Qué comando de dpkg se usa para eliminar un paquete pero conservando sus ficheros de configuración?

A

dpkg -r (remove)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

¿Qué comando de dpkg elimina un paquete y también sus ficheros de configuración?

A

dpkg -P (purge)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
¿Cómo se consulta con dpkg si un fichero específico pertenece a qué paquete instalado?
dpkg -S /ruta/al/fichero
26
¿Qué comando se usa para instalar un paquete .rpm con la herramienta de bajo nivel de Red Hat?
rpm -i nombre_paquete.rpm
27
¿Qué significan los flags '-ivh' muy comunes al usar el comando rpm?
i: install, v: verbose, h: hash (muestra barras de progreso con #).
28
¿Qué comando de rpm se usa para desinstalar un paquete?
rpm -e (erase)
29
¿Cómo se listan todos los paquetes instalados en un sistema basado en RPM?
rpm -qa (query all)
30
¿Cómo se verifica la integridad de un paquete instalado con rpm?
rpm -V
31
¿Qué comando de APT descarga las últimas firmas y listas de paquetes de los repositorios sin instalar nada?
apt update
32
¿Qué diferencia hay entre 'apt upgrade' y 'apt full-upgrade' (o dist-upgrade)?
upgrade actualiza paquetes; full-upgrade puede eliminar o instalar nuevos paquetes para resolver conflictos de dependencias.
33
¿Qué comando de APT se usa para buscar un paquete en los repositorios por nombre o descripción?
apt search palabra_clave
34
¿Qué comando se usa para ver las dependencias y una descripción detallada de un paquete en Debian?
apt show nombre_paquete (o apt-cache show)
35
¿Qué comando de APT elimina paquetes que se instalaron automáticamente como dependencias y ya no son necesarios?
apt autoremove
36
¿Cuál es el comando básico para instalar un paquete en versiones antiguas de Red Hat/CentOS?
yum install nombre_paquete
37
¿Qué comando de DNF muestra los repositorios que están actualmente habilitados en el sistema?
dnf repolist
38
¿Qué comando de DNF/YUM se usa para limpiar la caché de paquetes descargados y metadatos?
dnf clean all
39
¿Cómo se busca qué paquete proporciona un comando o fichero específico en DHEL/Fedora?
dnf provides /ruta/fichero
40
¿Qué comando de DNF muestra el historial de instalaciones y permite deshacer una operación (undo)?
dnf history
41
¿Qué comando se usa para buscar una aplicación en la tienda de Snap?
snap find nombre
42
¿Cómo se instala una aplicación con Snap que requiere permisos especiales de seguridad (clásico)?
snap install nombre --classic
43
¿Qué comando muestra los cambios recientes y tareas en curso en el sistema Snap?
snap changes
44
¿Cómo se actualizan todos los paquetes Snap instalados?
snap refresh
45
¿Qué comando elimina una aplicación Snap del sistema?
snap remove nombre
46
¿Qué comando se utiliza para añadir el repositorio 'Flathub' a Flatpak?
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
47
¿Cómo se instala una aplicación desde un repositorio específico en Flatpak?
flatpak install flathub org.nombre.App
48
¿Qué comando se usa para ejecutar una aplicación instalada vía Flatpak desde la terminal?
flatpak run org.nombre.App
49
¿Cómo se listan únicamente las aplicaciones instaladas mediante Flatpak?
flatpak list
50
¿Qué comando se usa para actualizar las aplicaciones de Flatpak?
flatpak update
51
¿Qué hace el comando 'ls' por defecto?
Lista el contenido (archivos y directorios) del directorio actual.
52
¿Qué modificador de 'ls' muestra los archivos ocultos (los que empiezan por punto)?
ls -a (all)
53
¿Qué modificador de 'ls' muestra el formato largo con permisos, dueño, tamaño y fecha?
ls -l (long)
54
¿Cómo se ordenan los archivos por fecha de modificación (del más reciente al más antiguo) en 'ls'?
ls -t
55
¿Qué flag de 'ls' muestra los tamaños de archivo en formato legible (KB, MB, GB)?
ls -h (human-readable)
56
¿Cómo se listan los contenidos de forma recursiva (incluyendo subdirectorios)?
ls -R
57
¿Cuál es la función principal de 'touch'?
Crear un archivo vacío o actualizar la fecha de acceso/modificación de uno existente.
58
¿Qué flag de 'touch' evita que se cree un archivo nuevo si este no existe?
touch -c
59
¿Cómo se cambia solo la fecha de acceso de un archivo con 'touch'?
touch -a
60
¿Cómo se cambia solo la fecha de modificación de un archivo con 'touch'?
touch -m
61
¿Qué comando se usa para copiar archivos o directorios?
cp (copy)
62
¿Qué modificador es obligatorio en 'cp' para copiar un directorio y todo su contenido?
cp -r (recursive)
63
¿Qué flag de 'cp' activa el modo interactivo (pide confirmación antes de sobrescribir)?
cp -i
64
¿Qué flag de 'cp' preserva los atributos del archivo (permisos, fechas, dueño)?
cp -p
65
¿Cuáles son las dos funciones principales del comando 'mv'?
Mover archivos/directorios y renombrarlos.
66
¿Qué flag de 'mv' impide que se sobrescriba un archivo existente (no clobber)?
mv -n
67
¿Qué comando se usa para eliminar archivos o directorios?
rm (remove)
68
¿Qué flag de 'rm' permite borrar un directorio y todo su contenido?
rm -r
69
¿Qué flag de 'rm' fuerza el borrado ignorando archivos inexistentes y sin pedir confirmación?
rm -f (force)
70
¿Qué comando es más seguro para borrar directorios vacíos?
rmdir
71
¿Qué significa 'tar' y cuál es su propósito original?
Tape Archiver. Se usa para empaquetar múltiples archivos en uno solo (sin comprimir por defecto).
72
¿Qué combinación de flags se usa para crear un nuevo archivo .tar?
tar -cvf (c: create, v: verbose, f: file)
73
¿Qué flag se añade a 'tar' para comprimir el archivo usando Gzip (.tar.gz)?
tar -z
74
¿Qué flag se añade a 'tar' para comprimir el archivo usando Bzip2 (.tar.bz2)?
tar -j
75
¿Qué combinación de flags se usa para extraer el contenido de un archivo .tar?
tar -xvf (x: extract)
76
¿Qué flag permite ver el contenido de un archivo .tar sin extraerlo?
tar -t (list)
77
¿Qué flag se usa para especificar el nombre del archivo resultante o el archivo a extraer?
tar -f (siempre debe ir al final de los flags si le sigue el nombre del archivo)
78
¿Cómo se extrae un archivo en un directorio específico diferente al actual?
tar -xvf archivo.tar -C /ruta/destino
79
¿Qué flag se usa para comprimir usando el algoritmo XZ (.tar.xz)?
tar -J (J mayúscula)
80
¿Es necesario ser root para usar 'tar' sobre archivos de los que eres dueño?
No, es un comando de usuario estándar.
81
¿Qué comando se usa para crear uno o varios directorios?
mkdir (make directory)
82
¿Qué flag de 'mkdir' permite crear una ruta completa de directorios (padres e hijos) de una sola vez?
mkdir -p (parents)
83
¿Qué comando elimina directorios únicamente si están vacíos?
rmdir
84
¿Qué flag de 'rmdir' permite eliminar un directorio y sus padres si quedan vacíos tras la operación?
rmdir -p
85
¿Qué comando se usa para crear enlaces entre archivos?
ln (link)
86
¿Cuál es el comportamiento por defecto de 'ln' (sin flags)?
Crea un enlace duro (hard link).
87
¿Qué flag de 'ln' se utiliza para crear un enlace simbólico o suave?
ln -s (symbolic)
88
¿Cuál es la diferencia principal entre un enlace duro y uno simbólico?
El enlace duro apunta al mismo inodo; el simbólico apunta a la ruta del nombre del archivo.
89
¿Qué comando muestra información detallada de un archivo (inodo, fechas de acceso/modificación, tamaño)?
stat
90
¿Qué información de tiempo (timestamps) muestra 'stat' que no muestra un 'ls' normal?
Muestra 'Access', 'Modify' y 'Change' (cambio de metadatos/inodo).
91
¿Qué comando permite cambiar el propietario y/o el grupo de un archivo?
chown (change owner)
92
¿Cuál es la sintaxis de 'chown' para cambiar usuario y grupo simultáneamente?
chown usuario:grupo archivo
93
¿Qué comando cambia exclusivamente el grupo de un archivo?
chgrp
94
¿Qué flag común a chown/chgrp permite aplicar cambios a todos los archivos dentro de un directorio?
-R (recursive)
95
¿Qué comando se usa para cambiar los permisos de acceso de un archivo?
chmod (change mode)
96
En 'chmod', ¿qué representan las siglas u, g, o, a?
u: user (dueño), g: group, o: others, a: all (todos).
97
En notación octal de 'chmod', ¿qué valores corresponden a Lectura, Escritura y Ejecución?
Lectura (r)=4, Escritura (w)=2, Ejecución (x)=1.
98
¿Qué permiso otorga el comando 'chmod 755 archivo'?
Dueño: RWE (7), Grupo: RE (5), Otros: RE (5).
99
¿Qué permiso otorga el comando 'chmod 640 archivo'?
Dueño: RW (6), Grupo: R (4), Otros: Ninguno (0).
100
¿Cómo se añade permiso de ejecución al dueño sin tocar el resto con notación simbólica?
chmod u+x archivo
101
¿Qué comando se usa para buscar archivos en una jerarquía de directorios según diversos criterios?
find
102
¿Qué flag de 'find' se usa para buscar por nombre (distinguiendo mayúsculas)?
find /ruta -name 'archivo'
103
¿Qué flag de 'find' se usa para buscar por nombre ignorando mayúsculas/minúsculas?
find /ruta -iname 'archivo'
104
¿Cómo se buscan solo directorios con el comando 'find'?
find /ruta -type d
105
¿Cómo se buscan archivos con el comando 'find' cuyo tamaño sea superior a 100MB?
find /ruta -size +100M
106
¿Qué flag de 'find' permite ejecutar un comando (como rm) sobre cada resultado encontrado?
-exec (ej. -exec rm {} \;)
107
¿Qué hace el comando 'rsync'?
Sincroniza archivos y directorios entre dos ubicaciones (locales o remotas) de forma eficiente.
108
¿Qué flag de 'rsync' activa el modo archivo (preserva permisos, dueños y es recursivo)?
rsync -a (archive)
109
¿Qué flag de 'rsync' comprime los datos durante la transferencia?
rsync -z (compress)
110
¿Qué hace el flag '--delete' en rsync?
Elimina archivos en el destino que ya no existen en el origen (sincronía exacta).
111
¿Cuáles son las tres clases de usuarios a las que se aplican permisos en Linux?
Dueño (User), Grupo (Group) y Otros (Others).
112
¿Qué significan las siglas 'rwx' en un archivo?
Read (Lectura), Write (Escritura) y Execute (Ejecución).
113
En un directorio, ¿qué permite el permiso de ejecución (x)?
Permite 'atravesar' o entrar en el directorio (hacer cd).
114
En un directorio, ¿qué permite el permiso de lectura (r)?
Permite listar los archivos que contiene (hacer ls).
115
¿Qué comando se utiliza para ver los permisos de los archivos en formato 'drwxr-xr-x'?
ls -l
116
En la salida de 'ls -l', ¿qué indica el primer carácter de la cadena de permisos (ej. la 'd' en 'drwx')?
El tipo de archivo (d: directorio, -: archivo regular, l: enlace simbólico).
117
¿Qué valor numérico total representa el permiso 'r-x'?
5 (4 de lectura + 1 de ejecución).
118
¿Cómo se representa en formato octal el permiso total 'rwxrwxrwx'?
777
119
¿Qué comando cambia el dueño de un archivo?
chown
120
¿Qué es la 'u mask' (umask)?
Es un valor que determina los permisos que NO se darán por defecto a los archivos nuevos.
121
¿Qué es el bit SetUID (SUID)?
Permite que un archivo ejecutable se ejecute con los privilegios del dueño del archivo en lugar de los del usuario que lo lanza.
122
¿Cómo se visualiza el SetUID en la cadena de permisos de 'ls -l'?
Aparece una 's' (o 'S') en la posición de ejecución del dueño (ej. rwsr-xr-x).
123
¿Cuál es el valor numérico (el cuarto dígito a la izquierda) del SetUID?
4000
124
¿Qué es el bit SetGID (SGID)?
En archivos, ejecuta con privilegios del grupo. En directorios, hace que los archivos nuevos hereden el grupo del directorio padre.
125
¿Cuál es el valor numérico del SetGID?
2000
126
¿Cómo se visualiza el SetGID en 'ls -l'?
Aparece una 's' (o 'S') en la posición de ejecución del grupo (ej. rwxr-sr-x).
127
¿Qué es el Sticky Bit?
Se aplica a directorios para que solo el dueño de un archivo (o root) pueda borrarlo o renombrarlo, aunque otros tengan permiso de escritura en el directorio.
128
¿Cuál es el ejemplo clásico de uso del Sticky Bit en Linux?
El directorio /tmp.
129
¿Cómo se visualiza el Sticky Bit en 'ls -l'?
Aparece una 't' (o 'T') en la posición de ejecución de 'otros' (ej. rwxrwxrwt).
130
¿Cuál es el valor numérico del Sticky Bit?
1000
131
Si ves una 'S' mayúscula en lugar de una 's' minúscula en el SetUID, ¿qué significa?
Significa que el bit SetUID está activo pero el permiso de ejecución (x) subyacente NO está activo.
132
¿Cómo se aplica el Sticky Bit a un directorio usando chmod y notación simbólica?
chmod +t nombre_directorio
133
¿Qué permiso octal darías para tener: Dueño(rwx), Grupo(rx), Otros(rx) y activar el SetUID?
4755
134
¿Qué comando daría permisos de lectura y escritura al dueño y grupo, nada a otros, y activaría el SetGID?
chmod 2660 archivo
135
Si un usuario tiene permiso de escritura en un directorio pero el Sticky Bit está activo, ¿puede borrar un archivo que pertenece a otro usuario?
No, solo el dueño del archivo o root pueden hacerlo.
136
¿Cuál es la limitación principal de los permisos tradicionales (UGO) que resuelven las ACLs?
La imposibilidad de asignar permisos a más de un usuario o más de un grupo específico.
137
¿Qué comando se utiliza para visualizar las ACLs de un archivo o directorio?
getfacl
138
¿Qué comando se utiliza para modificar o establecer las ACLs de un archivo?
setfacl
139
¿Qué indica un símbolo de suma (+) al final de la cadena de permisos en un 'ls -l' (ej. -rw-r--r--+)?
Indica que el archivo tiene ACLs extendidas configuradas.
140
¿Qué flag de 'setfacl' se usa para modificar o añadir una nueva regla?
setfacl -m (modify)
141
¿Qué flag de 'setfacl' se usa para eliminar una entrada específica de la ACL?
setfacl -x (remove)
142
¿Qué flag de 'setfacl' elimina todas las ACLs extendidas de un archivo devolviéndolo al modo estándar?
setfacl -b (base/remove-all)
143
¿Cuál es la sintaxis para dar permiso de lectura a un usuario específico llamado 'pepe' en un archivo?
setfacl -m u:pepe:r archivo
144
¿Cuál es la sintaxis para dar permiso de lectura y ejecución a un grupo específico llamado 'it' en un archivo?
setfacl -m g:it:rx archivo
145
¿Qué ocurre si los permisos tradicionales y las ACLs entran en conflicto?
Las ACLs tienen prioridad sobre los permisos UGO estándar.
146
¿Qué es la 'mask' (máscara) en una ACL?
Es el límite máximo de permisos que se pueden otorgar a usuarios y grupos (excepto al dueño y al resto).
147
¿Qué sucede si un usuario tiene permiso 'rwx' en la ACL pero la 'mask' es 'r--'?
El permiso efectivo del usuario será solo 'r--'.
148
¿Qué son las 'Default ACLs'?
ACLs aplicadas a un directorio que heredan automáticamente todos los archivos y subdirectorios creados dentro de él.
149
¿Cómo se define una ACL por defecto para un grupo en un directorio?
setfacl -m d:g:grupo:rwx directorio (notar la 'd:' al inicio).
150
¿Se aplican las 'Default ACLs' a los archivos que ya existían antes de configurar la herencia?
No, solo afectan a los archivos creados después de establecer la regla 'default'.
151
¿Qué comando usarías para copiar las ACLs de un archivo1 a un archivo2?
getfacl archivo1 | setfacl --set-file=- archivo2
152
¿Cómo se elimina específicamente la ACL de un usuario 'pepe' sin borrar el resto?
setfacl -x u:pepe archivo
153
¿En qué parte del sistema de archivos se almacenan físicamente las ACLs?
En los metadatos del inodo (Atributos Extendidos).
154
¿Qué opción de montaje del sistema de archivos suele ser necesaria en kernels antiguos para usar ACLs?
La opción 'acl' en el fichero /etc/fstab.
155
¿Qué prioridad sigue el sistema para evaluar el acceso: dueño, usuario en ACL, grupo en ACL o resto?
1. Dueño, 2. Usuario específico en ACL, 3. Grupo (el del archivo o en ACL), 4. Resto (others).
156
¿Qué es un inodo en un sistema de archivos Linux?
Es una estructura de datos que contiene toda la información de un archivo excepto su nombre y los datos reales.
157
¿Cuál es el único dato importante que NO almacena un inodo?
El nombre del archivo (este se guarda en la entrada del directorio).
158
¿Qué información de propiedad almacena el inodo?
El UID (ID del usuario dueño) y el GID (ID del grupo).
159
¿Qué metadatos de tiempo se guardan en el inodo?
atime (acceso), mtime (modificación) y ctime (cambio de estado/inodo).
160
¿Qué indica el campo 'Link count' (contador de enlaces) de un inodo?
El número de enlaces duros (hard links) que apuntan a ese inodo.
161
¿Qué sucede con el inodo cuando el contador de enlaces llega a cero?
El sistema de archivos marca el inodo y los bloques de datos asociados como libres para ser reutilizados.
162
¿Cómo identifica el kernel de Linux a un archivo internamente?
Mediante su número de inodo y el dispositivo que lo contiene.
163
¿Dónde se almacenan físicamente los inodos?
En una tabla de inodos reservada al formatear la partición (sistema de archivos).
164
¿Qué ocurre si la tabla de inodos se llena pero aún hay espacio en disco?
No se podrán crear más archivos, aunque el disco indique que tiene GB libres.
165
¿Qué comando se usa para ver el número de inodo de un archivo?
ls -i
166
¿Cómo localiza el inodo los datos reales del archivo en el disco?
Mediante una lista de punteros que apuntan a los bloques de datos (directos, indirectos, etc.).
167
¿Qué es un 'enlace duro' (hard link) desde la perspectiva del inodo?
Es una nueva entrada en un directorio que apunta a un número de inodo ya existente.
168
¿Qué es un 'enlace simbólico' (soft link) desde la perspectiva del inodo?
Es un archivo nuevo con su propio inodo que contiene la ruta de texto hacia otro archivo.
169
¿Puede un enlace duro apuntar a un inodo de un sistema de archivos diferente?
No, los enlaces duros están limitados a la misma partición/sistema de archivos.
170
¿Qué comando permite ver el estado de uso de los inodos en las particiones montadas?
df -i
171
¿Qué tamaño suele tener un inodo por defecto?
Depende del sistema de archivos (ej. 128 o 256 bytes en ext4).
172
¿Qué información de permisos guarda el inodo?
El modo del archivo (permisos rwx, SUID, SGID, Sticky Bit) y el tipo de archivo.
173
¿Por qué renombrar un archivo dentro de la misma partición es una operación instantánea?
Porque solo cambia el nombre en el directorio; el inodo y los datos permanecen intactos.
174
¿Qué tipo de archivos especiales tienen inodo en Linux?
Todos: archivos regulares, directorios, enlaces simbólicos, dispositivos y sockets.
175
¿Qué sucede con el 'ctime' de un inodo si cambio los permisos con chmod?
El ctime se actualiza porque ha habido un cambio en los metadatos del inodo.
176
¿Cuál es el propósito principal del estándar FHS?
Definir la ubicación de archivos y directorios en sistemas operativos tipo Unix para que el software sea predecible.
177
¿Qué se almacena en el directorio raíz '/'?
Es el nivel jerárquico más alto; contiene todos los directorios del sistema, incluso si están en diferentes particiones.
178
¿Qué tipo de archivos se encuentran en '/bin'?
Comandos ejecutables esenciales para todos los usuarios (ej. ls, cp, cat).
179
¿Qué diferencia hay entre '/bin' y '/sbin'?
'/sbin' contiene ejecutables esenciales destinados a la administración del sistema y root (ej. fdisk, ip, reboot).
180
¿Qué se almacena en el directorio '/boot'?
Archivos necesarios para el proceso de arranque, incluyendo el Kernel (vmlinuz) y el gestor de arranque (GRUB).
181
¿Qué contiene el directorio '/lib'?
Bibliotecas (libraries) esenciales para los ejecutables de /bin y /sbin, además de los módulos del kernel.
182
¿Cuál es el propósito de '/opt'?
Almacenar paquetes de software de aplicaciones adicionales o 'add-ons' que no forman parte del sistema base (ej. Google Chrome).
183
¿Qué tipo de archivos se almacenan en '/etc'?
Archivos de configuración del sistema específicos del host (archivos de texto plano, no ejecutables).
184
¿Qué se encuentra en '/home'?
Los directorios personales de los usuarios (excepto root), donde guardan sus documentos y configuraciones personales.
185
¿Cuál es el directorio personal (home) del superusuario root?
'/root' (está separado de /home para asegurar la disponibilidad si /home no se monta).
186
¿Qué se almacena en '/root' según el FHS?
El directorio personal del usuario root.
187
¿Cuál es el propósito de '/var'?
Almacenar archivos de datos variables que crecen durante el uso del sistema, como logs, bases de datos y colas de correo.
188
¿Dónde se guardan los archivos de registro (logs) del sistema específicamente?
En '/var/log'.
189
¿Qué contiene '/tmp'?
Archivos temporales creados por programas. Suele borrarse al reiniciar y tiene el Sticky Bit activado.
190
¿Qué es '/dev'?
Un directorio que contiene archivos especiales que representan los dispositivos de hardware (discos, terminales, etc.).
191
¿Qué tipo de archivos hay en '/proc'?
Un sistema de archivos virtual que proporciona información sobre procesos y el kernel en tiempo real.
192
¿Qué es '/sys'?
Un sistema de archivos virtual (sysfs) que contiene información sobre el hardware, drivers y otros subsistemas del kernel.
193
¿Para qué sirve '/mnt'?
Punto de montaje temporal para sistemas de archivos montados manualmente por el administrador.
194
¿Qué se monta habitualmente en '/media'?
Puntos de montaje para medios extraíbles (pendrives, CD-ROM, discos externos) que el sistema monta automáticamente.
195
¿Qué se almacena en '/usr'?
La jerarquía secundaria para datos de usuario; contiene la mayoría de las utilidades y aplicaciones multiusuario (lectura).
196
¿Qué tipo de archivos hay en '/usr/include'?
Archivos de cabecera (.h) necesarios para la compilación de programas en C/C++.
197
¿Qué contiene '/usr/share'?
Datos compartidos independientes de la arquitectura (documentación, iconos, diccionarios).
198
¿Qué significa que '/usr' sea tradicionalmente 'shareable' y 'read-only'?
Que su contenido puede compartirse entre varios hosts y no debería ser modificado durante la operación normal.
199
¿Dónde se guardan las páginas de manual de Linux?
En '/usr/share/man'.
200
¿Qué es técnicamente un enlace duro?
Es una entrada adicional en un directorio que apunta al mismo número de inodo que el archivo original.
201
¿Qué comando se usa para crear un enlace duro llamado 'enlace' al archivo 'original'?
ln original enlace
202
¿Qué ocurre con el contador de enlaces del inodo cuando se crea un enlace duro?
Se incrementa en 1.
203
Si borras el archivo original de un enlace duro, ¿qué pasa con el enlace?
Nada. El contenido sigue siendo accesible a través del enlace hasta que el contador llegue a cero.
204
¿Se pueden crear enlaces duros entre diferentes sistemas de archivos (particiones)?
No. Los enlaces duros están limitados a la misma partición porque los números de inodo son locales a cada una.
205
¿Se pueden crear enlaces duros de directorios?
Por regla general no (está prohibido para evitar bucles infinitos en el sistema de archivos).
206
¿Qué sucede si modificas el contenido de un enlace duro?
Se modifica también en el original, ya que ambos apuntan exactamente a los mismos bloques de datos en disco.
207
¿Cómo puedes saber si dos archivos son enlaces duros entre sí?
Comprobando si tienen el mismo número de inodo con 'ls -i'.
208
¿Qué es técnicamente un enlace simbólico?
Es un archivo especial que contiene una cadena de texto con la ruta (absoluta o relativa) hacia otro archivo o directorio.
209
¿Qué comando se usa para crear un enlace simbólico llamado 'acceso' al archivo 'original'?
ln -s original acceso
210
¿Qué ocurre con el contador de enlaces del inodo del archivo original al crear un enlace simbólico?
No cambia. El enlace simbólico tiene su propio inodo independiente.
211
Si borras el archivo original, ¿qué ocurre con el enlace simbólico?
Se convierte en un enlace roto (orphan/broken link) y deja de funcionar.
212
¿Se pueden crear enlaces simbólicos que apunten a archivos en otras particiones o discos?
Sí, sin ningún problema.
213
¿Se pueden crear enlaces simbólicos de directorios?
Sí, es una práctica muy común.
214
¿Cómo se identifica un enlace simbólico en la salida de 'ls -l'?
El primer carácter es una 'l' (ej. lrwxrwxrwx) y suele mostrar una flecha '->' apuntando al destino.
215
¿Qué sucede si borras el enlace simbólico?
Solo se borra el acceso directo; el archivo original permanece intacto.
216
Si un archivo tiene permisos 644 y le creas un enlace duro, ¿qué permisos tendrá el enlace?
644, ya que comparten los metadatos almacenados en el mismo inodo.
217
¿Qué comando permite ver a qué archivo apunta un enlace simbólico?
ls -l o el comando 'readlink'.
218
¿Qué sucede con el contador de enlaces de un directorio recién creado?
Es 2 (el propio nombre del directorio y el '.' dentro de él).
219
¿Por qué el comando 'rm' no borra el archivo realmente, sino que hace un 'unlink'?
Porque solo elimina la referencia del directorio y resta 1 al contador del inodo; el borrado físico solo ocurre cuando el contador llega a 0.
220
¿Cuál es la principal mejora de EXT3 sobre EXT2?
La introducción del Journaling (registro por diario), que acelera la recuperación tras un fallo.
221
¿Qué mejora clave introdujo EXT4 respecto a EXT3?
Soporte para archivos y volúmenes mucho más grandes y el uso de 'extents' para reducir la fragmentación.
222
¿Qué característica define a XFS y por qué se usa en RHEL/CentOS por defecto?
Es un sistema de archivos de alto rendimiento, excelente para archivos de gran tamaño y operaciones en paralelo.
223
¿Cuál es la limitación de tamaño de archivo más crítica en FAT32?
No puede manejar archivos de más de 4GB.
224
¿Qué sistema de archivos de Microsoft es el sucesor de FAT32 y se usa en memorias USB modernas?
exFAT.
225
¿Qué sistema de archivos es el estándar en Windows y es soportado por Linux (aunque a veces requiera ntfs-3g)?
NTFS.
226
¿Qué sistema de archivos de Linux es conocido por sus funciones avanzadas como 'copy-on-write', snapshots y RAID integrado?
Btrfs.
227
¿Qué es el 'Journaling'?
Es un registro que guarda las operaciones pendientes para evitar la corrupción del sistema de archivos si hay un corte de energía.
228
¿Qué sistema de archivos se utiliza habitualmente en las imágenes de CD-ROM?
ISO 9660.
229
¿Qué sistema de archivos virtual permite acceder a archivos en otros servidores a través de la red?
NFS (Network File System).
230
¿Qué comando informa sobre el espacio libre y usado de las particiones montadas?
df (disk free)
231
¿Qué flag de 'df' o 'du' muestra los tamaños en formato legible (KB, MB, GB)?
-h (human-readable)
232
¿Qué comando se usa para estimar el espacio en disco que ocupa un archivo o directorio específico?
du (disk usage)
233
¿Cómo se resumen los resultados de 'du' para ver solo el total de un directorio?
du -sh
234
¿Qué comando se utiliza para comprobar y reparar sistemas de archivos en Linux?
fsck (file system check)
235
¿En qué estado debe estar una partición para que 'fsck' pueda actuar de forma segura sobre ella?
Desmontada (unmounted).
236
¿Qué comando muestra una lista de todos los archivos abiertos por los procesos del sistema?
lsof (list open files)
237
¿Cómo listarías con lsof los archivos abiertos por un usuario específico?
lsof -u nombre_usuario
238
¿Qué comando se usa para formatear una partición con un sistema de archivos específico (ej. ext4)?
mkfs (ej. mkfs.ext4 /dev/sdb1)
239
¿Qué comando permite ver la etiqueta (LABEL) y el UUID de las particiones del sistema?
blkid
240
¿Qué comando se usa para conectar un sistema de archivos a un punto de montaje en la jerarquía del FHS?
mount
241
¿Cuál es la sintaxis básica para montar una partición /dev/sdb1 en /mnt/disco?
mount /dev/sdb1 /mnt/disco
242
¿Qué comando desconecta de forma segura un sistema de archivos?
umount
243
¿Qué error común impide que 'umount' funcione?
Que el dispositivo esté 'busy' (un proceso o el propio usuario están dentro del punto de montaje).
244
¿Qué fichero de configuración contiene la información de los sistemas de archivos que se montan automáticamente al arrancar?
/etc/fstab
245
¿Cuáles son los 6 campos que componen una línea en /etc/fstab?
Dispositivo, Punto de montaje, Tipo de FS, Opciones, Dump (copia), Pass (orden de fsck).
246
En /etc/fstab, ¿qué indica un '0' en el sexto campo (Pass)?
Que no se debe realizar un chequeo con fsck en ese dispositivo.
247
¿Qué fichero del sistema contiene la lista de los sistemas de archivos montados actualmente en tiempo real?
/etc/mtab
248
¿Cuál es la diferencia principal entre /etc/fstab y /etc/mtab?
fstab es de configuración (lo que debería montarse); mtab es de estado (lo que está montado).
249
¿Qué comando monta todos los dispositivos indicados en el fstab que tengan la opción 'auto'?
mount -a
250
¿Qué es el VFS (Virtual File System) en Linux?
Es una capa de abstracción del kernel que permite a las aplicaciones comunicarse con diferentes sistemas de archivos de forma uniforme.
251
¿Cuál es la principal ventaja del VFS?
Que el usuario y las aplicaciones pueden usar los mismos comandos (read, write) sin importar si el disco es ext4, NTFS o un recurso de red.
252
¿Cómo gestiona el VFS la relación entre archivos y procesos?
Mediante estructuras de datos como el Inodo Virtual (vnode) y la Tabla de Archivos Abiertos.
253
¿Qué componente del kernel traduce las llamadas del VFS al lenguaje específico de cada sistema de archivos?
El driver del sistema de archivos específico.
254
¿En qué nivel del modelo de capas reside el VFS?
Entre las llamadas al sistema (System Calls) y los sistemas de archivos concretos.
255
¿Por qué se dice que el VFS es orientado a objetos?
Porque trata a cada sistema de archivos como un objeto con un conjunto de métodos (funciones) estándar.
256
¿Qué es el dentry (directory entry) cache en el contexto del VFS?
Es una caché en memoria que acelera la traducción de rutas de archivos a inodos.
257
¿Permite el VFS montar un sistema de archivos dentro de otro?
Sí, es la base de la jerarquía unificada de directorios de Linux.
258
¿Qué sucede si el kernel no tiene el módulo/driver para un FS específico en el VFS?
El comando 'mount' fallará indicando que el tipo de sistema de archivos es desconocido.
259
¿Qué sistemas de archivos 'especiales' son gestionados íntegramente por el VFS y no existen en disco?
/proc, /sys y tmpfs.
260
¿Cuál es la función principal de SAMBA?
Permitir la interoperabilidad entre sistemas Linux y Windows, compartiendo archivos e impresoras mediante el protocolo SMB/CIFS.
261
¿Cuál es el archivo principal de configuración de SAMBA?
/etc/samba/smb.conf
262
¿Qué comando se utiliza para verificar la sintaxis del archivo smb.conf y detectar errores?
testparm
263
¿Cómo se llama el demonio (servicio) de SAMBA encargado de la gestión de archivos e impresión?
smbd
264
¿Cómo se llama el demonio de SAMBA encargado de la resolución de nombres NetBIOS?
nmbd
265
¿Qué es NFS (Network File System)?
Un protocolo que permite montar directorios de un servidor remoto en un cliente local como si fueran discos físicos, típico en entornos Linux/Unix.
266
¿En qué archivo del servidor NFS se definen los directorios que se quieren compartir y con qué permisos?
/etc/exports
267
¿Qué comando debe ejecutarse en el servidor NFS tras modificar el archivo /etc/exports para aplicar los cambios?
exportfs -a
268
¿Cuál es la principal ventaja de NFS frente a SAMBA en entornos puramente Linux?
Mejor rendimiento y una integración más natural con los permisos de usuario (UID/GID) y atributos de Linux.
269
¿Qué comando se usa en el cliente para ver qué recursos compartidos ofrece un servidor NFS remoto?
showmount -e [IP_del_servidor]
270
¿Qué es una librería estática?
Es una colección de rutinas que se copian e integran físicamente en el archivo ejecutable durante la fase de enlazado (linkado).
271
¿Qué extensión suelen tener las librerías estáticas en Linux?
.a (archive)
272
¿Cuál es la principal ventaja de un ejecutable enlazado estáticamente?
Es autónomo y portable, ya que no depende de que las librerías estén instaladas en el sistema de destino.
273
¿Cuál es la principal desventaja de las librerías estáticas?
Aumentan el tamaño del ejecutable y requieren volver a compilar todo el programa si la librería se actualiza.
274
¿Qué es una librería dinámica (o compartida)?
Es una librería que no se integra en el ejecutable; el programa solo guarda una referencia y la carga en memoria cuando se ejecuta.
275
¿Qué extensión suelen tener las librerías dinámicas en Linux?
.so (Shared Object)
276
¿Qué ventaja ofrecen las librerías dinámicas respecto al uso de memoria RAM?
Varios programas pueden compartir la misma copia de la librería cargada en memoria, ahorrando recursos.
277
¿Cómo ayuda el uso de librerías dinámicas al mantenimiento del software?
Permite actualizar la librería (ej. para corregir un bug de seguridad) sin necesidad de recompilar todos los programas que la usan.
278
¿Qué componente del sistema operativo se encarga de cargar las librerías dinámicas necesarias cuando lanzamos un programa?
El cargador dinámico (dynamic linker/loader), habitualmente ld-linux.so.
279
¿Qué sucede si un ejecutable dinámico no encuentra una librería .so necesaria al arrancar?
El programa no se ejecutará y mostrará un error de 'error while loading shared libraries'.
280
¿Para qué sirve el comando 'ldd'?
Para listar las librerías compartidas (dinámicas) de las que depende un archivo ejecutable o otra librería.
281
¿Qué significa la salida 'not found' en un comando ldd?
Que el cargador dinámico no ha podido localizar la librería en las rutas estándar del sistema.
282
¿En qué archivo de configuración se definen las rutas adicionales donde el sistema debe buscar librerías dinámicas?
/etc/ld.so.conf (y los ficheros dentro de /etc/ld.so.conf.d/).
283
¿Qué comando se debe ejecutar tras instalar una nueva librería o modificar las rutas en /etc/ld.so.conf?
ldconfig
284
¿Qué hace exactamente el comando 'ldconfig'?
Actualiza los enlaces simbólicos de las librerías y reconstruye el archivo de caché /etc/ld.so.cache para acelerar la carga.
285
¿Qué variable de entorno permite añadir rutas de búsqueda de librerías de forma temporal para un usuario o sesión?
LD_LIBRARY_PATH
286
¿Qué comando se utiliza para crear o gestionar archivos de librería estática (.a)?
ar (archiver)
287
¿Qué comando permite ver los símbolos (funciones y variables) contenidos en una librería o ejecutable?
nm
288
¿Qué diferencia hay entre una librería .so y una .so.1.2?
La primera suele ser un enlace simbólico a la versión específica (la segunda) para facilitar las actualizaciones sin romper enlaces.
289
¿Dónde se encuentran típicamente las librerías estándar del sistema según el FHS?
/lib, /usr/lib y /usr/local/lib.
290
¿Qué hace el comando 'ps' (process status)?
Muestra una instantánea (estática) de los procesos actuales en ejecución.
291
En 'ps', ¿qué significan los flags 'aux' (estilo BSD)?
a: procesos de todos los usuarios, u: muestra el usuario/dueño, x: procesos sin terminal asociada (demonios).
292
¿Qué comando muestra una vista dinámica y en tiempo real de los procesos y el uso de recursos?
top
293
En 'top', ¿qué tecla se pulsa para ordenar los procesos por uso de memoria?
M (Mayúscula).
294
¿Qué comando muestra la jerarquía de procesos en forma de árbol?
pstree
295
¿Qué es el PID?
Process ID: un identificador único numérico que el kernel asigna a cada proceso.
296
¿Qué es el PPID?
Parent Process ID: el PID del proceso padre que creó al proceso actual.
297
¿Cuál es el proceso con PID 1 y cuál es su función?
systemd (o init en sistemas antiguos). Es el antecesor de todos los demás procesos del sistema.
298
En la columna STAT de 'ps', ¿qué indica el estado 'Z'?
Zombie: el proceso ha terminado pero su padre aún no ha leído su código de salida, ocupando una entrada en la tabla de procesos.
299
¿Qué indica el estado 'S' en un proceso?
Interruptible Sleep: el proceso está esperando a que ocurra un evento o una señal.
300
¿Qué es el valor 'NI' (niceness) de un proceso?
Es un valor que indica la prioridad de planificación del proceso. Rango de -20 (máxima prioridad) a 19 (mínima prioridad).
301
Si lanzas un comando con 'nice -n 10 comando', ¿qué prioridad le estás dando?
Una prioridad menor (es más 'bueno' con los demás procesos y les deja más tiempo de CPU).
302
¿Cuál es el valor nice por defecto de un proceso al iniciarse?
0
303
¿Qué comando permite cambiar la prioridad de un proceso que ya está en ejecución?
renice
304
¿Quién es el único usuario que puede asignar valores de nice negativos (alta prioridad)?
El superusuario root.
305
¿Para qué sirve el comando 'nohup'?
Para ejecutar un comando de forma que siga corriendo tras cerrar la terminal o sesión (ignora la señal SIGHUP).
306
¿Dónde se guarda por defecto la salida de un comando ejecutado con 'nohup' si no se redirecciona?
En un archivo llamado 'nohup.out'.
307
¿Qué símbolo se añade al final de un comando para ejecutarlo en segundo plano (background)?
El símbolo '&'.
308
¿Qué hace el comando 'kill' por defecto?
Envía una señal a un proceso (por defecto la señal SIGTERM o 15) para pedirle que termine.
309
¿Cuál es el número de la señal SIGKILL y qué efecto tiene?
9. Termina el proceso de forma inmediata y forzosa; el proceso no puede ignorarla ni limpiar recursos.
310
¿Cuál es el número de la señal SIGHUP y cuándo se envía?
1. Se envía cuando se cierra la terminal que controla el proceso o para pedir a un demonio que recargue su configuración.
311
¿Qué señal envía la combinación de teclas Ctrl+C?
SIGINT (2) - Interrupt.
312
¿Qué señal envía la combinación de teclas Ctrl+Z?
SIGTSTP (20) - Terminal Stop (suspende el proceso).
313
¿Qué diferencia hay entre 'kill' y 'killall'?
'kill' usa el PID del proceso, mientras que 'killall' usa el nombre del proceso para matar todas sus instancias.
314
¿Qué comando permite enviar señales basándose en criterios como el nombre del usuario o el nombre completo del comando?
pkill
315
¿Qué información proporciona el comando 'vmstat'?
Estadísticas sobre procesos, memoria, swap, E/S de bloques, interrupciones y actividad de la CPU.
316
En 'vmstat', ¿qué indican las columnas 'si' y 'so'?
swap-in y swap-out: cantidad de memoria intercambiada desde/hacia el disco (un valor alto indica falta de RAM).
317
¿Qué es la llamada al sistema 'fork()'?
Es la operación mediante la cual un proceso crea una copia exacta de sí mismo (el proceso hijo).
318
¿Qué es una 'fork bomb'?
Un ataque de denegación de servicio donde un proceso se replica infinitamente mediante fork() hasta agotar los recursos del sistema.
319
Tras un 'fork()', ¿cómo distingue el programa si es el proceso padre o el hijo?
Por el valor de retorno: el hijo recibe 0, el padre recibe el PID del hijo.
320
¿Cuál es el número y la función de la señal SIGHUP?
Número 1. Se envía cuando se pierde la conexión con la terminal. Muchos demonios la usan para recargar su configuración sin detenerse.
321
¿Cuál es el número y la función de la señal SIGINT?
Número 2. Interrupción desde teclado (habitualmente generada con Ctrl+C).
322
¿Cuál es el número y la función de la señal SIGQUIT?
Número 3. Similar a SIGINT, pero suele generar un volcado de memoria (core dump) y se lanza con Ctrl+\.
323
¿Cuál es el número y la función de la señal SIGKILL?
Número 9. Terminación forzosa inmediata. El proceso no puede capturarla, ignorarla ni realizar tareas de limpieza.
324
¿Cuál es el número y la función de la señal SIGTERM?
Número 15. Es la señal por defecto de 'kill'. Pide al proceso que termine educadamente, permitiéndole guardar datos y cerrar archivos.
325
¿Cuál es el número y la función de la señal SIGCONT?
Número 18. Reanuda un proceso que ha sido previamente detenido (stop).
326
¿Cuál es el número y la función de la señal SIGSTOP?
Número 19. Detiene (pausa) la ejecución del proceso. Al igual que SIGKILL, no puede ser ignorada ni capturada.
327
¿Cuál es el número y la función de la señal SIGTSTP?
Número 20. Petición de parada enviada desde la terminal (habitualmente con Ctrl+Z).
328
¿Qué señales NO pueden ser interceptadas, bloqueadas ni ignoradas por un proceso?
SIGKILL (9) y SIGSTOP (19).
329
¿Qué sucede si un proceso recibe una señal que no tiene programada para manejar (trap)?
Se ejecuta la acción por defecto del sistema, que generalmente es terminar el proceso.
330
¿Qué comando se utiliza dentro de un script de Shell para capturar una señal y ejecutar una función específica?
El comando 'trap'.
331
¿Qué diferencia fundamental hay entre SIGTERM y SIGKILL?
SIGTERM (15) es una petición de salida limpia; SIGKILL (9) es una orden de ejecución inmediata por parte del Kernel.
332
¿Cómo se enviaría la señal de 'parada' (stop) al proceso con PID 1234?
kill -19 1234 (o kill -STOP 1234).
333
¿Qué señal se envía automáticamente a los procesos hijos cuando el proceso padre termina?
SIGHUP (1), a menos que se use 'nohup' o se gestione la desvinculación.
334
¿Qué comando permite listar todas las señales disponibles en el sistema con sus nombres y números?
kill -l
335
¿Qué comando muestra la lista de trabajos (jobs) que se están ejecutando en la sesión actual de la terminal?
jobs
336
¿Qué símbolo se añade al final de un comando para ejecutarlo directamente en segundo plano (background)?
&
337
¿Qué comando se utiliza para traer un proceso que está en segundo plano al primer plano (foreground)?
fg %número_de_job
338
¿Qué hace el comando 'bg'?
Reanuda en segundo plano un proceso que estaba detenido (suspendido).
339
¿Qué combinación de teclas suspende (detiene) un proceso que está en ejecución para poder enviarlo al fondo con 'bg'?
Ctrl + Z
340
Si al ejecutar 'jobs' ves un '+', ¿qué significa?
Indica que es el trabajo predeterminado al que afectarán 'fg' o 'bg' si no se especifica un número.
341
¿Cuál es la diferencia entre un proceso en 'background' y uno 'detenido' (stopped)?
El proceso en background sigue consumiendo CPU y ejecutándose; el detenido está pausado por el kernel.
342
¿Qué es STDIN y cuál es su número de descriptor de archivo asociado?
Standard Input (Entrada estándar). Su número es 0 (por defecto el teclado).
343
¿Qué es STDOUT y cuál es su número de descriptor de archivo asociado?
Standard Output (Salida estándar). Su número es 1 (por defecto la pantalla).
344
¿Qué es STDERR y cuál es su número de descriptor de archivo asociado?
Standard Error (Error estándar). Su número es 2 (por defecto la pantalla).
345
¿Para qué sirve el operador '>'?
Redirige la salida estándar (STDOUT) a un archivo, sobrescribiendo su contenido si ya existía.
346
¿Para qué sirve el operador '>>'?
Redirige la salida estándar (STDOUT) a un archivo, pero añade (append) el contenido al final sin borrar lo anterior.
347
¿Cómo se redirige específicamente solo el error estándar (STDERR) a un archivo?
Mediante '2>' (ej. comando 2> errores.log).
348
¿Qué operador se usa para redirigir la entrada estándar (STDIN) desde un archivo en lugar del teclado?
El operador '<' (ej. comando < datos.txt).
349
¿Qué es un 'Pipe' o tubería (|)?
Un operador que conecta la salida estándar (STDOUT) de un comando con la entrada estándar (STDIN) del siguiente.
350
¿Cómo se redirigen tanto la salida estándar como el error estándar al mismo archivo?
Usando '&>' o '2>&1' (ej. comando > archivo 2>&1).
351
¿Qué significa '2>&1'?
Significa 'redirige el error (2) al mismo lugar al que apunta la salida estándar (1)'.
352
¿Qué es /dev/null?
Es un archivo especial (agujero negro) que descarta toda la información que se le envía. Se usa para silenciar salidas.
353
¿Cómo silenciarías por completo un comando para que no muestre ni mensajes normales ni errores?
comando > /dev/null 2>&1
354
¿Qué es el 'Here Document' (<<)?
Una redirección que permite pasar un bloque de texto multilínea a la entrada estándar de un comando hasta encontrar una palabra clave.
355
¿Para qué sirve el comando 'tee'?
Lee la entrada estándar y la escribe simultáneamente en la salida estándar y en uno o más archivos (permite ver y guardar a la vez).
356
¿Cómo usarías 'tee' para añadir contenido a un archivo sin sobrescribirlo?
tee -a (append).
357
¿Qué sucede si intentas redirigir con '>' a un archivo donde no tienes permisos de escritura?
La shell devolverá un error de 'Permission denied' y el comando no se ejecutará.
358
¿Qué operador redirige el contenido de una cadena de texto directamente a la entrada de un comando (Here String)?
El operador '<<<' (ej. bc <<< '5+5').
359
¿En qué directorio del sistema se pueden ver los descriptores de archivos abiertos de un proceso (ej. PID 1234)?
/proc/1234/fd/
360
¿Qué hace el comando 'cat' y para qué se usa comúnmente?
Concatenate: muestra el contenido de uno o varios archivos de forma secuencial en la salida estándar.
361
¿Qué modificador de 'cat' muestra el número de línea en cada línea de salida?
cat -n
362
¿Qué diferencia hay entre 'cat -n' y el comando 'nl'?
'nl' numera solo las líneas que no están vacías por defecto, mientras que 'cat -n' numera todas.
363
¿Qué hace el comando 'head' y cuántas líneas muestra por defecto?
Muestra las primeras líneas de un archivo. Por defecto muestra las 10 primeras.
364
¿Cómo mostrarías exactamente las primeras 15 líneas de un archivo con 'head'?
head -n 15 archivo
365
¿Qué hace el comando 'tail' y cuál es su uso más común en administración?
Muestra las últimas líneas de un archivo. Se usa para monitorizar logs.
366
¿Qué flag de 'tail' permite ver en tiempo real cómo se añaden nuevas líneas a un archivo (seguimiento)?
tail -f (follow)
367
¿Cuál es la diferencia principal entre 'more' y 'less'?
'more' solo permite avanzar, mientras que 'less' permite navegar hacia adelante y hacia atrás y es más eficiente con archivos grandes.
368
¿Cuál es la función principal de 'grep'?
Buscar patrones (expresiones regulares) dentro de archivos o en la entrada estándar.
369
¿Qué modificador de 'grep' ignora la diferencia entre mayúsculas y minúsculas?
grep -i (ignore-case)
370
¿Qué modificador de 'grep' muestra las líneas que NO coinciden con el patrón?
grep -v (invert-match)
371
¿Cómo contarías cuántas líneas contienen una palabra específica usando solo grep?
grep -c (count) palabra archivo
372
¿Qué modificador de 'grep' muestra el número de línea donde se encontró la coincidencia?
grep -n
373
¿Qué diferencia hay entre 'grep', 'egrep' y 'fgrep'?
'grep' usa RE básicas, 'egrep' (-E) usa RE extendidas y 'fgrep' (-F) busca cadenas fijas (más rápido).
374
¿Qué es 'sed' y para qué se utiliza principalmente?
Stream Editor: se usa para transformar texto (buscar y reemplazar, borrar líneas) de forma no interactiva.
375
¿Cuál es la sintaxis de 'sed' para reemplazar la palabra 'rojo' por 'azul' en todo un archivo?
sed 's/rojo/azul/g' archivo
376
En 'sed', ¿qué hace el comando 'd' (ej. 'sed 1d archivo')?
Borra (delete) la línea especificada (en el ejemplo, la primera línea).
377
¿Para qué sirve el comando 'cut'?
Para extraer secciones (columnas) de cada línea de un archivo.
378
En 'cut', ¿qué significan los modificadores -d y -f?
-d especifica el delimitador (ej. ':') y -f especifica el número de campo o columna.
379
¿Cómo extraerías el nombre de usuario (primer campo) del archivo /etc/passwd?
cut -d: -f1 /etc/passwd
380
¿Qué hace el comando 'sort'?
Ordena las líneas de un archivo de texto (por defecto alfabéticamente).
381
¿Cómo ordenarías un archivo numéricamente con 'sort' (para que 10 no vaya antes que 2)?
sort -n
382
¿Qué hace el comando 'uniq' y cuál es su requisito previo?
Elimina líneas duplicadas consecutivas. El archivo DEBE estar ordenado previamente con 'sort'.
383
¿Qué modificador de 'uniq' muestra cuántas veces aparece cada línea?
uniq -c (count)
384
¿Para qué sirve el comando 'tr'?
Translate: traduce o borra caracteres de la entrada estándar (no acepta archivos como argumento directo).
385
¿Cómo convertirías todas las minúsculas a mayúsculas usando 'tr'?
tr '[:lower:]' '[:upper:]'
386
¿Cómo borrarías todos los dígitos de un texto con 'tr'?
tr -d '[:digit:]'
387
¿Qué información proporciona el comando 'wc' (word count) por defecto?
Líneas, palabras y caracteres (bytes).
388
¿Cómo contarías únicamente el número de líneas de un archivo?
wc -l
389
¿Qué hace el comando 'split'?
Divide un archivo grande en archivos más pequeños de un tamaño o número de líneas determinado.
390
¿Cuál es el prefijo por defecto de los archivos generados por 'split'?
'x' (ej. xaa, xab, xac...)
391
¿Cómo dividirías un archivo en trozos de 1000 líneas cada uno?
split -l 1000 archivo
392
¿Para qué sirve el comando 'stat' en comparación con 'wc'?
'stat' da metadatos del archivo (inodo, fechas), mientras que 'wc' analiza el contenido.
393
¿Qué significa el símbolo '^' (circunflejo) en una expresión regular?
Indica el inicio de una línea (ej. '^Hola' busca líneas que empiecen por Hola).
394
¿Qué significa el símbolo '$' (dólar) en una expresión regular?
Indica el final de una línea (ej. 'final$' busca líneas que terminen en la palabra final).
395
¿Qué representa el punto '.' en Regex?
Representa cualquier carácter individual, excepto el salto de línea.
396
¿Cómo buscarías un punto literal si el punto es un metacarácter?
Escapándolo con una barra invertida: '\.'.
397
¿Qué significa la expresión '^$'?
Busca líneas vacías (inicio seguido inmediatamente de fin).
398
¿Qué significa el asterisco '*' en una expresión regular?
Indica que el carácter anterior aparece cero o más veces.
399
¿Cuál es la diferencia entre el '*' y el '+'?
El '*' es 0 o más veces; el '+' (en ERE) es 1 o más veces.
400
¿Qué significa el signo de interrogación '?' en Regex Extendidas?
Indica que el carácter anterior es opcional (aparece 0 o 1 vez).
401
¿Cómo se define un rango específico de repeticiones (ej. entre 2 y 4 veces)?
Usando llaves: '{2,4}' (En BRE requiere escapar: '\{2,4\}').
402
¿Para qué sirven los corchetes '[ ]'?
Definen una clase de caracteres: coincide con cualquier carácter contenido en ellos (ej. '[aeiou]' busca vocales).
403
¿Qué hace el circunflejo dentro de unos corchetes '[^abc]'?
Funciona como negación: coincide con cualquier carácter que NO sea ni 'a', ni 'b', ni 'c'.
404
¿Qué significa la tubería '|' en Regex Extendidas?
Funciona como el operador lógico OR (alternancia). Ej: 'gato|perro' busca una u otra palabra.
405
¿Qué representan '[[:digit:]]' o '\d'?
Cualquier dígito numérico del 0 al 9.
406
¿Qué representan '[[:alpha:]]'?
Cualquier carácter alfabético (letras).
407
¿Cómo se agrupan expresiones para aplicarles un cuantificador común?
Usando paréntesis: '(abc)+' buscará 'abc', 'abcabc', etc.
408
¿Cuál es la función principal del demonio cron?
Ejecutar comandos o scripts de forma programada y periódica en intervalos de tiempo definidos.
409
¿Qué comando se usa para editar el archivo cron del usuario actual?
crontab -e
410
¿Qué comando muestra el contenido del archivo crontab del usuario sin editarlo?
crontab -l
411
¿Qué comando elimina todas las tareas programadas en el crontab del usuario?
crontab -r
412
¿Qué usuario puede editar el crontab de otros usuarios con el flag '-u'?
El superusuario root.
413
¿Cuál es el orden de los 5 campos temporales en una línea de crontab?
Minuto, Hora, Día del mes, Mes, Día de la semana (M H D M D).
414
En un crontab, ¿qué valor representa el asterisco (*)?
Representa 'todos' (ej. un * en el campo de hora significa 'cada hora').
415
¿Cómo se especifica en crontab que una tarea se ejecute cada 15 minutos?
*/15 * * * *
416
¿Qué significan los valores 0 y 7 en el quinto campo (día de la semana)?
Ambos representan el domingo.
417
¿Dónde se almacenan físicamente los archivos crontab de los usuarios normales?
/var/spool/cron/crontabs/ (en Debian/Ubuntu) o /var/spool/cron/ (en RHEL/CentOS).
418
¿Cuál es la diferencia principal entre el crontab de usuario y /etc/crontab?
/etc/crontab tiene un campo adicional para especificar el usuario que ejecuta el comando.
419
¿Cuál es el orden de campos en /etc/crontab (fichero de sistema)?
Minuto, Hora, Día, Mes, Día_Semana, USUARIO, Comando.
420
¿Para qué sirve el directorio /etc/cron.d/?
Para almacenar archivos de configuración de cron modulares, ideal para paquetes de software que instalan tareas propias.
421
¿Qué son los directorios cron.daily, cron.weekly y cron.monthly?
Directorios que contienen scripts que se ejecutan una vez al día, semana o mes respectivamente.
422
¿Qué sucede si el ordenador está apagado a la hora que debe ejecutarse un cron?
La tarea se pierde y no se ejecutará hasta la próxima vez que coincida la hora (a menos que se use anacron).
423
¿Qué es 'anacron'?
Un servicio complementario a cron que asegura que las tareas diarias, semanales o mensuales se ejecuten aunque el sistema haya estado apagado.
424
¿Qué ficheros controlan qué usuarios pueden o no pueden usar crontab?
/etc/cron.allow y /etc/cron.deny.
425
Si existen ambos ficheros (allow y deny), ¿cuál tiene prioridad?
Tiene prioridad /etc/cron.allow (solo los que estén ahí podrán usarlo).
426
Si no existe ninguno de los dos archivos, ¿quién puede usar cron?
Depende de la distribución, pero generalmente todos los usuarios o solo root.
427
¿A dónde se envía por defecto la salida (stdout/stderr) de una tarea de cron?
Se envía por correo electrónico local al usuario dueño de la tarea (a menos que se redirija).
428
¿Cómo evitarías que cron envíe correos electrónicos para una tarea específica?
Redirigiendo la salida a /dev/null (ej. comando > /dev/null 2>&1).
429
¿Cuál es la diferencia principal entre 'cron' y 'at'?
'cron' es para tareas periódicas (recurrentes); 'at' es para ejecutar una tarea una sola vez en el futuro.
430
¿Qué comando se usa para listar las tareas pendientes de ejecución programadas con at?
atq (o at -l)
431
¿Qué comando se usa para eliminar una tarea programada con at mediante su número de ID?
atrm (o at -d)
432
¿Cómo se pasan los comandos a ejecutar al comando 'at'?
A través de la entrada estándar (ej. echo 'sh script.sh' | at 14:00) o de forma interactiva.
433
¿Qué ficheros controlan el acceso al comando at?
/etc/at.allow y /etc/at.deny.
434
¿Qué es la BIOS (Basic Input/Output System)?
Firmware heredado (legacy) que inicializa el hardware y busca el gestor de arranque en el primer sector del disco.
435
¿Cuál es la principal limitación de la BIOS respecto al hardware moderno?
Solo puede ejecutarse en modo de 16 bits y tiene acceso limitado a la memoria (1 MB).
436
¿Qué es UEFI (Unified Extensible Firmware Interface)?
El sucesor moderno de la BIOS. Es un pequeño sistema operativo que maneja el pre-arranque con soporte para 32/64 bits.
437
¿Qué ventaja ofrece UEFI respecto al tiempo de arranque?
Permite la inicialización en paralelo de dispositivos, lo que acelera el inicio del sistema.
438
¿Qué es el 'Secure Boot' en sistemas UEFI?
Una característica de seguridad que permite que solo se carguen cargadores de arranque y drivers firmados digitalmente.
439
¿Qué permite el modo 'CSM' (Compatibility Support Module) en una placa con UEFI?
Permite que una placa UEFI arranque sistemas operativos antiguos que solo soportan BIOS/MBR.
440
¿Dónde se almacenan los cargadores de arranque en un sistema UEFI?
En una partición especial llamada ESP (EFI System Partition), formateada normalmente en FAT32.
441
¿Qué significa MBR y dónde se aloja físicamente?
Master Boot Record. Se encuentra en los primeros 512 bytes del disco duro.
442
¿Cuál es el número máximo de particiones primarias que permite MBR?
4 particiones primarias.
443
¿Cómo se supera el límite de 4 particiones en un disco MBR?
Convirtiendo una de las primarias en una 'partición extendida', que puede contener múltiples 'unidades lógicas'.
444
¿Cuál es el límite máximo de capacidad de disco que puede gestionar MBR?
2 Terabytes (TB).
445
¿Qué significa GPT y a qué estándar pertenece?
GUID Partition Table. Forma parte del estándar UEFI.
446
¿Cuál es el límite de particiones en GPT bajo Windows/Linux?
Teóricamente ilimitado, aunque Windows lo limita por defecto a 128 particiones.
447
¿Cuál es el límite de capacidad de almacenamiento en un disco GPT?
9.4 Zettabytes (prácticamente ilimitado para la tecnología actual).
448
¿Qué es el 'Protective MBR' en un disco GPT?
Un sector MBR ficticio al inicio del disco GPT para evitar que herramientas antiguas piensen que el disco está vacío y lo borren.
449
¿Por qué GPT es más robusto que MBR frente a la corrupción de datos?
Porque GPT guarda copias de seguridad de la tabla de particiones al final del disco; MBR solo tiene una copia al principio.
450
¿Cómo verifica GPT la integridad de su tabla de particiones?
Utilizando sumas de verificación CRC32.
451
¿Qué esquema de particionado se requiere obligatoriamente para arrancar Windows en modo UEFI de 64 bits?
GPT.
452
¿Qué comando en Linux permite ver si un disco usa MBR (dos) o GPT?
fdisk -l o parted -l.
453
¿Cómo se identifica un disco GPT en la salida de 'fdisk'?
En la columna 'Disklabel type' aparecerá 'gpt' en lugar de 'dos'.
454
¿Qué es el GUID en el contexto de GPT?
Globally Unique Identifier: un identificador único de 128 bits para cada partición del mundo.
455
¿Puede un sistema BIOS (no UEFI) arrancar desde un disco GPT?
Generalmente no, a menos que el cargador de arranque (como GRUB2) esté configurado de forma muy específica.
456
¿Qué ocurre con el código de arranque en GPT?
A diferencia de MBR, GPT no almacena el código de arranque; este reside en la partición EFI (ESP).
457
¿En qué partición se suelen guardar los archivos .efi del cargador de arranque?
En la partición del sistema EFI (formato FAT32, tipo de partición EF00).
458
¿Cuál es el primer paso del hardware al encenderse (tanto en BIOS como en UEFI)?
El POST (Power-On Self-Test): verifica que la CPU, RAM y hardware básico funcionen.
459
Tras el POST en una BIOS, ¿qué busca el firmware para arrancar?
Busca el MBR (Master Boot Record) en el primer sector del dispositivo de arranque definido.
460
¿Qué contiene el MBR (primeros 512 bytes) en el proceso de arranque?
El cargador de arranque de etapa 1 (stage 1 bootloader), la tabla de particiones y la firma de arranque.
461
¿Cuál es la función del 'Stage 1' del cargador de arranque (ej. GRUB)?
Localizar y cargar el 'Stage 2' (o una etapa intermedia), ya que el MBR es demasiado pequeño para contener todo el cargador.
462
¿Dónde se aloja normalmente el resto del cargador de arranque (Stage 2) en BIOS?
En el espacio entre el MBR y la primera partición, o dentro de una partición específica.
463
¿Qué componente toma el control inmediatamente después del cargador de arranque?
El Kernel (núcleo) del sistema operativo.
464
¿En qué se diferencia el inicio de UEFI respecto al MBR de la BIOS?
UEFI no busca un sector de arranque físico; busca un archivo ejecutable (.efi) en una partición lógica (ESP).
465
¿Qué es la ESP (EFI System Partition) y qué formato debe tener?
Es una partición dedicada a los cargadores de arranque. Debe estar formateada en FAT32.
466
¿Qué ventaja ofrece el arranque UEFI sobre el BIOS en cuanto al Kernel?
UEFI puede cargar el Kernel directamente si este tiene activado el 'EFI Stub', sin necesidad de un gestor de arranque intermedio.
467
¿Qué es el 'Boot Manager' de la UEFI?
Es una utilidad integrada en el firmware que permite elegir entre diferentes archivos .efi (diferentes SO) sin depender de GRUB.
468
¿Cuál es la ruta estándar para el cargador de arranque por defecto en la ESP?
/EFI/BOOT/BOOTX64.EFI
469
¿Qué papel juega el 'NVRAM' en el arranque UEFI?
Almacena las variables de arranque que indican al firmware qué archivos .efi cargar y en qué orden.
470
¿Qué es el 'initrd' o 'initramfs'?
Un sistema de archivos temporal cargado en RAM que contiene los drivers necesarios para que el Kernel pueda montar la partición raíz real.
471
¿Cuál es el primer proceso que lanza el Kernel una vez montado el sistema de archivos raíz?
El proceso 'init' (actualmente systemd en la mayoría de distros), que siempre tiene el PID 1.
472
¿Cuál es la función de 'systemd' en el proceso de arranque?
Lanzar los servicios (units), gestionar dependencias y llevar al sistema al 'target' (nivel de ejecución) definido.
473
¿Qué archivo suele contener los parámetros que el cargador de arranque le pasa al Kernel?
En GRUB2, se configuran en /etc/default/grub y se generan en /boot/grub/grub.cfg.
474
¿Qué parámetro del Kernel oculta los mensajes de arranque y muestra una pantalla de carga?
El parámetro 'quiet splash'.
475
¿En qué fase del arranque se montan los sistemas de archivos definidos en /etc/fstab?
Durante la fase de usuario, gestionada por systemd tras cargar el Kernel.
476
¿Qué comando permite analizar el tiempo que ha tardado cada servicio en cargar durante el boot?
systemd-analyze blame
477
¿Qué es un 'Kernel Panic'?
Un error crítico del que el Kernel no puede recuperarse durante el arranque, deteniendo el sistema por completo.
478
¿Qué es un 'Runlevel' en el sistema tradicional SysVinit?
Un estado del sistema que define qué servicios están activos (ej. monousuario, multiusuario, gráfico).
479
¿Qué hace el Runlevel 0?
Apaga el sistema (Halt).
480
¿Qué hace el Runlevel 1 (o 'S')?
Modo monousuario (mantenimiento), sin red y solo root.
481
¿Qué hacen los Runlevels 2, 3 y 4?
Modo multiusuario en modo texto. El 2 suele ser sin red en algunas distros y el 3 con red.
482
¿Qué hace el Runlevel 5?
Modo multiusuario con entorno gráfico (X11/Wayland).
483
¿Qué hace el Runlevel 6?
Reinicia el sistema (Reboot).
484
¿En qué archivo se configuraba históricamente el runlevel por defecto?
/etc/inittab
485
¿Qué comando se usa para ver el runlevel actual y el anterior?
runlevel
486
¿Qué comando permite cambiar de runlevel de forma inmediata (ej. pasar al 3)?
init 3 (o telinit 3)
487
¿Dónde se guardan los scripts de inicio en SysVinit?
En /etc/init.d/.
488
¿Qué es systemd en comparación con init?
Es un sistema de gestión de sistema y servicios que reemplaza a init, permitiendo la carga paralela de servicios y el uso de 'units'.
489
¿Qué es un 'Target' en systemd?
Es el equivalente a un runlevel; un punto de sincronización que agrupa varias unidades (servicios) que deben estar activas.
490
¿Cuál es el target equivalente al Runlevel 3 (multiusuario texto)?
multi-user.target
491
¿Cuál es el target equivalente al Runlevel 5 (gráfico)?
graphical.target
492
¿Cuál es el target equivalente al modo rescate o monousuario?
rescue.target
493
¿Qué comando muestra el target configurado por defecto al arrancar?
systemctl get-default
494
¿Qué comando se usa para cambiar el target por defecto permanentemente?
systemctl set-default nombre.target
495
¿Cómo se cambia al target gráfico en la sesión actual sin reiniciar?
systemctl isolate graphical.target
496
¿Qué es una 'Unit' en systemd?
Cualquier recurso que systemd sabe gestionar (servicios .service, puntos de montaje .mount, dispositivos .device, etc.).
497
¿Qué comando se usa para iniciar un servicio inmediatamente?
systemctl start nombre
498
¿Qué comando hace que un servicio se inicie automáticamente en el arranque?
systemctl enable nombre
499
¿Qué diferencia hay entre 'stop' y 'disable' en systemctl?
'stop' detiene el servicio ahora; 'disable' evita que se inicie automáticamente en el próximo arranque.
500
¿Qué comando muestra el estado y los últimos logs de un servicio específico?
systemctl status nombre
501
¿Qué comando se usa para recargar la configuración de systemd tras modificar un archivo de unidad?
systemctl daemon-reload
502
¿Cómo se 'enmascara' (mask) un servicio para que no pueda ser iniciado ni manual ni automáticamente?
systemctl mask nombre
503
¿Qué es journald?
El componente de systemd encargado de la recolección y almacenamiento de logs del sistema y de los servicios.
504
¿Qué comando se usa para consultar los logs gestionados por systemd?
journalctl
505
¿Cómo verías solo los logs generados desde el último arranque?
journalctl -b
506
¿Cómo verías los logs de un servicio específico en tiempo real?
journalctl -u nombre -f
507
¿Cuál es el comando moderno para iniciar un servicio (ej. nginx)?
systemctl start nginx
508
¿Cuál es el comando moderno para detener un servicio inmediatamente?
systemctl stop nginx
509
¿Qué comando se usa para reiniciar un servicio (parada y arranque)?
systemctl restart nginx
510
¿Qué hace 'systemctl reload' a diferencia de 'restart'?
Recarga la configuración del servicio sin detener el proceso (no todos los servicios lo soportan).
511
¿Qué comando muestra si un servicio está corriendo, su PID y sus últimas líneas de log?
systemctl status nginx
512
¿Qué comando se usa para verificar rápidamente si un servicio está activo (devuelve true/false)?
systemctl is-active nginx
513
¿Qué significa hacer un 'enable' a un servicio?
Configura el servicio para que se inicie automáticamente durante el arranque del sistema (crea enlaces simbólicos).
514
¿Qué comando evita que un servicio se inicie automáticamente al arrancar?
systemctl disable nginx
515
¿Cómo compruebas si un servicio está configurado para arrancar automáticamente?
systemctl is-enabled nginx
516
¿Qué es el 'masking' de un servicio (systemctl mask)?
Es un nivel superior al disable: enlaza el servicio a /dev/null para que no pueda iniciarse ni manual ni automáticamente.
517
¿Cómo se revierte un 'mask'?
systemctl unmask nginx
518
¿Cuál es la sintaxis del comando clásico 'service' para iniciar apache2?
service apache2 start
519
¿Qué comando clásico muestra el estado de todos los servicios del sistema?
service --status-all
520
¿Dónde residen los scripts que ejecuta el comando 'service'?
En /etc/init.d/
521
¿Qué comando tradicional (anterior a systemd) se usaba para gestionar el arranque automático en los niveles de ejecución?
chkconfig (en RHEL) o update-rc.d (en Debian).
522
¿Qué comando de systemd se debe ejecutar tras modificar manualmente un archivo .service?
systemctl daemon-reload
523
¿Qué comando lista todas las unidades de servicio instaladas y su estado?
systemctl list-unit-files --type=service
524
¿Cómo se listan solo los servicios que han fallado (failed)?
systemctl --failed
525
¿Qué comando permite ver los logs específicos de un servicio gestionado por systemd?
journalctl -u nombre_servicio
526
¿Cómo puedes ver las dependencias de un servicio (qué otros servicios necesita para arrancar)?
systemctl list-dependencies nombre_servicio
527
¿Cuál es el comando moderno que sustituye a 'ifconfig' para ver y configurar interfaces?
El comando 'ip' (paquete iproute2).
528
¿Qué comando 'ip' equivale a 'ifconfig -a' (ver todas las interfaces)?
ip address show (o 'ip a').
529
¿Cómo se levanta una interfaz (ej. eth0) con ambos comandos?
'ifconfig eth0 up' o 'ip link set eth0 up'.
530
¿Qué comando sustituye a 'route -n' para ver la tabla de rutas?
ip route show (o 'ip r').
531
¿Cómo añadirías una puerta de enlace (gateway) por defecto con el comando 'ip'?
ip route add default via 192.168.1.1
532
¿Qué comando 'ip' muestra la tabla de vecinos (equivalente a 'arp -n')?
ip neighbor (o 'ip n').
533
¿Qué es 'nmcli'?
Es la interfaz de línea de comandos para NetworkManager, estándar en distros como RHEL, CentOS y Ubuntu.
534
¿Qué comando de nmcli muestra un resumen del estado de todos los dispositivos de red?
nmcli device status
535
¿Cómo listarías todas las conexiones (perfiles) configuradas con nmcli?
nmcli connection show
536
¿Qué comando moderno sustituye a 'netstat' para ver puertos abiertos y sockets?
ss (socket statistics).
537
¿Qué combinación de flags en 'ss' o 'netstat' muestra puertos TCP/UDP escuchando con números y proceso?
-tunlp (TCP, UDP, Numeric, Listening, Programs).
538
¿Cuál es la función del fichero '/etc/hosts'?
Es una tabla estática de asociación entre nombres de host y direcciones IP (resolución local antes que DNS).
539
¿Qué se define en el fichero '/etc/hostname'?
El nombre único del sistema (el 'hostname') que se carga al arrancar.
540
¿Para qué sirve '/etc/resolv.conf'?
Contiene las direcciones de los servidores DNS que el sistema debe consultar para la resolución de nombres.
541
¿Qué directiva en '/etc/resolv.conf' define el servidor DNS?
nameserver (ej. nameserver 8.8.8.8).
542
¿Qué fichero determina el orden de prioridad entre /etc/hosts y DNS?
/etc/nsswitch.conf (en la línea 'hosts:').
543
En sistemas basados en Debian/Ubuntu (sin netplan), ¿dónde se configura la red de forma persistente?
En /etc/network/interfaces.
544
En sistemas basados en RHEL/CentOS, ¿dónde están los scripts de cada interfaz?
/etc/sysconfig/network-scripts/ifcfg-.
545
¿Qué es 'Netplan'?
Es el configurador de red moderno en Ubuntu que utiliza archivos YAML en /etc/netplan/.
546
¿Qué comando se usa para cambiar el nombre del host en caliente y de forma persistente?
hostnamectl set-hostname nuevo-nombre
547
¿Qué herramienta se utiliza para probar la resolución DNS de un dominio específico?
dig o nslookup.
548
¿Qué diferencia hay entre 'ping' y 'traceroute'?
'ping' verifica conectividad básica (ICMP); 'traceroute' muestra el camino y los saltos hasta el destino.
549
¿Qué es la dirección 127.0.0.1 y cómo se llama su interfaz asociada?
Es la dirección de 'localhost' (bucle de retorno) y su interfaz es 'lo'.
550
¿Qué comando permite ver a qué dirección física (MAC) corresponde una IP en la red local?
arp -a o ip neighbor.
551
¿Qué indica el comando 'hostname -I'?
Muestra todas las direcciones IP asignadas al host (excluyendo loopback).
552
¿Cuál es la función principal de 'nslookup'?
Consultar servidores de nombres de dominio (DNS) para obtener asociaciones IP-Nombre. Es multiplataforma (Windows/Linux).
553
¿Qué comando es el sucesor de nslookup y ofrece una salida más detallada y flexible?
dig (Domain Information Groper).
554
¿Cómo pedirías específicamente el registro MX (servidor de correo) de un dominio con 'dig'?
dig dominio.com MX
555
¿Qué hace el comando 'dig -x IP'?
Realiza una resolución inversa (PTR): busca el nombre de dominio asociado a una dirección IP.
556
¿Qué hace el comando 'host'?
Es una utilidad sencilla para resolución DNS que combina la facilidad de nslookup con la potencia de dig.
557
¿Cuál es la salida típica de 'host dominio.com'?
Muestra la dirección IPv4, la IPv6 y los manejadores de correo (MX).
558
¿Qué protocolo utiliza el comando 'ping' para comprobar la conectividad?
ICMP (Internet Control Message Protocol).
559
¿Cómo limitarías el número de paquetes enviados en 'ping' a solo 4?
ping -c 4 dirección_ip
560
¿Qué hace el comando 'traceroute'?
Muestra la ruta que siguen los paquetes hasta un host, listando todos los routers (saltos) intermedios.
561
¿Qué diferencia hay entre 'traceroute' y 'tracepath'?
'tracepath' no requiere privilegios de root y es más sencillo, centrándose en detectar el MTU de la ruta.
562
¿Qué significa que aparezcan asteriscos (*) en la salida de un traceroute?
Que ese nodo (router) tiene el tráfico ICMP filtrado o no responde por razones de seguridad.
563
¿Qué hace 'netstat' (Network Statistics)?
Muestra conexiones de red, tablas de rutas y estadísticas de interfaces (está siendo sustituido por 'ss').
564
¿Qué significan los flags '-pln' en netstat/ss?
p: muestra el proceso/PID, l: solo puertos a la escucha (listening), n: muestra números en lugar de nombres de servicio.
565
¿Qué comando sustituye a 'netstat' por ser más rápido y mostrar más información del kernel?
ss (Socket Statistics).
566
¿Para qué sirve 'lsof -i'?
Lista los archivos abiertos que son sockets de red. Es ideal para saber qué proceso exacto está usando un puerto.
567
¿Cómo verías con 'lsof' qué proceso usa el puerto 80?
lsof -i :80
568
¿Qué es 'tcpdump'?
Un analizador de paquetes de red (sniffer) por línea de comandos que permite capturar y mostrar el tráfico que pasa por una interfaz.
569
¿Cómo capturarías todo el tráfico de la interfaz eth0 con 'tcpdump'?
tcpdump -i eth0
570
¿Qué flag de 'tcpdump' permite guardar la captura en un archivo para analizarla luego con Wireshark?
-w nombre_archivo.pcap
571
¿Cómo filtrarías con 'tcpdump' solo el tráfico destinado al puerto 443?
tcpdump port 443
572
¿Qué hace el flag '-n' en tcpdump?
Evita que el comando intente resolver las IPs en nombres de dominio, acelerando la visualización.
573
¿Qué hace el flag '-X' en tcpdump?
Muestra el contenido de los paquetes tanto en hexadecimal como en ASCII (útil para ver el 'payload').
574
¿Cuál es el comando 'hermano' de tcpdump basado en texto pero con la potencia de Wireshark?
tshark
575
¿Qué es técnicamente una Shell?
Es un programa (intérprete) que actúa como interfaz entre el usuario y el kernel, traduciendo comandos a llamadas al sistema.
576
¿Cuál es el flujo básico de ejecución de una Shell?
Lectura (Read) -> Evaluación (Eval) -> Impresión (Print) -> Bucle (Loop), conocido como REPL.
577
¿Qué sucede cuando ejecutas un comando que no es un 'built-in'?
La shell busca el ejecutable en las rutas del PATH, hace un 'fork' para crear un proceso hijo y un 'exec' para ejecutarlo.
578
¿Qué es un comando 'Built-in'?
Un comando que está integrado dentro del propio binario de la shell (ej. 'cd', 'pwd', 'echo') y no requiere crear un proceso nuevo.
579
¿Cómo puedes saber si un comando es interno (built-in) o un ejecutable externo?
Usando el comando 'type' (ej. 'type cd' vs 'type ls').
580
¿Qué es el 'Shebang' (#!/bin/bash)?
La primera línea de un script que indica al kernel qué intérprete debe usar para ejecutar el resto del archivo.
581
¿Cuál es la shell estándar en la mayoría de distribuciones Linux?
Bash (Bourne Again Shell).
582
¿Qué shell es conocida por ser minimalista, rápida y el estándar en scripts de sistema de Debian/Ubuntu?
Dash (Debian Almquist Shell).
583
¿Cuál es la shell original de UNIX de la que derivan casi todas las modernas?
Sh (Bourne Shell).
584
¿Qué shell ofrece características avanzadas de autocompletado, corrección ortográfica y temas (popular entre desarrolladores)?
Zsh (Z Shell).
585
¿Qué shell utiliza una sintaxis similar al lenguaje de programación C?
Csh (C Shell) o su versión mejorada Tcsh.
586
¿Dónde se encuentra la lista de shells válidas instaladas en el sistema?
/etc/shells
587
¿Qué comando se usa para cambiar permanentemente la shell por defecto de un usuario?
chsh (change shell).
588
¿Cuál es el fichero de configuración GLOBAL (para todos los usuarios) de Bash?
/etc/profile
589
¿Cuál es el fichero de configuración PERSONAL de Bash para sesiones con login?
~/.bash_profile (si no existe, busca ~/.bash_login o ~/.profile).
590
¿Qué fichero se ejecuta para sesiones de Bash que NO son de login (ej. abrir una terminal)?
~/.bashrc
591
¿Cuál es la práctica recomendada para que ~/.bash_profile también cargue los alias de ~/.bashrc?
Añadir un 'source ~/.bashrc' dentro del .bash_profile.
592
¿Dónde se guardan los alias y configuraciones globales que NO son variables de entorno?
/etc/bash.bashrc
593
¿Qué fichero registra el historial de comandos de un usuario?
~/.bash_history
594
¿Qué fichero se ejecuta automáticamente al cerrar una sesión de Bash?
~/.bash_logout
595
¿Qué diferencia hay entre una variable local y una variable de entorno?
La local solo existe en la shell actual; la de entorno (exportada) es heredada por los procesos hijos.
596
¿Qué comando se usa para convertir una variable local en una de entorno?
export (ej. export MI_VAR='valor').
597
¿Qué variable de entorno define los directorios donde la shell busca los comandos ejecutables?
$PATH
598
¿Qué comando muestra todas las variables de entorno actuales?
env (o printenv).
599
¿Para qué sirve el comando 'alias'?
Para crear nombres cortos o personalizados para comandos largos (ej. alias ll='ls -l').
600
¿Qué indica el símbolo '$0' en un script?
El nombre del script que se está ejecutando.
601
¿Qué representan '$1', '$2', ... '$9'?
Los argumentos o parámetros posicionales pasados al script.
602
¿Qué contiene la variable '$#'?
El número total de argumentos pasados al script.
603
¿Qué diferencia hay entre '$*' y '$@'?
Ambos representan todos los argumentos, pero '$@' los trata como palabras separadas si se ponen entre comillas, evitando errores con espacios.
604
¿Qué valor almacena la variable '$?'?
El código de salida (exit status) del último comando ejecutado (0 = éxito, distinto de 0 = error).
605
¿Qué devuelve la variable '$$'?
El PID (Process ID) del shell que está ejecutando el script actual.
606
¿Cómo se define una variable local dentro de una función para que no afecte al resto del script?
Usando la palabra reservada 'local' (ej. local mi_var=10).
607
¿Cómo se cierra una estructura condicional 'if' en Bash?
Con la palabra 'fi' (if al revés).
608
¿Cuál es la sintaxis básica de un bucle 'for' para recorrer una lista?
for var in lista; do comandos; done
609
¿Qué diferencia hay entre un bucle 'while' y un bucle 'until'?
'while' se ejecuta mientras la condición sea CIERTA; 'until' se ejecuta mientras la condición sea FALSA.
610
¿Cómo se cierra una estructura de selección múltiple 'case'?
Con la palabra 'esac' (case al revés).
611
¿Qué símbolo se usa en un 'case' para separar las diferentes opciones y cuál para cerrarlas?
Se usa '|' para separar opciones y ');;' al final de cada bloque de comandos.
612
¿Para qué sirve el comando 'test' o los corchetes '[ ]'?
Para evaluar condiciones (comparar cadenas, números o comprobar archivos).
613
¿Qué operador se usa para comprobar si un archivo existe y es un fichero regular?
-f (ej. [ -f /etc/passwd ]).
614
¿Qué operador comprueba si un directorio existe?
-d (ej. [ -d /tmp ]).
615
¿Qué operador se usa para comparar si dos cadenas de texto son iguales?
El operador '=' o '=='.
616
¿Qué significan los operadores numéricos '-eq', '-ne', '-lt', '-gt'?
eq: igual, ne: no igual, lt: menor que (less than), gt: mayor que (greater than).
617
¿Cómo se realizan operaciones aritméticas simples en Bash?
Usando '$(( expresión ))' (ej. resultado=$((2+2))).
618
¿Cómo se define una función en Bash?
nombre_funcion() { comandos }
619
¿Cómo recibe una función los parámetros que se le pasan?
A través de $1, $2, etc. (igual que el script, pero locales a la función).
620
¿Qué comando se usa para leer una entrada del usuario y guardarla en una variable?
read nombre_variable
621
¿Qué hace el comando 'exit' dentro de un script?
Termina la ejecución del script y devuelve un código de estado al proceso padre.
622
¿Para qué sirve el comando 'shift'?
Desplaza los parámetros posicionales a la izquierda ($2 pasa a ser $1), útil para procesar argumentos en bucles.
623
¿Qué es el 'Shebang' y dónde debe ir?
Es la primera línea del script (#!/bin/bash) que indica el intérprete a utilizar.
624
¿Qué hace el comando 'set -e' al principio de un script?
Hace que el script termine inmediatamente si cualquier comando falla (devuelve error).
625
¿Qué hace el comando 'set -x'?
Activa el modo depuración (debug), mostrando cada comando antes de ejecutarlo.
626
¿Cómo se ejecuta un script en el entorno actual sin crear una subshell?
Usando el comando 'source' o el punto '.' (ej. source ./script.sh).
627
¿Qué sucede si un script no tiene permisos de ejecución?
No se podrá ejecutar directamente (./script.sh), pero sí llamando al intérprete (bash script.sh).
628
¿Cuál es la principal característica de la arquitectura de X-Window?
Es una arquitectura Cliente-Servidor donde el Servidor maneja el hardware y los Clientes son las aplicaciones.
629
¿Qué permite que X-Window sea 'transparente a la red'?
Que una aplicación (cliente) se ejecute en un servidor remoto pero se visualice en el servidor X de la máquina local.
630
¿Cuál es la función del 'Window Manager' (Gestor de Ventanas) en X11?
Controlar la apariencia y ubicación de las ventanas (bordes, botones de cerrar, mover, etc.).
631
¿Qué es 'XQuartz'?
Es el proyecto que permite ejecutar aplicaciones basadas en X11 en sistemas macOS.
632
¿Qué archivo de configuración histórico (aunque hoy poco usado) centralizaba la configuración de X11?
/etc/X11/xorg.conf
633
¿Qué comando permite autorizar a un host remoto para que muestre ventanas en nuestra pantalla local?
xhost
634
¿Qué variable de entorno indica a las aplicaciones X en qué pantalla y servidor deben dibujarse?
$DISPLAY (ej. :0.0)
635
¿Qué es Wayland en términos técnicos?
Es un protocolo de comunicación entre un compositor y sus clientes, diseñado para ser más simple y seguro que X11.
636
¿Cuál es la principal diferencia de seguridad entre X11 y Wayland?
En X11, cualquier aplicación puede leer los eventos de otra (keyloggers); en Wayland, los clientes están aislados entre sí.
637
¿Qué figura de X11 desaparece en Wayland al integrarse en el propio servidor?
El Gestor de Ventanas y el Compositor se fusionan en una sola pieza (el Wayland Compositor).
638
¿Qué es 'XWayland'?
Una capa de compatibilidad que permite ejecutar aplicaciones diseñadas para X11 dentro de una sesión de Wayland.
639
¿Qué ventaja visual ofrece Wayland frente a X11?
Elimina el 'tearing' (desgarro de imagen) al asegurar que cada frame sea perfecto antes de mostrarlo.
640
¿Qué es un Display Manager (Gestor de Pantalla)?
El programa gráfico que pide el usuario y contraseña al arrancar (ej. GDM, LightDM, SDDM).
641
¿Qué es un Entorno de Escritorio (DE)?
Un conjunto completo de herramientas (paneles, gestor de archivos, iconos) sobre el sistema gráfico (ej. GNOME, KDE Plasma, XFCE).
642
¿Qué comando permite lanzar una sesión de X desde la línea de comandos (TTY)?
startx
643
¿En qué librería gráfica se basa el entorno GNOME?
En GTK (GIMP Toolkit).
644
¿Cuál es el entorno de escritorio por defecto en las principales distribuciones como Ubuntu, Debian y RHEL?
GNOME (específicamente la versión actual basada en GNOME Shell).
645
¿En qué librería gráfica se basa KDE Plasma?
En las librerías Qt.
646
¿Cuál es la principal característica que define a KDE Plasma frente a GNOME?
Su extrema capacidad de personalización y su parecido estructural con la interfaz clásica de Windows.
647
¿Qué es 'Mutter'?
Es el gestor de ventanas y compositor por defecto de GNOME.
648
¿Qué es 'KWin'?
Es el gestor de ventanas y compositor de KDE Plasma.
649
¿Qué entorno de escritorio destaca por ser muy ligero, estable y usar la librería GTK?
XFCE.
650
¿Cuál es el entorno de escritorio que nació como un 'fork' de GNOME 2 para mantener la metáfora de escritorio clásica?
MATE.
651
¿Qué entorno de escritorio es el principal de Linux Mint y busca un equilibrio entre modernidad (GTK3/4) y aspecto tradicional?
Cinnamon.
652
¿Cuál es el entorno de escritorio más minimalista y ligero, ideal para ordenadores con muy pocos recursos?
LXQt (sucesor de LXDE).
653
¿Qué diferencia técnica hay entre LXDE y LXQt?
LXDE usaba librerías GTK, mientras que LXQt utiliza las librerías Qt.
654
¿Cómo se llama el gestor de archivos nativo de GNOME?
Nautilus (actualmente llamado 'Archivos' o 'Files').
655
¿Cómo se llama el gestor de archivos nativo de KDE Plasma?
Dolphin.
656
¿Qué es un 'Tiling Window Manager'?
Un gestor de ventanas que organiza las aplicaciones en cuadrículas sin solaparse (ej. i3, Sway), muy popular entre administradores de sistemas.
657
¿A qué se refiere el término 'Bloatware' en el contexto de los entornos gráficos?
A la inclusión excesiva de software preinstalado que consume recursos innecesarios.
658
¿Qué significan las siglas CUPS?
Common Unix Printing System. Es el estándar de facto para la gestión de impresión en sistemas tipo Unix.
659
¿Cuál es el protocolo principal que utiliza CUPS para la comunicación?
IPP (Internet Printing Protocol).
660
¿A través de qué puerto trabaja por defecto el servicio CUPS?
Puerto TCP 631.
661
¿Qué interfaz web ofrece CUPS para su administración por defecto?
http://localhost:631
662
¿Qué es el protocolo LPD/LPR?
Line Printer Daemon. Un protocolo antiguo (BSD) todavía soportado para compatibilidad con impresoras de red viejas (Puerto 515).
663
¿Para qué sirve un archivo PPD?
PostScript Printer Description. Contiene las características y capacidades específicas de una impresora para que CUPS sepa cómo usarla.
664
¿Qué es el filtrado en CUPS?
Es el proceso de convertir el documento original (ej. un PDF o texto) a un formato que la impresora entienda (como Raster o PostScript).
665
¿Qué comando se usa para enviar un archivo a imprimir?
'lp' o 'lpr'.
666
¿Cómo imprimirías 3 copias de un archivo usando el comando 'lp'?
lp -n 3 archivo
667
¿Qué comando muestra el estado de las impresoras y los trabajos actuales?
'lpstat' o 'lpq'.
668
¿Cómo verías todas las impresoras configuradas y cuál es la predeterminada?
lpstat -p -d
669
¿Qué comando se usa para cancelar un trabajo de impresión específico?
'cancel' (seguido del ID) o 'lprm'.
670
¿Cómo cancelarías todos los trabajos de una impresora específica?
cancel -a nombre_impresora
671
¿Qué comando permite cambiar las opciones de una impresora (ej. ponerla por defecto)?
lpadmin
672
¿En qué directorio se almacenan temporalmente los trabajos de impresión (spool)?
/var/spool/cups/
673
¿Dónde se encuentra el archivo principal de configuración de CUPS?
/etc/cups/cupsd.conf
674
¿En qué archivo se guardan las definiciones de las impresoras instaladas?
/etc/cups/printers.conf
675
¿Qué comando se usa para habilitar una impresora que ha sido detenida?
cupsenable (o 'enable' en algunos sistemas).
676
¿Qué comando se usa para permitir que una impresora acepte nuevos trabajos en su cola?
cupsaccept (o 'accept').
677
¿Qué diferencia hay entre 'cupsenable' y 'cupsaccept'?
'cupsenable' permite que la impresora imprima; 'cupsaccept' permite que se le envíen nuevos trabajos a la cola.
678
¿Qué es SELinux?
Es un módulo de seguridad del kernel que implementa el Control de Acceso Mandatorio (MAC) basado en etiquetas de contexto.
679
¿En qué se diferencia el modelo MAC (SELinux) del DAC (permisos estándar)?
En DAC el dueño decide los permisos; en MAC (SELinux), el administrador define políticas globales que ni siquiera el dueño o el root pueden saltarse fácilmente.
680
¿Cuáles son los 3 modos de funcionamiento de SELinux?
Enforcing, Permissive y Disabled.
681
¿Qué hace el modo 'Enforcing'?
El modo por defecto: SELinux aplica las políticas y bloquea activamente las acciones no autorizadas.
682
¿Qué hace el modo 'Permissive'?
SELinux no bloquea nada, pero registra (log) en el sistema todas las acciones que habrían sido bloqueadas en modo Enforcing. Ideal para pruebas.
683
¿Qué comando muestra el estado actual de SELinux y el modo activo?
sestatus (o 'getenforce' para ver solo el modo).
684
¿Qué comando permite cambiar el modo entre Enforcing y Permissive en caliente?
setenforce [1|0] (1 para Enforcing, 0 para Permissive).
685
¿En qué se basa SELinux para tomar decisiones de acceso?
En el contexto de seguridad (etiqueta) asignado a cada proceso, archivo, directorio o puerto.
686
¿Cuál es el formato de un contexto de SELinux?
usuario:rol:tipo:nivel (ej. system_u:object_r:httpd_sys_content_t:s0).
687
¿Cuál es el campo más importante de un contexto de SELinux para la mayoría de políticas?
El 'tipo' (type), terminando habitualmente en '_t'.
688
¿Qué modificador se añade a comandos como 'ls' o 'ps' para ver los contextos de SELinux?
El flag '-Z' (ej. 'ls -Z' o 'ps -Z').
689
¿En qué archivo se configura el modo de SELinux para que sea persistente tras un reinicio?
/etc/selinux/config
690
¿Qué comando se usa para cambiar el contexto de seguridad de un archivo de forma manual?
chcon (change context).
691
¿Qué comando se usa para restaurar el contexto de seguridad por defecto de un archivo según las políticas del sistema?
restorecon
692
¿Qué son los 'Booleans' de SELinux?
Interruptores que permiten cambiar partes de la política en tiempo de ejecución sin recompilarla (ej. permitir que Apache acceda a bases de datos).
693
¿Qué comando permite listar, activar o desactivar los booleanos de SELinux?
getsebool (para ver) y setsebool (para cambiar).
694
¿Qué información contiene /etc/passwd?
Datos básicos del usuario: login, contraseña (x), UID, GID, comentario (GECOS), home y shell.
695
¿Qué significa la 'x' en el segundo campo de /etc/passwd?
Indica que la contraseña cifrada se almacena en /etc/shadow.
696
¿Qué información contiene /etc/shadow?
Contraseñas cifradas e información de caducidad (días desde último cambio, aviso, expiración).
697
¿Qué información contiene /etc/group?
Nombre del grupo, contraseña (x), GID y lista de usuarios miembros del grupo.
698
¿Cuál es el UID y GID del usuario root?
0
699
¿Qué rango de UID suelen tener los usuarios normales en sistemas modernos?
De 1000 en adelante (0-999 reservados para sistema).
700
¿Qué fichero se usa como plantilla para crear el directorio home de los nuevos usuarios?
/etc/skel/
701
¿En qué fichero se configura el comportamiento por defecto de useradd (como el grupo inicial o la shell)?
/etc/default/useradd
702
¿Qué diferencia hay entre 'useradd' y 'adduser'?
'useradd' es un binario de bajo nivel (nativo); 'adduser' es un script de alto nivel (más interactivo y amigable, típico de Debian).
703
¿Qué flag de 'useradd' crea automáticamente el directorio home?
-m (ej. useradd -m nombre).
704
¿Cómo se crea un usuario de sistema (sin home y UID bajo) con useradd?
useradd -r nombre
705
¿Qué comando se usa para borrar un usuario?
userdel
706
¿Cómo borras a un usuario y también su directorio home y sus correos?
userdel -r nombre
707
¿Qué comando crea un nuevo grupo?
groupadd (o addgroup).
708
¿Qué comando elimina un grupo?
groupdel (o delgroup).
709
¿Qué comando se usa para modificar cualquier atributo de un usuario ya creado?
usermod
710
¿Cómo añadirías a un usuario a un grupo secundario SIN quitarlo de los que ya está?
usermod -aG nombre_grupo usuario (la 'a' es vital de append).
711
¿Cómo se bloquea la cuenta de un usuario (poniendo un '!' en el shadow)?
usermod -L usuario (Lock) o passwd -l.
712
¿Cómo se desbloquea una cuenta bloqueada?
usermod -U usuario (Unlock) o passwd -u.
713
¿Qué comando se usa para cambiar la contraseña de un usuario?
passwd
714
¿Qué comando permite gestionar la expiración de contraseñas (días máximos, aviso)?
chage (ej. chage -l usuario para ver info).
715
¿Cómo cambias el grupo principal de un usuario?
usermod -g nombre_grupo usuario (g minúscula).
716
¿Qué significa el comando 'su'?
Substitute User. Cambia la identidad del usuario en la terminal actual.
717
¿Qué diferencia hay entre 'su' y 'su -'?
'su' mantiene el entorno del usuario original; 'su -' carga el entorno completo del nuevo usuario (PATH, variables, home).
718
¿Qué es el comando 'sudo'?
SuperUser Do. Permite a usuarios autorizados ejecutar comandos como root (u otro usuario) usando SU PROPIA contraseña.
719
¿Cuál es el fichero de configuración de sudo?
/etc/sudoers
720
¿Qué comando DEBE usarse siempre para editar el fichero sudoers?
visudo (comprueba errores sintácticos antes de guardar).
721
¿Qué significa la línea '%admin ALL=(ALL) ALL' en sudoers?
Que todos los usuarios del grupo 'admin' pueden ejecutar cualquier comando en cualquier host como cualquier usuario.
722
¿Cómo ejecutas un comando como el usuario 'web' usando sudo?
sudo -u web comando
723
¿Cómo puedes ver tus privilegios actuales en sudo?
sudo -l
724
¿Cuál es la tabla por defecto de iptables (donde se filtra el tráfico)?
La tabla 'filter'.
725
¿Qué tabla se utiliza para la traducción de direcciones de red (NAT)?
La tabla 'nat'.
726
¿Cuáles son las 3 cadenas principales de la tabla 'filter'?
INPUT (tráfico entrante), OUTPUT (tráfico saliente) y FORWARD (tráfico que cruza el equipo).
727
¿En qué tabla y cadena se realiza el 'Enmascaramiento' (Masquerade) para dar internet a una LAN?
Tabla 'nat', cadena POSTROUTING.
728
¿Qué cadena de la tabla 'nat' se usa para el redireccionamiento de puertos (Port Forwarding)?
Cadena PREROUTING (DNAT).
729
¿Cuál es el orden lógico de procesamiento de una regla?
Tabla -> Cadena -> Regla (se evalúan en orden de arriba a abajo).
730
¿Qué comando lista todas las reglas activas de la tabla filter?
iptables -L
731
¿Cómo listarías las reglas mostrando también los números de línea?
iptables -L --line-numbers
732
¿Qué comando borra (limpia) todas las reglas de todas las cadenas?
iptables -F (Flush).
733
¿Cómo se cambia la 'Política por Defecto' de la cadena INPUT a DROP?
iptables -P INPUT DROP
734
¿Qué comando se usa para borrar una regla específica (ej. la número 3 de INPUT)?
iptables -D INPUT 3
735
¿Cómo se guardan las reglas para que persistan tras un reinicio en Debian/Ubuntu?
iptables-save > /etc/iptables/rules.v4 (usando el paquete iptables-persistent).
736
¿Qué significan los parámetros '-p', '-s' y '-d'?
-p: protocolo (tcp, udp, icmp), -s: origen (source), -d: destino (destination).
737
¿Qué parámetro se usa para especificar la interfaz de entrada (ej. eth0)?
-i eth0 (interface).
738
¿Qué parámetro se usa para especificar el puerto de destino (ej. 80)?
--dport 80 (requiere haber especificado el protocolo -p con anterioridad).
739
¿Cuáles son los 3 'targets' o acciones principales tras el flag '-j'?
ACCEPT (permitir), DROP (ignorar silenciosamente) y REJECT (denegar con error).
740
¿Qué diferencia hay entre DROP y REJECT?
DROP descarta el paquete sin decir nada; REJECT devuelve un error ICMP al emisor.
741
¿Cómo permitirías todo el tráfico que entra por la interfaz de loopback?
iptables -A INPUT -i lo -j ACCEPT
742
¿Cómo bloquearías todo el tráfico proveniente de la IP 1.2.3.4?
iptables -A INPUT -s 1.2.3.4 -j DROP
743
¿Cómo permitirías el acceso por SSH (puerto 22) a tu servidor?
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
744
¿Cuál es el puerto por defecto de SSH y qué protocolo de transporte utiliza?
Puerto TCP 22.
745
¿Cuál es el fichero de configuración del CLIENTE SSH?
~/.ssh/config (usuario) y /etc/ssh/ssh_config (global).
746
¿Cuál es el fichero de configuración del SERVIDOR (demonio) SSH?
/etc/ssh/sshd_config
747
¿En qué fichero se guardan las claves públicas de los usuarios que tienen permiso para entrar sin contraseña?
~/.ssh/authorized_keys
748
¿Qué fichero almacena las huellas (fingerprints) de los servidores a los que nos hemos conectado para evitar ataques MITM?
~/.ssh/known_hosts
749
¿Qué comando se usa para generar un par de claves (pública/privada)?
ssh-keygen
750
¿Qué comando permite copiar nuestra clave pública a un servidor remoto de forma automática?
ssh-copy-id usuario@servidor
751
¿Qué directiva en sshd_config permite o deniega el acceso al root?
PermitRootLogin (yes/no/prohibit-password).
752
¿Cómo se ejecuta un comando en un servidor remoto sin abrir una sesión interactiva?
ssh usuario@servidor 'comando'
753
¿Qué herramienta permite transferir archivos de forma segura usando el protocolo SSH?
scp (Secure Copy) o sftp.
754
¿Para qué sirve el comando 'ulimit'?
Para controlar los recursos disponibles para la shell y los procesos lanzados por ella (límites de memoria, procesos, archivos abiertos).
755
¿Qué diferencia hay entre un Soft Limit y un Hard Limit?
El Soft Limit es el valor actual que el usuario puede aumentar hasta llegar al Hard Limit; el Hard Limit solo puede ser aumentado por root.
756
¿Qué flag de ulimit muestra el número máximo de archivos abiertos (open files)?
ulimit -n
757
¿Qué flag de ulimit muestra el número máximo de procesos del usuario (max user processes)?
ulimit -u
758
¿En qué fichero se configuran estos límites de forma persistente?
/etc/security/limits.conf
759
¿Qué son los 'cgroups' (control groups) en el kernel de Linux?
Una característica que permite organizar procesos en grupos jerárquicos para limitar, priorizar y aislar su uso de recursos (CPU, RAM, red).
760
¿Qué componente de systemd se encarga de gestionar los cgroups hoy en día?
Systemd utiliza 'slices' y 'scopes' para organizar las unidades en diferentes cgroups.
761
¿Qué diferencia hay entre cgroups y namespaces?
Los 'namespaces' aislan lo que un proceso puede VER (red, usuarios, PID); los 'cgroups' limitan lo que un proceso puede USAR (CPU, RAM).
762
¿Cómo se llaman las jerarquías de recursos en cgroups (ej. cpu, memory, blkio)?
Subsistemas o controladores.
763
¿Qué versión de cgroups es la actual y más eficiente, con una jerarquía unificada?
cgroups v2.
764
¿Qué significan las siglas PV y qué representan?
Physical Volume (Volumen Físico). Es el dispositivo físico (disco o partición) que se prepara para LVM.
765
¿Qué significan las siglas VG y qué representan?
Volume Group (Grupo de Volúmenes). Es la 'bolsa' o pool de almacenamiento creada al agrupar uno o varios PVs.
766
¿Qué significan las siglas LV y qué representan?
Logical Volume (Volumen Lógico). Es la partición 'virtual' que se crea desde el VG, se formatea y se monta.
767
¿Cuál es el orden correcto de creación en LVM?
PV (inicializar) -> VG (agrupar) -> LV (dividir).
768
¿Qué son los 'Extents' (PE) en LVM?
Son los trozos mínimos (bloques) en los que se divide el espacio. Un VG asigna PEs a los LVs.
769
¿Qué comandos se usan para CREAR cada capa?
pvcreate, vgcreate, lvcreate.
770
¿Qué comandos se usan para mostrar un RESUMEN rápido de cada capa?
pvs, vgs, lvs.
771
¿Qué comandos muestran información DETALLADA de cada capa?
pvdisplay, vgdisplay, lvdisplay.
772
¿Cómo crearías un volumen lógico de 10GB llamado 'datos' en el grupo 'vg_sistema'?
lvcreate -L 10G -n datos vg_sistema
773
¿Qué comando se usa para preparar un disco (p.ej. /dev/sdb) para ser usado en LVM?
pvcreate /dev/sdb
774
¿Cómo añadirías un nuevo disco físico a un grupo de volúmenes ya existente?
vgextend nombre_vg /dev/sdc
775
¿Qué comando se usa para aumentar el tamaño de un volumen lógico?
lvextend
776
¿Qué flag de 'lvextend' permite redimensionar el sistema de archivos automáticamente al mismo tiempo?
El flag '-r' o '--resizefs'.
777
¿Qué comando se usa específicamente para redimensionar el sistema de archivos (ext4) si no usaste el flag -r?
resize2fs
778
¿Se puede reducir un volumen lógico en caliente (online)?
Normalmente no. Se recomienda desmontar primero para evitar pérdida de datos (especialmente en ext4).
779
¿Qué comando se usa para reducir un volumen lógico?
lvreduce
780
¿Qué es un 'Snapshot' en LVM?
Una copia instantánea de un LV en un momento dado. Muy útil para copias de seguridad consistentes.
781
¿Qué es el 'Thin Provisioning'?
Permite asignar a los LVs más espacio del que realmente hay físicamente en el VG, consumiendo espacio solo a medida que se escribe.
782
¿Dónde se suelen encontrar los archivos de dispositivo de los volúmenes lógicos?
En /dev/nombre_vg/nombre_lv o en /dev/mapper/nombre_vg-nombre_lv.
783
¿Qué comando permite mover todos los datos de un disco físico (PV) a otros discos dentro del mismo VG para poder retirar el disco viejo?
pvmove
784
¿Para qué sirve el comando 'mdadm'?
Para crear, gestionar y monitorizar dispositivos RAID por software en Linux.
785
¿Qué es RAID 0 (Striping) y cuántos discos requiere?
Distribuye datos entre discos para ganar velocidad. Mínimo 2 discos. NO tiene redundancia (si falla uno, se pierde todo).
786
¿Qué es RAID 1 (Mirroring) y cuántos discos requiere?
Réplica exacta de datos en dos o más discos. Mínimo 2 discos. Ofrece alta redundancia.
787
¿Qué es RAID 5 y cuántos discos requiere?
Distribuye datos y paridad. Mínimo 3 discos. Tolera el fallo de 1 disco.
788
¿Qué es RAID 6 y cuántos discos requiere?
Similar al 5 pero con doble paridad. Mínimo 4 discos. Tolera el fallo de 2 discos simultáneos.
789
¿Qué es RAID 10?
Una combinación de Mirroring (1) y Striping (0). Mínimo 4 discos. Ofrece velocidad y seguridad.
790
¿Cómo se suelen nombrar los dispositivos RAID en el directorio /dev/?
Como /dev/md0, /dev/md1, etc.
791
¿Qué comando muestra el estado en tiempo real de todos los RAID del sistema?
cat /proc/mdstat
792
¿Qué flag de 'mdadm' se usa para crear un nuevo array?
--create (o -C).
793
¿Qué flag define el nivel de RAID al crear el dispositivo?
--level (o -l). Ej: --level=5.
794
¿Qué flag define el número de dispositivos activos en el RAID?
--raid-devices (o -n).
795
¿Cómo verías la información detallada de un RAID específico (ej. /dev/md0)?
mdadm --detail /dev/md0
796
¿Qué es un 'Spare disk' en mdadm?
Un disco de reserva que está inactivo pero que mdadm usará automáticamente para reconstruir el RAID si uno falla.
797
¿Cómo marcas un disco como fallido manualmente para pruebas o sustitución?
mdadm /dev/md0 --fail /dev/sdb1 (o -f).
798
¿Cómo eliminas un disco fallido de un array?
mdadm /dev/md0 --remove /dev/sdb1 (o -r).
799
¿Cómo añades un nuevo disco a un array existente (ya sea como repuesto o para reconstrucción)?
mdadm /dev/md0 --add /dev/sdc1 (o -a).
800
¿Qué indica el estado 'degraded' en un RAID 5?
Que uno de los discos ha fallado y el array funciona sin redundancia, a la espera de un nuevo disco.
801
¿Cuál es el fichero de configuración principal de mdadm?
/etc/mdadm/mdadm.conf
802
¿Qué comando se usa para actualizar el fichero de configuración con los arrays actuales?
mdadm --detail --scan >> /etc/mdadm/mdadm.conf
803
¿Cómo detienes completamente un dispositivo RAID?
mdadm --stop /dev/md0
804
¿Cómo ensamblas (activas) un RAID existente cuyos discos han sido detectados?
mdadm --assemble --scan
805
¿Por qué se dice que /proc es un sistema de archivos 'virtual'?
Porque no existe en el disco; es una interfaz del kernel en la RAM que permite ver y cambiar parámetros del sistema en tiempo real.
806
¿Qué representan los directorios con nombres numéricos dentro de /proc?
Representan a cada proceso en ejecución, siendo el número su PID.
807
¿Qué información contiene /proc/cpuinfo?
Detalles técnicos del procesador (modelo, núcleos, caché, flags de virtualización, etc.).
808
¿Qué información contiene /proc/meminfo?
Estadísticas detalladas del uso de memoria RAM y Swap (libre, caché, buffers, etc.).
809
¿Para qué sirve el archivo /proc/version?
Muestra la versión del kernel, la versión de gcc usada y la fecha de compilación.
810
¿Qué contiene /proc/partitions?
Una lista de las particiones detectadas por el sistema y su número de bloques.
811
¿Cuál es la función del directorio /proc/sys/?
Permite modificar parámetros del kernel en caliente (tuning) como límites de red o memoria.
812
¿Qué archivo en /proc muestra los sistemas de archivos que el kernel soporta actualmente?
/proc/filesystems
813
¿Qué hace el comando 'uname'?
Muestra información básica del sistema operativo y el hardware.
814
¿Qué flag de 'uname' muestra TODA la información disponible (kernel, versión, arquitectura, etc.)?
uname -a
815
¿Cómo verías específicamente la arquitectura del procesador (x86_64, etc.) con uname?
uname -m
816
¿Qué es 'dmesg'?
Muestra el 'ring buffer' del kernel, es decir, los mensajes generados por el kernel durante el arranque y cuando ocurre un evento de hardware.
817
¿Cómo verías con dmesg solo los mensajes relacionados con discos rígidos?
dmesg | grep -i sda (o 'dmesg | grep -i disk').
818
¿Qué comando moderno de systemd permite ver los mismos mensajes que dmesg pero con más opciones de filtrado?
journalctl -k (de kernel).
819
¿Qué hace el comando 'lsmod'?
Lista los módulos (drivers) del kernel que están cargados actualmente en memoria.
820
¿Qué información muestra 'lspci'?
Lista todos los dispositivos conectados al bus PCI (tarjetas gráficas, de red, controladoras de disco, etc.).
821
¿Qué flag de lspci se usa para ver qué driver específico está usando cada dispositivo?
lspci -k
822
¿Qué hace el comando 'lsusb'?
Lista todos los dispositivos conectados a los puertos USB (ratones, discos externos, hubs).
823
¿Cómo verías el árbol jerárquico de conexiones USB (bus, puertos, dispositivos)?
lsusb -t
824
¿Qué comando se usa para obtener información detallada de los discos físicos (número de serie, firmware)?
smartctl o hdparm.