Comandos esenciales de Linux: Usuarios, Permisos y Gestión de Archivos

Clasificado en Informática

Escrito el en español con un tamaño de 5,9 KB

1. Interpretación del comando `cat /etc/passwd`

El comando cat /etc/passwd muestra el contenido del archivo /etc/passwd, que contiene información sobre los usuarios del sistema. Cada línea en este archivo representa un usuario y está compuesta por varias columnas separadas por dos puntos (:).

Ejemplo:

marta:x:1200:1200:Marta...:/home/marta:/bin/bash

Descripción de cada columna:

  • Primera columna (Usuario): Nombre del usuario (en este caso, "marta").
  • Segunda columna (Contraseña): Si aparece una "x", la contraseña está almacenada de forma cifrada en el archivo /etc/shadow.
  • Tercera columna (UID): Identificador numérico único del usuario (User ID).
  • Cuarta columna (GID): Identificador numérico del grupo principal al que pertenece el usuario (Group ID).
  • Quinta columna (Descripción): Información descriptiva del usuario, como su nombre completo.
  • Sexta columna (Directorio Home): Ruta absoluta al directorio personal del usuario.
  • Séptima columna (Shell): Intérprete de comandos que se ejecuta cuando el usuario inicia sesión (en este caso, /bin/bash).

2. Listado de archivos con `ls -lia` y tipos de archivos

El comando ls -lia muestra una lista detallada de los archivos y directorios en el directorio actual, incluyendo archivos ocultos.

Tipos de archivos:

  • Ficheros ordinarios (-): Archivos que contienen datos, como texto o código.
  • Directorios (d): Carpetas que contienen otros archivos y directorios.
  • Archivos especiales (b, c): Representan dispositivos físicos o virtuales.
  • Enlaces simbólicos (l): Apuntan a otro archivo o directorio, similar a un acceso directo. Se identifican con el símbolo "->".
  • Ocultos (.): Archivos y directorios que no se muestran en un listado normal (ls). Sus nombres comienzan con un punto (.).
  • Enlaces duros (ln): Son otra referencia a un archivo existente.

Ejemplo de salida del comando:


700000 -wx---r--- marta marta 19083 2009-12-01 13:31 lista
700000 ---------- marta marta 19083 2009-12-01 13:32 listador

3. Repositorios y dependencias

Repositorios: Un repositorio es un sitio web o un servidor que almacena paquetes de software disponibles para su instalación. En Ubuntu, existen cuatro tipos principales de repositorios, clasificados según la licencia del software y el equipo de Ubuntu que lo mantiene.

Dependencia: Una dependencia es un paquete de software que debe estar instalado para que otro paquete pueda funcionar correctamente. Cuando se instala un paquete, el gestor de paquetes también instala automáticamente todas sus dependencias.

4. Case Sensitive en GNU/Linux

En los sistemas GNU/Linux, como en la mayoría de los sistemas basados en Unix, el sistema de archivos es "case sensitive". Esto significa que el sistema distingue entre mayúsculas y minúsculas en los nombres de archivos y directorios. Por ejemplo, archivo.txt, Archivo.txt y ARCHIVO.TXT se consideran tres archivos diferentes.

5. Representación de permisos en sintaxis octal

El archivo fich1 tiene los permisos r-- --- ---. Para demostrarlo en sintaxis octal, debemos entender cómo se representan los permisos:

  • r (lectura): valor 4
  • w (escritura): valor 2
  • x (ejecución): valor 1
  • - (sin permiso): valor 0

Los permisos se dividen en tres grupos: propietario, grupo y otros. En este caso:

  • Propietario: r-- (4 + 0 + 0 = 4)
  • Grupo: --- (0 + 0 + 0 = 0)
  • Otros: --- (0 + 0 + 0 = 0)

Por lo tanto, la representación octal de r-- --- --- es 400.

Ejemplos de cambios de permisos con chmod:

  • chmod 531 fich1: Establece los permisos a r-x -wx --x.
  • chmod 700 fich1: Establece los permisos a rwx --- ---.

6. Ejercicios prácticos de comandos

A continuación, se presentan soluciones a ejercicios prácticos comunes en la línea de comandos de Linux:

  • Crear el directorio "Programas" dentro de "Examen/trabajos" sin moverse del directorio actual:
    /home/usu1 $ mkdir Examen/trabajos/Programas
  • Suprimir el permiso de lectura al grupo para el directorio "Examen":
    /home/usu1 $ chmod g-r Examen
  • Borrar el directorio "Examen" y todo su contenido:
    /home/usu1 $ rm -R Examen
  • Crear un archivo llamado "examen" con dos líneas de texto ("línea uno" y "línea dos"):
    /home/usu1 $ cat > examen
    línea uno
    línea dos
    (Presionar Ctrl+D para guardar y salir)
  • Crear un enlace simbólico a "Examen/trabajos":
    /home/usu1 $ ln -s Examen/trabajos enlace_a_trabajos
  • Copiar el archivo "Examen/trabajos" a otro directorio:
    /home/usu1 $ cp Examen/trabajos /ruta/destino/
  • Añadir una línea adicional a un archivo existente:
    /home/usu1 $ cat >> NombreFichero
    Nueva línea
    (Presionar Ctrl+D para guardar y salir)
  • Quitar el permiso de ejecución a una carpeta:
    /home/usu1 $ chmod -x NombreCarpeta

Entradas relacionadas: