Linux Professional Institute Learning Logo.
Pasar al contenido principal
  • Inicio
    • Todos los recursos
    • LPI Learning Materials
    • Conviértete en colaborador
    • Publishing Partners
    • Conviértase en un Publishing Partner
    • Acerca de nosotros
    • FAQ
    • Colaboradores
    • Roadmap
    • Contáctenos
  • LPI.org
4.3 Lección 1
Tema 1: La Comunidad Linux y una carrera en el mundo del código abierto
1.1 Los sistemas operativos populares y la evolución de Linux
  • 1.1 Lección 1
1.2 Principales aplicaciones de código abierto
  • 1.2 Lección 1
1.3 Software de Código Abierto y las licencias
  • 1.3 Lección 1
1.4 Destrezas TIC y el trabajo con Linux
  • 1.4 Lección 1
Tema 2: Encontrando el camino en un sistema Linux
2.1 Aspectos básicos de la línea de comandos
  • 2.1 Lección 1
  • 2.1 Lección 2
2.2 Uso de la línea de comandos para obtener ayuda
  • 2.2 Lección 1
2.3 Uso de directorios y listado de archivos
  • 2.3 Lección 1
  • 2.3 Lección 2
2.4 Crear, mover y borrar archivos
  • 2.4 Lección 1
Tema 3: El poder de la línea de comandos
3.1 Archivar ficheros desde la línea de comandos
  • 3.1 Lección 1
3.2 Buscar y extraer datos de los ficheros
  • 3.2 Lección 1
  • 3.2 Lección 2
3.3 Crear un script a partir de una serie de comandos
  • 3.3 Lección 1
  • 3.3 Lección 2
Tema 4: El sistema operativo Linux
4.1 La elección del sistema operativo
  • 4.1 Lección 1
4.2 Conocer el hardware del ordenador
  • 4.2 Lección 1
4.3 Donde los datos se almacenan
  • 4.3 Lección 1
  • 4.3 Lección 2
4.4 Tu ordenador en la red
  • 4.4 Lección 1
Tema 5: Seguridad y sistema de permisos de archivos
5.1 Seguridad básica e identificación de tipos de usuarios
  • 5.1 Lección 1
5.2 Creating Users and Groups
  • 5.2 Lección 1
5.3 Gestión de los permisos y la propiedad de los archivos
  • 5.3 Lección 1
5.4 Directorios y archivos especiales
  • 5.4 Lección 1
How to get certified
  1. Tema 4: El sistema operativo Linux
  2. 4.3 Donde los datos se almacenan
  3. 4.3 Lección 1

4.3 Lección 1

Certificación:

Linux Essentials

Versión:

1.6

Tema:

4 El sistema operativo Linux

Objetivo:

4.3 Donde se almacenan los datos

Lección:

1 de 2

Introducción

Para un sistema operativo, todo se considera datos. Para Linux, todo se considera un archivo: programas, archivos normales, directorios, dispositivos de bloque (discos duros, etc.), dispositivos de caracteres (consolas, etc.), procesos del núcleo, sockets, particiones, enlaces, etc. La estructura del directorio de Linux , comenzando desde root /, es una colección de archivos que contienen datos. El hecho de que todo sea un archivo es una característica poderosa de Linux, ya que permite ajustar prácticamente todos los aspectos del sistema.

En esta lección discutiremos las diferentes ubicaciones en las que se almacenan datos importantes según lo establecido por el Linux Filesystem Hierarchy Standard (FHS). Algunas de estas ubicaciones son directorios reales que almacenan datos de forma persistente en discos, mientras que otros son pseudo sistemas de archivos cargados en la memoria que nos dan acceso a datos del subsistema del núcleo, como procesos en ejecución, uso de memoria, configuración de hardware, etc. Los datos almacenados en estos directorios virtuales son utilizados por una serie de comandos que nos permiten monitorearlos y manejarlos.

Programas y su configuración

Los datos importantes en un sistema Linux son sus programas y archivos de configuración. Los primeros son archivos ejecutables que contienen los conjuntos de instrucciones que debe ejecutar el procesador de la computadora, mientras que los segundos suelen ser documentos de texto que controlan el funcionamiento de un programa. Los archivos ejecutables pueden ser archivos binarios o archivos de texto. Los archivos de texto ejecutables se denominan scripts. Los datos de configuración en Linux también se almacenan tradicionalmente en archivos de texto, aunque existen varios estilos a la forma de representar los datos de configuración.

Dónde se almacenan los archivos binarios

Al igual que cualquier otro archivo, los archivos ejecutables se encuentran en directorios que pertenecen en última instancia de /. Más específicamente, los programas se distribuyen en una estructura de tres niveles: el primer nivel (/) incluye programas que pueden ser necesarios en modo de usuario único, el segundo nivel (/usr) contiene la mayoría de los programas multiusuario y el tercer nivel (/usr/local) se utiliza para almacenar software que no es proporcionado por la distribución y que se ha compilado localmente.

Las ubicaciones típicas para los programas incluyen:

/sbin

Contiene archivos binarios esenciales para la administración del sistema, como parted o ip.

/bin

Contiene archivos binarios esenciales para todos los usuarios, como ls, mv o mkdir.

/usr/sbin

Almacena binarios para la administración del sistema, como deluser o groupadd.

/usr/bin

Incluye la mayoría de los archivos ejecutables, como free, pstree, sudo o man que pueden ser utilizados por todos los usuarios.

/usr/local/sbin

Se utiliza para almacenar programas instalados localmente para la administración del sistema que no son gestionados por el administrador de paquetes.

/usr/local/bin

Sirve para el mismo propósito que /usr/local/sbin pero para programas de usuario regulares.

Recientemente, algunas distribuciones comenzaron a reemplazar /bin y /sbin con enlaces simbólicos a /usr/bin y /usr/sbin

Note

El directorio /opt a veces se usa para almacenar aplicaciones opcionales de terceros.

Además de estos directorios, los usuarios habituales pueden tener sus propios programas en:

  • /home/$USER/bin

  • /home/$USER/.local/bin

Tip

Puede averiguar desde qué directorios están disponibles para ejecutar binarios haciendo referencia a la variable PATH con echo $PATH. Para obtener más información sobre PATH, revise las lecciones sobre variables y personalización de shell.

Podemos encontrar la ubicación de los programas con el comando which:

$ which git
/usr/bin/git

Dónde se almacenan los archivos de configuración

El directorio /etc

En los primeros días de Unix había una carpeta para cada tipo de datos, como /bin para binarios y /boot para los núcleos. Sin embargo, /etc (que significa etcétera) se creó como un directorio general para almacenar cualquier archivo que no perteneciera a las otras categorías. La mayoría de estos archivos eran archivos de configuración. Con el paso del tiempo, se agregaron más y más archivos de configuración, por lo que /etc se convirtió en la carpeta principal para los archivos de configuración de los programas. Como se dijo anteriormente, un archivo de configuración generalmente es un archivo de texto plano local (opuesto al binario) que controla la operación de un programa.

