Comandos y administración básica de Linux: usuarios, paquetes y ficheros
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en
español con un tamaño de 16,29 KB
Comandos de configuración básicos
- hostnamectl: nombre del equipo y más configuraciones.
- hostname: nombre del equipo. Se guarda en /etc/hostname.
- hostname -I: dirección IP del equipo.
- ifconfig: muestra y modifica la configuración de la red.
- ip: similar a ifconfig, actualizado y más completo.
- Fichero /etc/hosts: relaciones entre nombres de máquinas y sus direcciones IP, de forma recursiva.
Variables de entorno
Variables más comunes:
- HOME: ruta de la carpeta personal.
- USER: nombre de usuario.
- SHELL: intérprete de comandos que se ejecuta.
- HOSTNAME: nombre del equipo.
- TERM: tipo de terminal.
- LOGNAME: nombre de usuario de ejecución de la shell.
- PATH: rutas donde se encuentran las órdenes a ejecutar.
- PWD: directorio de trabajo actual.
Para visualizarlas se escribe echo $NOMBRE_VARIABLE.
Opciones de apt
- apt install paquete: instala el/los paquete(s).
- apt update: actualiza la lista de paquetes disponibles en los repositorios.
- apt upgrade: actualiza los paquetes instalados.
- apt check: verifica las dependencias.
- apt show paquete: muestra información de un paquete.
- apt -f o apt --fix-broken: arregla problemas de dependencias.
- apt clean: elimina los archivos descargados.
- apt purge paquete: elimina el paquete y sus archivos de configuración.
- apt remove paquete: desinstala el paquete.
Opciones de dpkg
- -i | --install: instala el paquete desde el fichero .deb.
- -r | --remove: desinstala el paquete.
- -P | --purge: desinstala el paquete y los archivos de configuración.
- -s | --status: indica si está instalado o no, y su estado.
- -l | --list: lista los paquetes e indica si están instalados.
- -L | --list-files: muestra los archivos que contiene el paquete.
- -S | --search: muestra los paquetes que contienen un archivo.
- dpkg-reconfigure: configura un paquete una vez instalado.
Comandos de administración de usuarios y grupos locales
- adduser: añade un usuario (modo asistido). Asigna un usuario a un grupo.
- addgroup: añade un grupo (modo asistido).
- useradd: añade un usuario (modo automático). Permite múltiples opciones.
- groupadd: añade un grupo (modo automático).
- deluser: elimina un usuario.
- delgroup: elimina un grupo.
- usermod: modifica opciones de un usuario.
- groupmod: modifica opciones de un grupo.
- id: muestra los grupos de un usuario con su UID y GID.
- groups: muestra los nombres de los grupos de un usuario.
- newgrp: cambia el grupo primario de un usuario temporalmente hasta el nuevo inicio de sesión.
Ficheros de administración de usuarios y grupos locales
- /etc/passwd: usuarios dados de alta en el equipo.
- /etc/group: grupos del equipo.
- /etc/shadow: contraseñas encriptadas y configuraciones de la cuenta de usuario.
- /etc/login.defs: valores predeterminados para los usuarios nuevos.
- /etc/skel: contenido de los directorios para los nuevos usuarios que se crean.
- /etc/adduser.conf: configuraciones por defecto para crear usuarios.
- /etc/deluser.conf: configuraciones para la eliminación de cuentas de usuarios.
La gestión de cuentas de usuario se lleva a cabo a través de dos ficheros de configuración:
- /etc/passwd, que contiene una línea por cada usuario creado en el sistema con la información relevante de cada uno.
- /etc/shadow, que contiene la contraseña de usuarios y parámetros relacionados con la validez de dichas contraseñas.
Formato del fichero passwd
Usuario:x:ID:GID:descripción:directorio_home:Shell
La información es la siguiente:
- Nombre del usuario: identificador de login con el que el usuario accede al sistema.
- Campo reservado para la contraseña: en versiones antiguas de Unix se almacenaba aquí la contraseña encriptada. En versiones recientes aparece una x indicando que la contraseña se almacena en el fichero /etc/shadow. Podemos deshabilitar temporalmente el acceso a un usuario escribiendo un carácter * en este campo.
- ID: identificador numérico del usuario. Debe ser único en el sistema.
- GID: identificador del grupo al que pertenece el usuario por defecto.
Comandos usuarios
- useradd: creación de usuarios.
- passwd: cambio de contraseña.
- groupadd: creación de grupos.
- userdel: eliminar usuarios.
- groupdel: eliminar grupos.
- chown: cambio de propietarios de un fichero o directorio.
- chgrp: cambio de grupo de un fichero.
- umask: cambio de máscara de creación de ficheros.
- groups: visualizar los grupos de un usuario.
- chfn: cambio de la descripción de un usuario.
- chsh: cambiar la shell por defecto.
Opciones comunes de useradd
- -c descripción del usuario.
- -d directorio home (no lo crea, debe existir, salvo que se use -m).
- -e fecha de caducidad de la cuenta.
- -g grupo por defecto (no lo crea, debe existir).
- -G otros grupos.
- -s shell por defecto.
- -u identificador del usuario (ID, no debe existir previamente).
- -m crea el directorio home asignado con la opción -d.
Ejemplo: useradd -d /home/alumno2 -m -g usuarios -s /bin/bash alumno2
Información sobre useradd
- Crea el directorio /home/alumno2 con la opción -m.
- El grupo usuarios debe existir. Si no se utiliza la opción -g, se le asigna el grupo users (GID:100) como grupo por defecto.
- La opción -s especifica la shell, por ejemplo /bin/bash.
- useradd crea un usuario deshabilitado: escribe un carácter exclamación ! en el campo contraseña del fichero /etc/shadow.
- Se habilita utilizando el comando passwd, que establece una contraseña.
- También puede habilitarse eliminando el carácter ! del fichero /etc/shadow. Si se deja el campo en blanco, permite entrar al usuario sin contraseña.
passwd
- Cambia o crea la contraseña de un usuario.
- El sistema pide la contraseña antigua y la nueva dos veces.
- El usuario root puede cambiar la contraseña de cualquier usuario especificando su nombre como parámetro.
- Existen diferentes opciones que permiten limitar la caducidad de una contraseña, deshabilitar la cuenta del usuario, etc.
Ejemplo: passwd alumno2
addgroup / userdel / groupdel
- addgroup: añade un grupo de usuarios al sistema. El grupo se añade al fichero /etc/group.
- userdel: borra cuentas de usuario y realiza los cambios necesarios en los ficheros de configuración de usuarios. Si se desea eliminar también el directorio home del usuario puede utilizarse la opción -r: userdel -r alumno2.
- groupdel: borra un grupo de usuarios del sistema. El grupo se borra del fichero /etc/group.
adduser
- adduser permite el uso de opciones como:
- --home indica la ruta absoluta del directorio personal.
- --ingroup grupo principal del usuario.
- --uid identificador asignado manualmente al usuario.
Baja de usuarios con deluser
- deluser: sólo elimina el usuario. El directorio personal, entre otras cosas, no se elimina por defecto.
- La información a eliminar por defecto se configura en el fichero /etc/deluser.conf.
- REMOVE_HOME: determina si se elimina el directorio personal. Valor 1 para borrar, 0 para no borrar.
- REMOVE_ALL_FILES: elimina todos los ficheros del sistema pertenecientes al usuario eliminado.
usermod
usermod modifica los parámetros de usuarios. Opciones comunes:
- -d cambia el directorio personal.
- -m junto con -d mueve los ficheros del directorio personal al nuevo, y si no existe el nuevo directorio lo crea.
- -e cambia la fecha de expiración de la cuenta.
- -g permite cambiar el grupo principal del usuario.
- -G cambia la lista de grupos a los que pertenece el usuario.
- -a junto con -G añade grupos al usuario.
- -l modifica el login de usuario. El nombre de la carpeta personal también cambia.
- -L bloquea la cuenta. No podrá iniciar sesión hasta desbloquearla con -U.
- -s cambia la shell por defecto.
Comandos básicos de ficheros y directorios
- ls: muestra información sobre ficheros y directorios. Sin parámetros muestra el contenido del directorio actual.
- pwd: muestra la ruta absoluta del directorio actual.
- cd [directorio]: cambiar de directorio. cd .. sube a la carpeta padre.
- mkdir [opciones] directorio/s: crear directorios.
- touch [opciones] fichero: actualiza la fecha de acceso y modificación de ficheros. Si no existe, lo crea vacío.
- rmdir [opciones] directorio/s: borrar directorios si están vacíos.
- cp [opciones] fichero/s destino: copia uno o varios ficheros en otro fichero o en un directorio.
- rm [opciones] [argumentos]: borra ficheros y directorios.
- mv [opciones] fichero/s destino: mueve uno o más ficheros a otros ficheros o directorios. Puede usarse para renombrar ficheros.
- tree: muestra los directorios y ficheros en forma de árbol.
Opciones comunes de ls
- -d información del directorio, no del contenido.
- -a muestra los archivos y directorios que comienzan por un punto.
- -l información en formato largo.
- -i muestra el número de i-nodo del fichero.
- -c información ordenada por día y hora de creación.
- -r muestra la información en orden inverso.
- -R muestra los directorios por debajo del actual de forma recursiva.
Opciones comunes de cp
- -a preserva atributos y copia recursivamente (también permite ver nombres que empiezan por un punto).
- -f fuerza la copia.
- -i pregunta antes de sobrescribir.
- -R o -r copia directorios de forma recursiva.
Opciones comunes de rm y mv
- rm -d borra el directorio aunque no esté vacío.
- rm -i pregunta antes de borrar cada fichero o directorio.
- rm -r o rm -R borra directorios y su contenido de forma recursiva.
- mv -u mueve sólo si el destino no existe o es anterior.
- mv -i pregunta antes de sobrescribir.
- mv -f fuerza la sobrescritura.
De uso de archivos de texto
- cat [fichero/s]: muestra el contenido de los ficheros y concatena.
- more fichero/s: muestra el contenido de los ficheros de forma paginada (usar barra espaciadora para avanzar).
- less fichero/s: similar a more, permite usar las flechas de cursor.
- head [opciones] fichero/s: muestra las primeras líneas (por defecto 10).
- tail [opciones] fichero/s: muestra las últimas líneas (por defecto 10).
- wc: salida con número de líneas, número de palabras y número de bytes.
- grep [opciones] patrón [fichero/s]: muestra las líneas que contienen un cierto patrón.
- cut [opciones] [fichero/s]: muestra sólo ciertas columnas o campos de las líneas.
- sort [opciones] [fichero/s]: ordena el contenido de los ficheros.
Opciones útiles
- head/tail: -n muestra las n primeras/últimas líneas en vez de 10.
- grep: -r busca recursivamente en directorios, -i case-insensitive, -v muestra las líneas que no contienen el patrón.
- cut: -c muestra caracteres especificados, -d usa un delimitador, -f muestra campos indicados, -s no muestra líneas sin delimitador.
- sort: -r orden inverso, -m mezcla ficheros ya ordenados, -u elimina líneas repetidas.
Utilidades sobre archivos y directorios
- file nombre: muestra el tipo de fichero.
- stat: información detallada del fichero.
- find: busca ficheros en el árbol de directorios según criterios.
- locate: busca ficheros por nombre usando una base de datos propia.
- which: ruta absoluta de un comando o aplicación.
- whereis: localiza ficheros ejecutables relacionados con un comando.
- ln: crea enlaces a ficheros o directorios.
- du [opciones] [argumento/s]: muestra el espacio que ocupa cada fichero o directorio. -b muestra el tamaño en bytes.
- df [opciones]: muestra el espacio libre en los dispositivos de almacenamiento y particiones montadas. -a muestra todos, incluso de tamaño 0.
Uso de redirecciones
- > redirecciona la salida estándar a un fichero de texto (sobrescribe).
- >> redirecciona la salida estándar, añadiendo la información al final del fichero.
- 2> redirecciona la salida de errores a un fichero de texto.
- 2>> redirecciona la salida de errores añadiendo la información al final del fichero.
- < redirecciona la entrada estándar desde el fichero que se indica.
- &> redirecciona la salida estándar y la de errores a un fichero de texto (sobrescribe).
- &>> redirecciona la salida estándar y la de errores añadiendo la información al final del fichero.