T4 SSOO - LINUX Flashcards

(37 cards)

1
Q

¿Qué es Linux? ¿Por que se caracteriza? [MULTI…..]

A

Linux es el nombre que reciben una serie de sistemas operativos de tipo Unix
Es:
* multiusuario
* multitarea
* multiplataforma

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

¿Para qué sirve un sistema operativo?

A

Proporciona una capa software de menor complejidad para que los usuario y aplicaciones de usario se desarrolle de manera sencilla.

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

¿Por qué esta formado un SO?

SO: Sistema Operativo

A
  • Núcleo (kernel): controla el hardware.
  • Programas: gestionan recursos y permiten usar el sistema.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿Qué es un tty1?

A

Teletypewriter es una consola virtual de texto que permite usar el sistema sin entorno gráfico.

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

¿Qué es BASH en LINUX?

A

Un shell

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

¿Qué es un SHELL en LINUX?

A

Un intérprete de comandos

EN windows sería CMD

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

Configuración Global d LINUX
¿Qué ficheros va a ejecutar cualquier usuario que haga log in?

A
  • /etc/.profile
  • /etc/bash.bashrc
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Configuración en cada usuario (o cada $HOME)
¿Qué ficheros va a ejecutar un usuario específico que haga log in en un terminal?

A
  • /etc/.profile: Configura el entorno al iniciar sesión.
  • /etc/.bashrc: Configura el entorno al abrir una terminal.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

¿Cual es el directorio de trabajo de cada usuario individual?

A

Es el $HOME

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

¿Qué diferencia hay entre /root y /home

A
  • /root es para el usuario raíz, root, o más importante
  • /home es para el resto de usuarios (que pueden pertenecer a grupos)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

¿Qué son los permisos en UNIX? ¿Qué tipo de usuario hay? Y, ¿qué tipo de permiso?

A

En Unix/Linux, los permisos controlan quién puede hacer qué con un ARCHIVO O DIRECTORIO.

🔹 Cada archivo/directorio tiene permisos para 3 usuarios:

Usuario (owner) → el dueño del archivo.

Grupo (group) → usuarios del mismo grupo.

Otros (others) → el resto de usuarios.

🔹 Tipos de permisos:

r (read) → leer el contenido.

w (write) → modificar o borrar.

x (execute) → ejecutar (si es archivo) o acceder (si es directorio).

con CHMOD (ejemplo “chmod g+w) se modifican los permisos

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

Comandos para FICHEROS

A
  • rsync= Copia remota de ficheros (sincronizar ficheros entre 2 máquinas)
  • mkdir= Crear un directorio (-p con los directorios necesarios o intermedios)
  • rmdir= Eliminar un directorio (-r de ahí para abajo)
  • chown= Change Owner. Cambia el propietario
  • chgrp=Change group. Cambie el grupo
  • chmod= Change mode bits. Cambia los bits de permisos
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

¿Cuál es el valor en OCTAL de R - W - X?

A
  • R = Reading (4)
  • W = Writing (2)
  • X = eXecution (1)

***COMO EN LOS BITS EN SUBNETTING

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

¿Con qué comandos se pueden ver o cambiar los permisos?

A
  • VER= ls -l
  • CAMBIAR= chmod // chown // chgrp
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

¿Qué es SCRIPT en Linux?

A

Es un archivo de texto que contiene una serie de comandos que el sistema puede ejecutar de forma secuencial.

  • Están escritos en Bash (pero también pueden usar otros intérpretes como Python, Perl, etc.).
  • Tienen extensión .sh (aunque no es obligatoria).

🔹 Ejemplo de script básico *(mi_script.sh)

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

¿Qué es una variable en Linux?

A

Es un nombre que ALMACENA UN VALOR. Sirve para guardar datos que luego se pueden usar o modificar fácilmente.

17
Q

¿Cómo se definen y utilizan las VARIABLES en un script de Bash?
Explica….
* #!/bin/bash
* NOMBRE=valor
* $NOMBRE
* export NOMBRE
* VAR=$(comando)

A

#!/bin/bash
No es una variable, pero indica el intérprete o programa con el que se debe ejecutar el script. En este caso bash.

Define que el script usará Bash.
- NOMBRE=valor: Declaras/creas la variable
- $NOMBRE: Accedes a su valor con ese nombre
- export NOMBRE: Haces que esté disponible para otros procesos heredados.
- VAR=$(comando): Puedes asignar a la variable el resultado de un comando.