En /etc podemos encontrar diferentes patrones para los nombres de los archivos de configuración:

  • Archivos con una extensión ad hoc o sin extensión, por ejemplo

    group

    Base de datos de los grupos de sistema.

    hostname

    Nombre del equipo.

    hosts

    Lista de direcciones IP y sus traducciones de nombres de host.

    passwd

    Base de datos del usuario del sistema: compuesta por siete campos separados por dos puntos que proporcionan información sobre el usuario.

    profile

    Archivo de configuración de todo el sistema para Bash.

    shadow

    Archivo encriptado para contraseñas de usuario.

  • Archivos de inicialización que terminan en rc:

    bash.bashrc

    Archivo .bashrc en todo el sistema para shells interactivos.

    nanorc

    Ejemplo de archivo de inicialización para GNU nano (un editor de texto simple que normalmente se funciona con cualquier distribución).

  • Archivos que terminan en .conf:

    resolv.conf

    Archivo de configuración para el resolver que proporciona acceso al sistema de nombres de dominio de Internet (DNS).

    sysctl.conf

    Archivo de configuración para establecer variables del sistema para el núcleo.

  • Directorios con el sufijo .d:

    Algunos programas con un archivo de configuración único (*.conf o de otro modo) han evolucionado para tener un directorio dedicado *.d que ayuda a construir configuraciones modulares y más robustas. Por ejemplo, para configurar logrotate, encontrará logrotate.conf, pero también los directorios logrotate.d.

    Este enfoque es útil en aquellos casos en que diferentes aplicaciones necesitan configuraciones para el mismo servicio específico. Si, por ejemplo, un paquete de servidor web contiene una configuración de logrotate, esta configuración ahora se puede colocar en un archivo dedicado en el directorio logrotate.d. Este archivo puede ser actualizado por el paquete del servidor web sin interferir con la configuración de logrotate restante. Del mismo modo, los paquetes pueden agregar tareas específicas colocando archivos en el directorio /etc/cron.d en lugar de modificar /etc/crontab.

    En Debian - y derivados de Debian - este enfoque se ha aplicado a la lista de fuentes confiables leídas por la herramienta de administración de paquetes apt: aparte del clásico /etc/apt/sources.list, ahora encontramos el Directorio /etc/apt/sources.list.d:

    $ ls /etc/apt/sources*
    /etc/apt/sources.list
    /etc/apt/sources.list.d:
Archivos de configuración en HOME (Dotfiles)

A nivel de usuario, los programas almacenan sus configuraciones en archivos ocultos del directorio de inicio de cada usuario (también representado ~). Recuerde, los archivos ocultos comienzan con un punto (.), de ahí su nombre: dotfiles.

Algunos de estos archivos de puntos son scripts de Bash que personalizan la sesión de shell del usuario y se obtienen tan pronto como el usuario inicia sesión en el sistema:

.bash_history

Almacena el historial de la línea de comando.

.bash_logout

Incluye comandos para ejecutar al salir de la shell de inicio de sesión.

.bashrc

Script de inicialización de Bash para shells sin inicio de sesión.Script de inicialización de Bash para shells sin inicio de sesión.

.profile

Script de inicialización de Bash para shells de inicio de sesión.

Note

Consulte la lección sobre "Conceptos básicos de la línea de comandos" para obtener más información sobre Bash y sus archivos de inicio.

Los archivos de configuración de otros programas específicos del usuario se obtienen cuando se inician sus respectivos programas: .gitconfig, .emacs.d, .ssh, etc.

El Kernel de Linux

Antes de que se pueda ejecutar cualquier proceso, el kernel debe cargarse en un área protegida de la memoria. Después de eso, el proceso con PID 1 (en la mayoría de los casos systemd en la actualidad) pone en marcha la cadena de procesos, es decir, un proceso inicia otro(s) y así sucesivamente. Una vez que los procesos están activos, el kernel de Linux se encarga de asignarles recursos (teclado, mouse, discos, memoria, interfaces de red, etc.).

Note

Antes de systemd, /sbin/init siempre fue el primer proceso en un sistema Linux como parte del administrador del sistema System V Init. De hecho, todavía se encuentra /sbin/init actualmente pero vinculado a /lib/systemd/systemd.

Dónde se almacenan los núcleos: /boot

El kernel reside en /boot junto con otros archivos relacionados con el arranque. La mayoría de estos archivos incluyen los componentes del número de versión del núcleo en sus nombres (versión del núcleo, revisión mayor, revisión menor y número de parche).

El directorio /boot incluye los siguientes tipos de archivos con nombres correspondientes a la versión del kernel respectiva:

config-4.9.0-9-amd64

Los ajustes de configuración para el núcleo como las opciones y los módulos que se compilaron junto con el núcleo.

initrd.img-4.9.0-9-amd64

Imagen de disco RAM inicial que ayuda en el proceso de inicio al cargar un sistema de archivos raíz temporal en la memoria.

System-map-4.9.0-9-amd64

El archivo System-map (en algunos sistemas se llamará System.map) contiene las direcciones de las memoria de nombres (Memory Address Locations) de los símbolos del kernel. Cada vez que se reconstruya un kernel, el contenido del archivo cambiará, ya que las ubicaciones de memoria podrían ser diferentes. El kernel utiliza este archivo para buscar las ubicaciones de la memoria para un símbolo de kernel en particular, o viceversa.

