Comandos Esenciales de Gestión de Archivos y Permisos en Linux
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 7,34 KB
Este documento recopila y explica comandos fundamentales para la administración de sistemas Linux, enfocándose en la manipulación de archivos, directorios y la gestión de permisos.
Gestión de Permisos
Establecer permisos recursivamente
Para establecer permisos de lectura y escritura para el propietario y el grupo, y solo lectura para otros, en el directorio /proyecto/bin
y sus contenidos, se utiliza:
chmod -R 664 /proyecto/bin
Permisos Específicos
Los permisos drwxrwx---
indican:
- Lectura (r), escritura (w) y paso (x) para el usuario propietario.
- Lectura (r), escritura (w) y paso (x) para el grupo propietario.
- Sin permisos para los demás usuarios.
Cambio de Permisos Simbólico
Para cambiar los permisos de un fichero llamado léeme.txt
a rwxr-xr-x
(ejecución para el propietario, lectura y ejecución para el grupo y otros) se usa:
chmod u=rwx,go=rx léeme.txt
Permisos Totales para Todos
Para otorgar permisos de lectura, escritura y ejecución a todos los usuarios sobre el directorio /tmp
:
chmod a+rwx /tmp
Modificación de Permisos Específicos
Para eliminar el permiso de paso (ejecución) y añadir el permiso de escritura al grupo sobre un fichero:
chmod g+w,o-x fichero
Permisos Resultantes de umask
Si se ejecuta umask 027
, los permisos por defecto para los ficheros creados serán:
640
(Propietario: lectura/escritura, Grupo: lectura, Otros: sin permisos)
Transformación de Permisos por Superusuario
Un superusuario puede modificar permisos de la siguiente manera:
chmod u+x,g+w-r,o-r filename
Manipulación de Contenido de Ficheros
Mostrar un Rango de Líneas
Para mostrar el contenido del fichero fichero.txt
desde la línea 12 hasta la 20:
tail +12 fichero.txt | head -n 9
Mostrar Líneas Específicas
El comando less /etc/passwd | head -n -2
indica:
- Muestra todas las líneas del fichero
/etc/passwd
excepto las dos últimas.
Mostrar Columnas Específicas
Para mostrar por pantalla las columnas tercera y sexta del fichero /etc/shadow
, utilizando el carácter ':' como delimitador:
cut -f 3,6 -d ':' /etc/shadow
Para mostrar por pantalla los campos 2, 3 y 6 del fichero /etc/passwd
, usando ':' como delimitador:
cut -f 2,3,6 -d ':' /etc/passwd
Mostrar Contenido con Números de Línea
Para mostrar el contenido del fichero /etc/fstab
incluyendo el número de línea:
cat -n /etc/fstab
Mostrar desde una Línea Específica
tail +n
muestra el contenido de un fichero desde la línea n
hasta el final.
Búsqueda y Filtrado de Información
Buscar Ficheros por Contenido
Para mostrar el nombre de todos los ficheros que contengan la cadena enp0s3
en el directorio /etc
y sus subdirectorios:
grep -rl enp0s3 /etc/
Buscar Ficheros por Patrones de Nombre
Para mostrar archivos en el directorio /usr/bin
que empiecen por 'k' y tengan una 'a' en la tercera posición:
ls /usr/bin/k?a
Buscar Ficheros por Tamaño
Para buscar ficheros mayores de 25 Mbytes y menores o iguales a 60 Mbytes en el directorio actual y subdirectorios:
find . -size +25M ! -size +60M
Contar Ficheros por Propietario
Para contar todos los ficheros de los que DAI
es propietario:
find . -type f -user DAI | wc -l
Expresión Regular para Palabras
La expresión [A-Z].*d
(corregida de [A-Z].*$
para mayor precisión si se busca una 'd' al final) coge todas las palabras que empiezan con mayúscula y terminan con 'd'. Si se busca cualquier carácter después de la mayúscula hasta el final, se usaría [A-Z].*
.
Operaciones con Archivos y Directorios
Borrar Directorios y su Contenido
Para borrar el directorio /home/Alumno
y todos sus archivos de forma recursiva y forzada:
rm -rf /home/Alumno/
Copiar Ficheros con Patrones
Para copiar todos los ficheros cuyo nombre empiece con un número al directorio /tmp
:
cp [0-9]* /tmp
Para copiar ficheros del directorio /usr/bin
que comiencen por 'g':
cp /usr/bin/g* /ruta/destino/
(Se asume que se desea copiar a alguna ruta de destino, se añade /ruta/destino/
como ejemplo).
Mover y Renombrar Archivos
Para mover el archivo películas.txt
, ubicado en multimedia/video
, al directorio multimedia
y renombrarlo a mis_peliculas.txt
:
mv multimedia/video/películas.txt multimedia/mis_peliculas.txt
Crear Estructuras de Directorios
Para crear una estructura de directorios compleja:
mkdir -p programas/c/código_fuente/{uno,dos} programas/c/ejecutables/dos programas/java
Crear Ficheros Vacíos
Para crear cuatro ficheros llamados fi1
, fi2
, fi3
, fi4
:
touch fi{1..4}
Crear Enlaces Simbólicos
Un enlace simbólico contiene apuntadores al origen.
Para crear un enlace simbólico llamado potaje
que apunte al directorio /bk/olds
:
ln -s /bk/olds potaje
Información del Sistema y Comandos de Ayuda
Identificar Usuario Actual
Para saber qué usuario eres:
whoami
Localizar Comandos
Para obtener la orden que muestra la localización del comando ls
:
whereis ls
Conceptos Adicionales
Enlaces Simbólicos
Un enlace simbólico actúa como un puntero o atajo a otro archivo o directorio. Contiene la ruta al elemento original.
Uso de Comandos de Visualización
Comandos como cat
, less
, more
, head
y tail
son fundamentales para visualizar y extraer información de ficheros de texto.
Comandos de Manipulación de Texto
grep
para buscar patrones, cut
para extraer columnas y sed
(no incluido pero relevante) para transformaciones de texto son herramientas poderosas.
Comandos de Administración de Ficheros
cp
(copiar), mv
(mover/renombrar), rm
(eliminar), mkdir
(crear directorio), touch
(crear fichero vacío) y ln
(crear enlaces) son esenciales.
Comandos de Gestión de Permisos
chmod
para cambiar permisos, chown
para cambiar propietario/grupo (no incluido pero relacionado) y umask
para definir permisos por defecto son cruciales para la seguridad.