18
Q

¿Para qué sirven y qué tipos de variables $ existen en LINUX?

A

$ indica al sistema que debe:
- acceder al valor de una variable
- ejecutar un comando
- obtener un valor especial

Por ejemplo:
* $0 Es el nombre del comando ejecutado
* $1 Primer argumento, $2 el segundo… $(asterisco) todos los argumentos
* $# Número de argumentos
* $$ PID
* $? Resultado de la ejecución anterior
* !! Último comando ejecutado (muy útil para sudo)

si usamos $ antes de una variable, nos mostrará su contenido

19
Q

¿Qué es un “nivel de shell”?

A

Son instancias o procesos de shell que se ejecutan dentro de otro shell. Cada nivel tiene su propio espacio de variables y entorno.

  • El primer nivel de shell es el que inicias al abrir la terminal.
  • Un subshell es un nuevo shell que se ejecuta dentro del shell original, y puede ejecutar comandos sin afectar al shell principal.

¿Para qué se usan?

  • Aislar procesos.
  • Crear entornos personalizados sin modificar el shell principal.
20
Q

¿Como es el el orden del sistema de ficheros en LINUX? ¿Con qué símbolo comienza la orden?

A

Es la estructura jerárquica que usa Linux para organizar archivos y directorios, comenzando desde /.

21
Q

¿Qué es i-node?

A

Es la unidad más básica creada que contiene METADATOS de un archivo (tamaño, permisos, fechas), pero NO contiene su NOMBRE.

22
Q

¿Qué información contiene el i-node?

A

nº de i-node: Es el identificador único del archivo dentro del sistema de ficheros.

  • tamaño: El tamaño del archivo en bytes.
  • dueño (UID): El ID del usuario propietario del archivo.
  • grupo (GID): El ID del grupo al que pertenece el archivo.
  • [a, m, c] time: (o comando stat)
    a (access): Última vez que se accedió al archivo.
    m (modify): Última vez que se modificó el contenido.
    c (change): Última vez que cambió el i-node (permisos, propietario, etc.).
  • tipo de fichero: Si es un archivo normal, directorio, enlace simbólico, etc.
  • permisos: Quién puede leer, escribir o ejecutar el archivo.
  • nº de hard links: Número de enlaces físicos que apuntan a ese i-node

Regla mnemotécnica:

El Tigre Ursula Grita Al Mar Con Tristeza, Pero Hace Yoga.”

Y su correspondencia:
• Tigre → Tamaño
• Ursula → UID (dueño)
• Grita → GID (grupo)
• A, M, C → Access, Modify, Change
• Tristeza → Tipo de fichero
• Pero → Permisos
• Hace Yoga → Hard link

23
Q

¿Para qué sirven las ACL en Linux?
¿Por qué aparece un + en los permisos?

A

ACL Access Control Link

Para definir permisos personalizados para distintos usuarios y grupos sobre un mismo archivo o directorio.

-rw-r–r–+ 1 usuario grupo 1234 abr 11 10:00 archivo.txt

→ Ese “+” indica que hay permisos adicionales definidos con ACL que no se ven en los 10 caracteres clásicos de rwxr-xr–.

24
Q

¿Para qué sirve un stickyBit? ¿Qué tiene que ver con el directorio tmp? ¿Cómo se activa?

A

→ Sirve para proteger los archivos dentro de un directorio COMPARTIDO: solo el propietario del archivo o el usuario /root puede BORRARLOS o RENOMBRARLOS, aunque otros tengan permisos de escritura en el directorio.

→ El directorio /tmp tiene el sticky bit activado porque es un espacio donde todos los usuarios pueden escribir, pero NO PUEDEN borrar archivos de otros.

para activarlo chmod + t