vmlinuz-4.9.0-9-amd64

El kernel propiamente dicho en un formato comprimido autoextraíble que ahorra espacio (de ahí la z en vmlinuz; vm significa memoria virtual y comenzó a usarse cuando el kernel obtuvo soporte para memoria virtual por primera vez).

grub

Directorio de configuración para el gestor de arranque grub2.

Tip

Debido a que es una característica crítica del sistema operativo, más de un kernel y sus archivos asociados se mantienen en /boot en caso de que el predeterminado se vuelva defectuoso y tengamos que recurrir a una versión anterior para tratar de arrancar el sistema y arreglarlo.

El directorio /proc

El directorio /proc es uno de los llamados sistemas de archivos virtuales o pseudo, ya que su contenido no se escribe en el disco, sino que se carga en la memoria. Se llena dinámicamente cada vez que la computadora se inicia y refleja constantemente el estado actual del sistema. /proc incluye información sobre:

  • Procesos ejecutandose

  • Configuración del kernel

  • Hardware del sistema

Además de todos los datos relacionados con los procesos que veremos en la próxima lección, este directorio también almacena archivos con información sobre el hardware del sistema y los ajustes de configuración del kernel. Algunos de estos archivos incluyen:

/proc/cpuinfo

Almacena información sobre el CPU del sistema:

$ cat /proc/cpuinfo
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 158
model name	: Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz
stepping	: 10
cpu MHz		: 3696.000
cache size	: 12288 KB
(...)
/proc/cmdline

Almacena las cadenas pasadas al núcleo en el arranque:

$ cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-4.9.0-9-amd64 root=UUID=5216e1e4-ae0e-441f-b8f5-8061c0034c74 ro quiet
/proc/modules

Muestra la lista de módulos cargados en el kernel:

$ cat /proc/modules
nls_utf8 16384 1 - Live 0xffffffffc0644000
isofs 40960 1 - Live 0xffffffffc0635000
udf 90112 0 - Live 0xffffffffc061e000
crc_itu_t 16384 1 udf, Live 0xffffffffc04be000
fuse 98304 3 - Live 0xffffffffc0605000
vboxsf 45056 0 - Live 0xffffffffc05f9000 (O)
joydev 20480 0 - Live 0xffffffffc056e000
vboxguest 327680 5 vboxsf, Live 0xffffffffc05a8000 (O)
hid_generic 16384 0 - Live 0xffffffffc0569000
(...)

El directorio /proc/sys

Este directorio incluye ajustes de configuración del kernel por medio de archivos y clasificados en categorías por subdirectorio:

$ ls /proc/sys
abi  debug  dev  fs  kernel  net  user  vm

La mayoría de estos archivos actúan como un interruptor, por eso solo contienen uno de los dos valores posibles: 0 o 1 (“on” u “off”). Por ejemplo:

/proc/sys/net/ipv4/ip_forward

El valor que habilita o deshabilita nuestra máquina para que actúe como un enrutador (reenviar paquetes):

$ cat /proc/sys/net/ipv4/ip_forward
0

Sin embargo, hay algunas excepciones:

/proc/sys/kernel/pid_max

La cantidad maxima de PID permitada:

$ cat /proc/sys/kernel/pid_max
32768
Warning

Tenga mucho cuidado al cambiar la configuración del núcleo, ya que un valor incorrecto puede provocar un sistema inestable.

Dispositivos de hardware

Recuerde, en Linux “todo es un archivo”. Esto implica que la información del dispositivo de hardware, así como los ajustes de configuración propios del núcleo se almacenen en archivos especiales que residen en directorios virtuales.

El directorio /dev

El directorio device /dev contiene archivos de dispositivo o nodos para todos los dispositivos de hardware conectados. Estos archivos se utilizan como una interfaz entre los dispositivos y los procesos que los utilizan. Cada archivo de dispositivo se divide en una de dos categorías:

Dispositivos de bloque (Block devices)

Son aquellos en los que los datos se leen y escriben en bloques que pueden abordarse individualmente. Los ejemplos incluyen discos duros (y sus particiones, como /dev/sda1), unidades flash USB, CD, DVD, etc.

