Comandos Esenciales de Linux: Gestión Completa del Sistema Operativo
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en
español con un tamaño de 28,68 KB
Sintaxis general:
Comando [opciones] [argumentos]Información del Sistema
date: Muestra la fecha y hora del sistema.cal: Muestra el calendario del mes actual.uname: Muestra información detallada del sistema operativo.logname: Muestra el nombre de usuario del usuario actualmente logueado.id: Muestra el número de identificación (UID y GID) del usuario. Nota: La información de usuarios y grupos se encuentra en/etc/passwdy/etc/group.clear: Limpia la pantalla de la terminal.su: Suplanta la identidad de otro usuario (ej. cambiar a root).tty: Muestra el nombre del terminal utilizado.
Gestión de Apagado, Reinicio y Cierre de Sesión
shutdown -h now: Apaga el sistema inmediatamente (método 1).init 0: Apaga el sistema (método 2).telinit 0: Apaga el sistema (método 3).halt: Apaga el sistema (método 4).shutdown -h hours:minutes &: Planifica el apagado del sistema a una hora específica.shutdown -c: Cancela un apagado planificado del sistema.shutdown -r now: Reinicia el sistema inmediatamente (método 1).reboot: Reinicia el sistema (método 2).logout: Cierra la sesión actual del usuario.
Gestión de Archivos y Directorios
Navegación y Visualización
cd /home: Entra en el directorio 'home'.cd ..: Retrocede un nivel en la jerarquía de directorios.cd ../..: Retrocede dos niveles.cd: Sin argumentos, te lleva al directorio personal del usuario (~).cd ~user1: Va al directorio personal del usuario 'user1'.cd -: Regresa al directorio anterior.pwd: Muestra el directorio de trabajo actual.ls: Lista el contenido de un directorio.tree: Muestra los ficheros y directorios en formato de árbol.
Creación, Eliminación y Movimiento
mkdir nombre_directorio: Crea directorios.rm nombre_fichero: Elimina ficheros.rmdir nombre_directorio: Elimina directorios vacíos.mv origen destino: Renombra o mueve ficheros y directorios.cp origen destino: Copia ficheros.ln -s origen enlace: Crea un enlace simbólico (acceso directo).ln origen enlace: Crea un enlace físico.touch nombre_fichero: Crea un fichero vacío o actualiza la fecha de acceso/modificación.
Información y Búsqueda
file nombre_archivo: Determina el tipo de un archivo.find ruta -name "patron": Busca ficheros en directorios.locate *.ps: Encuentra ficheros con extensión '.ps'. Requiere que la base de datos delocateesté actualizada conupdatedb.whereis halt: Muestra la ubicación de un fichero binario, de ayuda o de código fuente. Por ejemplo, para el comando 'halt'.which halt: Muestra la ruta completa a un binario o ejecutable.
Gestión de Sistemas de Ficheros: Montaje y Desmontaje
mount /dev/hda2 /mnt/hda2: Monta el disco 'hda2' en el punto de montaje '/mnt/hda2'. Verifique la existencia del directorio '/mnt/hda2'; si no existe, debe crearlo.umount /dev/hda2: Desmonta el disco 'hda2'. Asegúrese de salir primero del punto de montaje '/mnt/hda2'.fuser -km /mnt/hda2: Fuerza el desmontaje cuando el dispositivo está en uso.umount -n /mnt/hda2: Realiza el desmontaje sin leer el fichero/etc/mtab. Útil cuando el fichero es de solo lectura o el disco duro está lleno.mount /dev/fd0 /mnt/floppy: Monta un disco flexible (floppy).mount /dev/cdrom /mnt/cdrom: Monta un CD-ROM / DVD-ROM.mount /dev/hdc /mnt/cdrecorder: Monta un CD regrabable o un DVD-ROM.mount /dev/hdb /mnt/cdrecorder: Monta un CD regrabable / DVD-ROM (ej. un DVD).mount -o loop file.iso /mnt/cdrom: Monta un fichero o una imagen ISO.mount -t vfat /dev/hda5 /mnt/hda5: Monta un sistema de ficheros FAT32.mount /dev/sda1 /mnt/usbdisk: Monta un dispositivo USB (pen-drive o memoria) sin especificar el tipo de sistema de ficheros.
Gestión del Espacio en Disco
df -h: Muestra una lista de las particiones montadas y su uso en formato legible.ls -lSr | more: Muestra el tamaño de los ficheros y directorios ordenados por tamaño, paginando la salida.du -sh dir1: Estima el espacio usado por el directorio 'dir1' en formato legible.du -sk * | sort -rn: Muestra el tamaño de los ficheros y directorios ordenados por tamaño (en kilobytes).rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n: Muestra el espacio usado por los paquetes RPM instalados, organizados por tamaño (común en Fedora, Red Hat y derivados).dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n: Muestra el espacio usado por los paquetes instalados, organizados por tamaño (común en Ubuntu, Debian y derivados).
Gestión de Usuarios y Grupos
groups: Muestra los grupos a los que pertenece el usuario actual.groupadd nombre_del_grupo: Crea un nuevo grupo.groupdel nombre_del_grupo: Elimina un grupo.groupmod -n nuevo_nombre_del_grupo viejo_nombre_del_grupo: Renombra un grupo.useradd -c "Nombre Apellido" -g admin -d /home/user1 -s /bin/bash user1: Crea un nuevo usuario ('user1') con un comentario, asignándolo al grupo 'admin', con directorio personal '/home/user1' y shell '/bin/bash'.useradd user1: Crea un nuevo usuario con configuración predeterminada.userdel -r user1: Elimina un usuario ('user1'). La opción '-r' también elimina su directorio personal (Home).usermod -c "Usuario FTP" -g system -d /ftp/user1 -s /bin/nologin user1: Modifica los atributos del usuario 'user1'.passwd: Cambia la contraseña del usuario actual o de otro usuario (si se tienen permisos). Nota: Las contraseñas se guardan en/etc/shadow.newgrp group_name: Cambia el grupo primario del usuario para los ficheros creados recientemente.
Gestión de Permisos de Ficheros
Usa '+' para añadir permisos y '-' para eliminar.
ls -lh: Muestra los permisos de ficheros y directorios en formato legible.ls /tmp | pr -T5 -W$COLUMNS: Divide la salida de 'ls /tmp' en 5 columnas en la terminal.chmod ugo+rwx directory1: Asigna permisos de lectura (r), escritura (w) y ejecución (x) al propietario (u), al grupo (g) y a otros (o) sobre el directorio 'directory1'.chmod go-rwx directory1: Elimina permisos de lectura (r), escritura (w) y ejecución (x) al grupo (g) y a otros (o) sobre el directorio 'directory1'.chown user1 file1: Cambia el propietario de un fichero.chown -R user1 directory1: Cambia el propietario de un directorio y de todos sus contenidos de forma recursiva.chgrp group1 file1: Cambia el grupo de un fichero.chown user1:group1 file1: Cambia el usuario y el grupo propietario de un fichero.chmod u+s /bin/file1: Establece el bit SUID en un fichero binario. Esto permite que el usuario que ejecuta el fichero adquiera los privilegios del propietario del fichero.chmod u-s /bin/file1: Deshabilita el bit SUID en un fichero binario.chmod g+s /home/public: Establece el bit SGID en un directorio. Similar al SUID, pero aplicado a directorios: los nuevos ficheros creados dentro heredarán el grupo del directorio.
Visualización y Procesamiento de Contenido de Ficheros
cat fichero: Muestra el contenido completo de un fichero.more fichero: Muestra el contenido de un fichero paginándolo (avanza solo hacia adelante).less fichero: Similar a 'more', pero permite navegar hacia adelante y hacia atrás.head fichero: Muestra las 10 primeras líneas de un fichero.tail fichero: Muestra las 10 últimas líneas de un fichero.wc fichero: Cuenta líneas, palabras y caracteres de un fichero.grep "patron" fichero: Busca patrones de texto en la entrada o en ficheros.tr conjunto1 conjunto2: Transforma o elimina caracteres.sort fichero: Ordena líneas de texto de ficheros o de la entrada estándar.cut opciones fichero: Extrae secciones (columnas) de cada línea de ficheros.paste fichero1 fichero2: Une líneas de varios ficheros en columnas.join fichero1 fichero2: Une líneas de dos ficheros basándose en un campo común.nl fichero: Numera las líneas de un fichero.tee fichero: Lee la entrada estándar y la escribe tanto en la salida estándar como en uno o más ficheros.
Mantenimiento y Verificación del Sistema de Ficheros
badblocks -v /dev/hda1: Verifica bloques defectuosos en el disco 'hda1'.fsck /dev/hda1: Repara o verifica la integridad del sistema de ficheros Linux en 'hda1'.e2fsck /dev/hda1: Repara o verifica la integridad del sistema de ficheros ext2/ext3/ext4 en 'hda1'.fsck.vfat /dev/hda1: Repara o verifica la integridad del sistema de ficheros FAT en 'hda1'.dosfsck /dev/hda1: Repara o verifica la integridad del sistema de ficheros DOS en 'hda1'.
Formateo de Sistemas de Ficheros
mkfs /dev/hda1: Crea un sistema de ficheros de tipo Linux en la partición 'hda1'.mke2fs /dev/hda1: Crea un sistema de ficheros ext2 en 'hda1'.mke2fs -j /dev/hda1: Crea un sistema de ficheros ext3 (con journaling) en la partición 'hda1'.mkfs -t vfat -F 32 /dev/hda1: Crea un sistema de ficheros FAT32 en 'hda1'.fdformat -n /dev/fd0: Formatea un disco flexible (floppy).mkswap /dev/hda3: Crea un área de intercambio (swap) en la partición 'hda3'.
Gestión de la Memoria SWAP
swapon /dev/hda3: Activa una partición swap.swapon /dev/hda2 /dev/hdb3: Activa múltiples particiones swap.
Copias de Seguridad (Backup)
dump -0aj -f /tmp/home0.bak /home: Realiza una copia de seguridad completa del directorio '/home'.dump -1aj -f /tmp/home0.bak /home: Realiza una copia de seguridad incremental del directorio '/home'.restore -if /tmp/home0.bak: Restaura una copia de seguridad de forma interactiva.rsync -rogpav --delete /home /tmp: Sincroniza directorios, eliminando ficheros en el destino que no existan en el origen.rsync -rogpav -e ssh --delete /home ip_address:/tmp: Sincroniza directorios a través de un túnel SSH.rsync -az -e ssh --delete ip_addr:/home/public /home/local: Sincroniza un directorio local con uno remoto a través de SSH y con compresión.rsync -az -e ssh --delete /home/local ip_addr:/home/public: Sincroniza un directorio remoto con uno local a través de SSH y con compresión.dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr 'dd of=hda.gz': Realiza una copia de seguridad de un disco duro en un host remoto a través de SSH.dd if=/dev/sda of=/tmp/file1: Guarda el contenido de un disco duro ('sda') en un fichero ('/tmp/file1').tar -Puf backup.tar /home/user: Realiza una copia de seguridad incremental del directorio '/home/user'.
Gestión de CD/DVD
cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force: Borra o limpia un CD regrabable.mkisofs /dev/cdrom > cd.iso: Crea una imagen ISO de un CD-ROM en disco.mkisofs /dev/cdrom | gzip > cd_iso.gz: Crea una imagen ISO comprimida de un CD-ROM en disco.mkisofs -J -allow-leading-dots -R -V "Label CD" -iso-level 4 -o ./cd.iso data_cd: Crea una imagen ISO a partir de un directorio.cdrecord -v dev=/dev/cdrom cd.iso: Graba una imagen ISO en un CD/DVD.gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom -: Graba una imagen ISO comprimida en un CD/DVD.mount -o loop cd.iso /mnt/iso: Monta una imagen ISO.cd-paranoia -B: Extrae pistas de audio de un CD a ficheros WAV.cd-paranoia -- "-3": Extrae las 3 primeras pistas de audio de un CD a ficheros WAV.cdrecord --scanbus: Escanea el bus para identificar dispositivos SCSI.dd if=/dev/hdc | md5sum: Calcula el MD5 checksum de un dispositivo, como un CD.
Configuración y Gestión de Red (LAN y Wi-Fi)
ifconfig eth0: Muestra la configuración de una interfaz de red Ethernet.ifup eth0: Activa la interfaz de red 'eth0'.ifdown eth0: Deshabilita la interfaz de red 'eth0'.ifconfig eth0 192.168.1.1 netmask 255.255.255.0: Configura una dirección IP estática para 'eth0'.ifconfig eth0 promisc: Configura 'eth0' en modo promiscuo para capturar todos los paquetes (sniffing).dhclient eth0: Obtiene una dirección IP para 'eth0' mediante DHCP.route -n: Muestra la tabla de enrutamiento.route add -net 0/0 gw IP_Gateway: Configura la ruta predeterminada (gateway).route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1: Configura una ruta estática para la red '192.168.0.0/16'.route del 0/0 gw IP_gateway: Elimina la ruta estática predeterminada.echo "1" > /proc/sys/net/ipv4/ip_forward: Habilita el reenvío de paquetes IP (IP forwarding).hostname: Muestra el nombre del host del sistema.host www.example.com: Resuelve un nombre de host a una dirección IP (método 1).nslookup www.example.com: Resuelve un nombre de host a una dirección IP y viceversa (método 2).ip link show: Muestra el estado de enlace de todas las interfaces de red.mii-tool eth0: Muestra el estado de enlace de 'eth0'.ethtool eth0: Muestra estadísticas detalladas de la interfaz de red 'eth0'.netstat -tup: Muestra todas las conexiones de red activas y sus PIDs.netstat -tupl: Muestra todos los servicios de red en escucha en el sistema y sus PIDs.tcpdump tcp port 80: Captura y muestra todo el tráfico HTTP.iwlist scan: Muestra las redes inalámbricas disponibles.iwconfig eth1: Muestra la configuración de una interfaz de red inalámbrica.
Interoperabilidad con Redes Windows (SAMBA)
nbtscan ip_addr: Resuelve nombres NetBIOS en la red.nmblookup -A ip_addr: Resuelve nombres NetBIOS a partir de una dirección IP.smbclient -L ip_addr/hostname: Muestra los recursos compartidos (shares) de un host remoto en Windows.
Gestión de Cortafuegos (IPTables)
iptables -t filter -L: Muestra todas las cadenas de la tabla 'filter'.iptables -t nat -L: Muestra todas las cadenas de la tabla 'nat'.iptables -t filter -F: Limpia todas las reglas de la tabla 'filter'.iptables -t nat -F: Limpia todas las reglas de la tabla 'nat'.iptables -t filter -X: Elimina cualquier cadena creada por el usuario.iptables -t filter -A INPUT -p tcp --dport telnet -j ACCEPT: Permite las conexiones Telnet entrantes.iptables -t filter -A OUTPUT -p tcp --dport http -j DROP: Bloquea las conexiones HTTP salientes.iptables -t filter -A FORWARD -p tcp --dport pop3 -j ACCEPT: Permite las conexiones POP3 a través de la cadena 'FORWARD'.iptables -t filter -A INPUT -j LOG --log-prefix "DROP INPUT": Registra los paquetes que coinciden con la cadena 'INPUT'.iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE: Configura un PAT (Port Address Translation) en 'eth0', ocultando las direcciones IP de origen de los paquetes salientes.iptables -t nat -A PREROUTING -d 192.168.0.1 -p tcp -m tcp --dport 22 -j DNAT --to-destination 10.0.0.2:22: Redirecciona los paquetes dirigidos a '192.168.0.1' en el puerto 22 hacia '10.0.0.2:22'.
Monitorización y Depuración del Sistema
top: Muestra las tareas de Linux que consumen más CPU en tiempo real.ps -eafw: Muestra todos los procesos de Linux con formato completo.ps -e -o pid,args --forest: Muestra los procesos de Linux en un formato jerárquico (árbol).pstree: Muestra un árbol de procesos del sistema.kill -9 ID_Proceso: Fuerza el cierre de un proceso (terminación inmediata).kill -1 ID_Proceso: Envía la señal SIGHUP a un proceso, a menudo utilizada para que recargue su configuración.lsof -p $$: Muestra una lista de ficheros abiertos por el proceso actual.lsof /home/user1: Muestra una lista de ficheros abiertos en una ruta específica del sistema.strace -c ls >/dev/null: Muestra un resumen de las llamadas al sistema realizadas por un proceso.strace -f -e open ls >/dev/null: Muestra las llamadas a la biblioteca (syscalls) relacionadas con la apertura de ficheros.watch -n1 'cat /proc/interrupts': Muestra las interrupciones del sistema en tiempo real (cada segundo).last reboot: Muestra el historial de reinicios del sistema.lsmod: Muestra los módulos del kernel cargados.free -m: Muestra el estado de la memoria RAM en megabytes.smartctl -A /dev/hda: Monitoriza la fiabilidad de un disco duro a través de SMART (Self-Monitoring, Analysis and Reporting Technology).smartctl -i /dev/hda: Verifica si SMART está activado en un disco duro.tail /var/log/dmesg: Muestra los últimos eventos del proceso de carga del kernel.tail /var/log/messages: Muestra los últimos eventos generales del sistema.
Comandos Utilitarios Adicionales
apropos ...keyword: Muestra una lista de comandos relacionados con una palabra clave. Útil cuando se sabe qué hace un programa, pero se desconoce su nombre exacto.man comando: Muestra las páginas del manual en línea para un comando. Por ejemplo, 'man ping'.whatis ...keyword: Muestra una descripción concisa de lo que hace un comando.mkbootdisk --device /dev/fd0 `uname -r`: Crea un disquete de arranque (bootable).gpg -c file1: Cifra un fichero con GNU Privacy Guard (GnuPG).gpg file1.gpg: Descifra un fichero con GnuPG.wget -r www.example.com: Descarga un sitio web completo de forma recursiva.wget -c www.example.com/file.iso: Descarga un fichero con la capacidad de reanudar descargas interrumpidas.echo 'wget -c www.example.com/files.iso' | at 09:00: Programa una descarga para que comience a una hora específica (ej. 09:00).ldd /usr/bin/ssh: Muestra las bibliotecas compartidas requeridas por un programa (ej. 'ssh').alias hh='history': Crea un alias para un comando (ej. 'hh' para 'history').chsh: Cambia el shell de inicio de sesión del usuario.chsh --list-shells: Muestra una lista de los shells disponibles en el sistema.who: Lista los usuarios conectados actualmente, su terminal y el tiempo de conexión.whoami: Muestra el nombre de usuario efectivo.
Obtención de Ayuda para Comandos
man comando: Manual de referencia completo.info comando: Información detallada y estructurada.comando --help: Resumen rápido de opciones.
Redireccionamiento de Entrada/Salida
<: Redirecciona la entrada estándar desde un fichero.>: Redirecciona la salida estándar a un fichero, sobrescribiendo su contenido.>>: Redirecciona la salida estándar a un fichero, añadiendo al final.2>: Redirecciona la salida de error estándar a un fichero, sobrescribiendo su contenido.2>>: Redirecciona la salida de error estándar a un fichero, añadiendo al final.
Conceptos Fundamentales del Sistema de Ficheros
- Fichero: Conjunto de información almacenada en un dispositivo, disco o cinta.
- Ficheros de Dispositivo: Representaciones de hardware en el directorio
/dev. - Tipos de Dispositivo:
c(carácter): Envía/recibe datos carácter a carácter (ej. terminales).b(bloque): Envía/recibe datos en bloques (ej. discos duros).
- Números de Dispositivo:
- Major: Número principal que identifica el tipo de dispositivo (controlador).
- Minor: Número secundario que identifica un dispositivo específico manejado por un controlador.
- Ejemplos de Nombres de Dispositivo:
- Disquetera:
fd(ej./dev/fd0) - Disco Duro:
hd(IDE),sd(SATA/SCSI/USB) - USB:
sdb(osdc,sdd, etc.) - Terminales:
tty(ej./dev/tty1)
- Disquetera:
Componentes de un Sistema de Ficheros
- Bloque de Arranque (Boot Block): El primer bloque de un sistema de ficheros, utilizado para iniciar el sistema operativo.
- Superbloque: Contiene metadatos cruciales sobre el sistema de ficheros (tamaño, estado, etc.).
- Tabla de Inodos: Por cada fichero o directorio, existe un inodo asociado que contiene metadatos y un número que identifica su ubicación en el área de datos.
- Información Contenida en un Inodo:
- Identificador del dispositivo que alberga el sistema de ficheros.
- Número de inodo que identifica el archivo dentro del sistema de ficheros.
- Longitud del archivo en bytes.
- ID de usuario del propietario.
- ID de grupo del propietario.
- Modo de acceso (permisos de lectura, escritura y ejecución para propietario, grupo y otros).
- Marcas de tiempo: última modificación (mtime), último acceso (atime) y última alteración del inodo (ctime).
- Número de enlaces: Cantidad de nombres (enlaces físicos) asociados a este inodo. Cuando este contador llega a cero, el sistema operativo puede eliminar el inodo y el contenido del archivo.
- Área de Datos: Ocupa el resto del disco y es donde se almacena el contenido real de los ficheros y directorios.