25
# - ¿Para qué sirve un **setUID**? (Bit **x** → **s**) rw**`s`**r-xr-x
Un programa siempre se **EJECUTA**(x) con una **cuenta de usuario** → Para ello **setUID** hace que un archivo (normalmente un ejecutable) se **ejecute con los privilegios del propietario**, en lugar de los del usuario que lo ejecuta. -rw**s**r-xr-x ¿**Cómo se actva**? * usuario= **u+s** * grupo= **g+s** | aparecera un **bit "s"** para dejar claro que está activo
26
¿Quién es **admin-backup** en Linux? (USUARIOS Y ROLES)
**No es un usuario especial** del sistema por defecto. Es un nombre de usuario o grupo **personalizado**, que suele usarse en empresas o scripts para identificar cuentas **responsables de realizar copias de seguridad.**
27
¿Qué significa una S mayúscula en los permisos en Linux? (PERMISOS ESPECIALES)
rw**s**r-xr-x → **s minúscula:** el archivo tiene ejecución y setuid activado → ✅ correcto. rw**S**r--r-- → **S mayúscula**: tiene setuid pero **no permiso de ejecución** → ⚠️ probablemente un error o sin efecto.
28
¿Cuales son los **codigos** de los permisos especiales (**stickybit/setuid/setgid**)? ¿Cómo se activarían con **valores octales**?
Códigos de los permisos especiales (primer dígito): * **1** sticky bit * **2** setgid * **4** setuid Por eso cuando tenemos una serie de permisos (porejemplo **711**) * **sticky bit** está activo en cmhod **1**711 * **setgid** está activo en cmhod **2**711 * **setuid** está activo en cmhod **4**711 Se pueden acticvar de manera conjunta **6711** es porque se activa setuid**(4)** + setguid**(2)**
29
¿Qué hace un **hard-link** para **ficheros** (original y enlace)? (**ln**)
Enlace duro (hard link): ***ln** archivo1 archivo2* = crea un enlace duro llamado archivo2 que apunta a archivo1. Un enlace duro hace que ambos archivos **(original y enlace) sean idénticos**. No se puede distinguir cuál es el original, porque ambos tienen **el mismo número de i-node.** Ventaja: Si **borras uno (cualquiera)** de los archivos, el otro sigue existiendo.
30
¿Qué es un **soft-link** para **directorios**? (**ln -s**)
* Enlace simbólico (soft link): **ln -s** archivo1 archivo2 crea un enlace simbólico llamado archivo2 que apunta a archivo1. * Un enlace simbólico es más parecido a un **acceso directo en Windows**, y puede apuntar a directorios o archivos que no existen.
31
Nombra distintas **familias** de **UNIX**
* SCO * HP - UX * IBM AIX * BSD (Free BSD / MacOSX) * **LINUX** (Debian / Redhat)
32
¿Qué herramientas se usan para **gestionar paquetes .deb** en **Debian**?
`DPKG`: debian package `APT`: advance package tool * **dpkg -i fichero.deb** → instala un paquete .deb local * **/etc/apt/sources.list** → contiene los **REPOSITORIOS** * **apt-get** → comandos: install, update, remove, clean * **apt-cache search** → busca **PAQUETES** **Otras herramientas**: Aptitude, Dselect, Synaptic
33
¿Qué herramientas se usan para **gestionar paquetes .rpm** en sistemas **RedHat**?
**`RPM`** - **rpm -Uvh fichero.rpm** → instala o actualiza un paquete .rpm ---------------------------------------------- **`YUM`** → gestor de paquetes más avanzado (basado en rpm) - Usa repositorios definidos en **/etc/yum.repos.d/** Ejemplo: yum install paquete ---------------------------------------------- **`DNF`** → sucesor moderno de yum en Fedora y derivados - **sudo dnf check-update** → busca actualizaciones - **sudo dnf install code** → instala el paquete code
34
Nombra distintas **distribuciones** de LINUX
* **Debian .deb:** Ubuntu / Mint * **Red Hat .rpm**: Fedora / CentOS / Mandriva * **Suse** * **Slackware** * **Gentoo** * **PuppyLinux** * **ArchLinux**: PacMan
35
**Redireccionamiento**: ¿Para qué se usa el operador **"|" (pipe)** en Linux?
Para enviar la `salida` de un comando como `entrada` de otro EJEMPLO: cat archivo.txt | grep "error" * **cat** muestra el contenido del archivo * **grep** filtra solo las líneas que contienen "error"
36
***Administración del sistema***: ¿Qué diferencias hay entre los directorios `/dev`, `/root`, `/bin` y `/etc` en Linux?
- **`/dev`**: archivos especiales que representan dispositivos del sistema - **`/root`**: carpeta personal del usuario root - **`/bin`**: comandos esenciales disponibles para todos los usuarios - **`/etc`**: archivos de configuración del sistema y servicios
37
¿Qué diferencia hay entre **apt update** y **apt upgrade** en Linux?","
- `apt update`: actualiza la lista de paquetes disponibles desde los repositorios.\n- - `apt upgrade`: **instala** las versiones más recientes de los paquetes ya instalados."