Dispositivos de carácter (Character devices)

Son aquellos en los que los datos se leen y escriben secuencialmente un carácter a la vez. Los ejemplos incluyen teclados, la consola de texto (/dev/console), puertos seriales (como /dev/ttyS0, etc.), etc.

Al enumerar los archivos del dispositivo, asegúrese de usar ls con el interruptor -l para diferenciar entre los dos. Podemos, por ejemplo, buscar discos duros y particiones:

# ls -l /dev/sd*
brw-rw---- 1 root disk 8, 0 may 25 17:02 /dev/sda
brw-rw---- 1 root disk 8, 1 may 25 17:02 /dev/sda1
brw-rw---- 1 root disk 8, 2 may 25 17:02 /dev/sda2
(...)

O para terminales en serie (TeleTYpewriter):

# ls -l /dev/tty*
crw-rw-rw- 1 root tty     5,  0 may 25 17:26 /dev/tty
crw--w---- 1 root tty     4,  0 may 25 17:26 /dev/tty0
crw--w---- 1 root tty     4,  1 may 25 17:26 /dev/tty1
(...)

Observe cómo el primer carácter es b para dispositivos de bloque y c para dispositivos de carácter.

Tip

El asterisco (*) es un carácter global que significa 0 o más caracteres. De ahí su importancia en los comandos ls -l /dev/sd* y ls -l /dev/tty * anteriores. Para obtener más información sobre estos personajes especiales, consulte la lección sobre globbing.

Además, /dev incluye algunos archivos especiales que son bastante útiles para diferentes propósitos de programación:

/dev/zero

Proporciona tantos caracteres nulos como se solicite.

/dev/null

Aka bit bucket. Descarta toda la información que se le envía.

/dev/urandom

Genera números pseudoaleatorios.

El directorio /sys

El sistema de archivos sys (sysfs) está montado en /sys. Se introdujo con la llegada del kernel 2.6 y significó una gran mejora en /proc/sys.

Los procesos deben interactuar con los dispositivos en /dev y por lo tanto, el núcleo necesita un directorio que contenga información sobre estos dispositivos de hardware. Este directorio es /sys y sus datos están ordenados en categorías. Por ejemplo, para verificar la dirección MAC de su tarjeta de red (enp0s3) puede usar el comando cat en el siguiente archivo:

$ cat /sys/class/net/enp0s3/address
08:00:27:02:b2:74

Memoria y tipos de memoria

Básicamente, para que un programa comience a ejecutarse debe cargarse en la memoria. En general, cuando hablamos de memoria nos referimos a Random Access Memory (RAM) y en comparación con los discos duros mecánicos tiene la ventaja de ser mucho más rápido. En el lado negativo, es volátil (es decir, una vez que la computadora se apaga, los datos desaparecen).

No obstante, cuando se trata de memoria podemos diferenciar dos tipos principales en un sistema Linux:

Memoria física

También conocido como RAM, son en forma de chips formados por circuitos integrados que contienen millones de transistores y condensadores. Estos a su vez, forman celdas de memoria (el componente básico de la memoria de la computadora). Cada una de estas celdas tiene un código hexadecimal asociado, una dirección de memoria, para que pueda ser referenciada cuando sea necesario.

Swap

También conocido como swap space, es la porción de memoria virtual que se encuentra en el disco duro y se usa cuando no hay más RAM disponible.

Por otro lado, existe el concepto de memoria virtual, que es una abstracción de la cantidad total de memoria utilizable (RAM y espacio en disco).

free analiza /proc/meminfo y muestra la cantidad de memoria libre y usada en el sistema de una manera muy clara:

$ free
              total        used        free      shared  buff/cache   available
Mem:        4050960     1474960     1482260       96900     1093740     2246372
Swap:       4192252           0     4192252

Expliquemos las diferentes columnas:

total

Cantidad total de memoria física y de intercambio instalada.

used

Cantidad de memoria física e intercambio actualmente en uso.

free

Cantidad de memoria física e intercambio que actualmente no esta en uso.

shared

Cantidad de memoria física utilizada principalmente por tmpfs.

buff/cache

Cantidad de memoria física actualmente en uso por las memorias intermedias del núcleo y la caché.

available

Estimación de cuánta memoria física está disponible para nuevos procesos.

Por defecto, free muestra valores en kibibytes, pero permite que una variedad de interruptores muestren sus resultados en diferentes unidades de medida. Algunas de estas opciones incluyen:

-b

Bytes.

-m

Mebibytes.

-g

Gibibytes.

-h

Formato legible por humanos.

-h siempre es cómodo de leer:

$ free -h
              total        used        free      shared  buff/cache   available
Mem:           3,9G        1,4G        1,5G         75M        1,0G        2,2G
Swap:          4,0G          0B        4,0G
Note

Un kibibyte (KiB) equivale a 1,024 bytes mientras que un kilobytes (KB) equivale a 1000 bytes. Lo mismo es respectivamente cierto para mebibytes, gibibytes, etc.

Guía de ejercicios

  1. Use el comando which para averiguar la ubicación de los siguientes programas y completar la tabla:

    Programa comando which Ruta ejecutable (salida) ¿El usuario necesita privilegios de root?

    swapon

    kill

    cut

    usermod

    cron

    ps

  2. ¿Dónde se encuentran los siguientes archivos?

    Archivo /etc ~

    .bashrc

    bash.bashrc

    passwd

    .profile

    resolv.conf

    sysctl.conf

  3. Explique el significado de los elementos numéricos para el archivo del núcleo vmlinuz-4.15.0-50-generic que se encuentra en /boot:

    Número de elemento Significado

    4

    15

    0

    50

  4. ¿Qué comando usarías para enumerar todos los discos duros y particiones en /dev?

Ejercicios exploratorios

  1. Los archivos de dispositivo para discos duros se representan en función de los controladores que utilizan: /dev/sd * para unidades que usan SCSI (interfaz de sistema de computadora pequeña) y SATA (accesorio de tecnología avanzada en serie).

    • ¿Cómo se representaron las unidades antiguas IDE (Integrated Drive Electronics)?

    • ¿Y las modernas unidades NVMe (Non-Volatile Memory Express)?

  2. Echa un vistazo al archivo /proc/meminfo. Compare el contenido de este archivo con la salida del comando free e identifique qué tecla de /proc/meminfo corresponde a los siguientes campos en la salida de free:

    Salida de free campo /proc/meminfo

    total

    free

    shared

    buff/cache

    available

Resumen

En esta lección, ha aprendido sobre la ubicación de los programas y sus archivos de configuración en un sistema Linux. Los hechos importantes para recordar son:

  • Básicamente, los programas se encuentran en una estructura de directorio de tres niveles: /, /usr y /usr/local. Cada uno de estos niveles puede contener directorios bin y sbin.

  • Los archivos de configuración se almacenan en /etc y ~.

  • Los archivos ocultos son los que comienzan con un punto (.).

También hemos discutido el kernel de Linux. Los hechos importantes son:

  • Para Linux, todo es un archivo.

  • El kernel de Linux se encuentra en /boot junto con otros archivos relacionados con el arranque.

  • Para que los procesos comiencen a ejecutarse, el kernel primero debe cargarse en un área protegida de la memoria.

  • El trabajo del kernel es el de asignar recursos del sistema a los procesos.

  • El sistema de archivos virtual (o pseudo) /proc almacena datos importantes del kernel y del sistema de forma volátil.

Del mismo modo, hemos explorado dispositivos de hardware y aprendido lo siguiente:

  • El directorio /dev almacena archivos especiales (también conocidos como nodos) para todos los dispositivos de hardware conectados: block devices o character devices. Los primeros transfieren datos en bloques y el otro un carácter a la vez.

  • El directorio /dev también contiene otros archivos especiales como /dev/zero, /dev/null o /dev/urandom.

  • El directorio /sys almacena información sobre dispositivos de hardware organizados en categorías.

Finalmente tocamos la memoria. Aprendimos:

  • Un programa se ejecuta cuando se carga en la memoria.

  • ¿Qué es RAM (Random Access Memory)?

  • Qué es Swap?

  • ¿Cómo mostrar el uso de la memoria?

Comandos usados en esta lección:

cat

Concatenar o imprimir el contenido de un archivo.

free

Muestra la cantidad de memoria libre y usada en el sistema.

ls

Lista de contenidos del directorio.

which

Mostrar ubicación del programa.

Respuestas a los ejercicios guiados

  1. Use el comando which para averiguar la ubicación de los siguientes programas y completar la tabla:

    Programa comando which Ruta ejecutable (salida) ¿El usuario necesita privilegios de root?

    swapon

    which swapon

    /sbin/swapon

    Si

    kill

    which kill

    /bin/kill

    No

    cut

    which cut

    /usr/bin/cut

    No

    usermod

    which usermod

    /usr/sbin/usermod

    Si

    cron

    which cron

    /usr/sbin/cron

    Si

    ps

    which ps

    /bin/ps

    No

  2. ¿Dónde se encuentran los siguientes archivos?

    File /etc ~

    .bashrc

    No

    Si

    bash.bashrc

    Si

    No

    passwd

    Si

    No

    .profile

    No

    Si

    resolv.conf

    Si

    No

    sysctl.conf

    Si

    No

  3. Explique el significado de los elementos numéricos para el archivo del núcleo vmlinuz-4.15.0-50-generic que se encuentra en /boot:

    Número de elemento Significado

    4

    Kernel version

    15

    Major revision

    0

    Minor revision

    50

    Patch number

  4. ¿Qué comando usarías para enumerar todos los discos duros y particiones en /dev?

    ls /dev/sd*

Respuestas a los ejercicios exploratorios

  1. Los archivos de dispositivo para discos duros se representan en función de los controladores que utilizan: /dev/sd * para unidades que usan SCSI (interfaz de sistema de computadora pequeña) y SATA (accesorio de tecnología avanzada en serie).

    • ¿Cómo se representaron las unidades antiguas IDE (Integrated Drive Electronics)?

      /dev/hd*

    • ¿Y las modernas unidades NVMe (Non-Volatile Memory Express)?

      /dev/nvme*

  2. Echa un vistazo al archivo /proc/meminfo. Compare el contenido de este archivo con la salida del comando free e identifique qué tecla de /proc/meminfo corresponde a los siguientes campos en la salida de free:

    Salida de free campo /proc/meminfo

    total

    MemTotal / SwapTotal

    free

    MemFree / SwapFree

    shared

    Shmem

    buff/cache

    Buffers, Cached and SReclaimable

    available

    MemAvailable

Linux Professional Insitute Inc. Todos los derechos reservados. Visite el sitio web de Learning Materials: https://learning.lpi.org
Este trabajo está registrado bajo la Licencia Internacional Creative Commons Attribution-NonCommercial-NoDerivatives 4.0

Siguiente lección

4.3 Donde los datos se almacenan (4.3 Lección 2)

Leer la próxima lección

Linux Professional Insitute Inc. Todos los derechos reservados. Visite el sitio web de Learning Materials: https://learning.lpi.org
Este trabajo está registrado bajo la Licencia Internacional Creative Commons Attribution-NonCommercial-NoDerivatives 4.0

LPI es una organización sin fines de lucro.

© 2023 Linux Professional Institute (LPI) es la organización global de certificación y apoyo académico para profesionales de código abierto. Con más de 200,000 titulares de certificación, es el primer y más grande organismo de certificación no comercial del mundo para Linux y Open Source. LPI cuenta con profesionales certificados en más de 180 países, realiza exámenes en varios idiomas y tiene cientos de socios de capacitación.

Nuestro propósito es hacer que las oportunidades económicas y creativas estén disponibles para todos, haciendo que el conocimiento de código abierto y la certificación sea universalmente accesible.

  • LinkedIn
  • flogo-RGB-HEX-Blk-58 Facebook
  • Twitter
  • Contáctenos
  • Política de privacidad y cookies

¿Detecta un error o desea ayudar a mejorar esta página? Por favor háznoslo saber.

© 1999–2023 The Linux Professional Institute Inc. Todos los derechos reservados.