Portada » Informática » Comandos Esenciales y Conceptos Fundamentales de Linux
Comando: fdisk -l | grep "sd"
/dev
y sus subdirectoriosComando: ls /dev | wc -l
/lib
y sus subdirectorios que tienen permisos de ejecución para cualquier usuario y cuya fecha es de febrero o mayo de cualquier añoComando: find /lib -type f -perm /a=x -newermt "-1 year feb 1" -or -newermt "-1 year may 1" | grep -e "feb" -e "may"
Nota: El comando original ls -la /lib | grep "^...x" | grep -e "feb" -e "may"
no es robusto para la fecha y no busca recursivamente. Se ha adaptado para cumplir mejor la descripción.
ls
Comando: find . -maxdepth 1 -type d | wc -l
Nota: El comando original Dir –d | wc –c
no es un comando estándar de Linux. Se ha sustituido por una alternativa funcional.
fich1
y permitir introducir texto a continuación utilizando cat
Comando: cat >> fich1
dir3
, dir2
y dir1
dependan sucesivamente el uno del otroComando: mkdir -p ../dir3/dir2/dir1
Nota: El comando original mkdir -p fich1/fich2/fich3
crearía la jerarquía en el directorio actual. Se ha ajustado para que sea en el directorio padre y con los nombres solicitados.
.conf
existentes en todo el sistema cuyo tamaño está comprendido entre 500 y 799 bytes, evitando la aparición de mensajes de errorComando: find / -name "*.conf" -type f -size +499c -size -800c 2>/dev/null
Nota: El comando original find / -name "\.conf" -size 500 & 799 2>>null
tenía errores de sintaxis en el nombre del archivo (\.conf
en lugar de *.conf
) y en el rango de tamaño (500 & 799
en lugar de -size +499c -size -800c
) y en la redirección de errores (2>>null
en lugar de 2>/dev/null
). Se ha corregido para ser funcional.
Comando: echo "Hola, soy el usuario $(whoami)"
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sda6 during installation
UUID=b8f38275-9c31-43fb-870f-279dfc2e6abf / ext4 errors=remount-r 0 1
# swap was on /dev/sda5 during installation
UUID=b3ef26ab-605c-4ad9-b379-2f1c1dada472 none swap sw 0 0
Respuesta: La ruta es /etc/fstab
, el fichero fstab.
root:$6$fZ6raxG6$xa4mTmOYxegQP.HQB2KOMSXs1:16541:0:99999:7:::
daemon:*:16400:0:99999:7:::
bin:*:16400:0:99999:7:::
sys:*:16400:0:99999:7:::
sync:*:16400:0:99999:7:::
games:*:16400:0:99999:7:::
Respuesta: La ruta es /etc/shadow
, el fichero shadow.
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
Respuesta: La ruta es /etc/passwd
, el fichero passwd.
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:syslog,alumno
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
Respuesta: La ruta es /etc/group
, el fichero group.
Comando: groups $(whoami)
Comando: ls -l ~/Escritorio
Nota: Se ha utilizado ~
para referirse al directorio personal del usuario actual, que es más genérico que /home/Sergio/Escritorio
.
.jpg
o .gif
que hay en el sistema en el directorio /usr
y sus subdirectoriosComando: find /usr -type f \( -name "*.jpg" -o -name "*.gif" \)
Nota: El comando original find /usr | grep -e "\.jpg" -e "\.gif"
es menos eficiente y puede dar falsos positivos si el nombre del archivo contiene la extensión en su ruta. Se ha corregido para usar las capacidades de find
.
dpkg
en su nombre o en su ruta sin utilizar ls
ni grep
Comando: find / -name "*dpkg*" 2>/dev/null
Nota: El comando original find / -name "dpkg"
solo buscaría archivos o directorios llamados exactamente «dpkg». Se ha ajustado para buscar la palabra en el nombre o ruta.
May 23 10:39:01 alf-Lenovo-B50-70 CRON[3406]: pam_unix(cron:session): session opened for user root by (uid=0)
May 23 10:39:01 alf-Lenovo-B50-70 CRON[3406]: pam_unix(cron:session): session closed for user root
May 23 10:49:51 alf-Lenovo-B50-70 sudo: alf : TTY=pts/2 ; PWD=/home/alf ; USER=root ; COMMAND=/bin/ls -lR /
May 23 10:49:51 alf-Lenovo-B50-70 sudo: pam_unix(sudo:session): session opened for user root by alf(uid=0)
Respuesta: El fichero es auth.log y está en la ruta /var/log/auth.log
.
archivo.tar
Comando: tar -xvf archivo.tar
Comando: find / -type f -name ".*" 2>/dev/null | wc -l
Nota: El comando original ls -aR / | wc -l
cuenta todos los archivos y directorios, incluyendo los ocultos, pero no filtra solo los ocultos y no es específico de archivos. Se ha corregido para buscar solo archivos ocultos.
root
en los directorios /bin
y /sbin
Comando: find /bin /sbin -type f -user root -perm /u=x 2>/dev/null | wc -l
Nota: El comando original ls -l /bin | grep "root"| grep "^...x" | wc -l ; ls -l /sbin | grep "root"| grep "^...x" | wc –l
es funcional pero menos eficiente y robusto que find
para esta tarea. Se ha corregido la sintaxis de wc –l
a wc -l
.
Respuesta: Se necesitan 2 particiones como mínimo: una para el sistema de archivos raíz (/
) y otra para el área de intercambio (swap). Se denominan /dev/sdXN
o /dev/hdXN
(donde X es la letra del disco y N el número de partición).
Respuesta: cp
(con la opción -r
o -R
para directorios).
Respuesta: rm
para archivos y directorios (con la opción -r
o -R
para directorios no vacíos). rmdir
solo para directorios vacíos.
Respuesta: El proceso es init (o systemd en sistemas modernos) y su ruta es /sbin/init
.
Respuesta: nice
.
Respuesta: bg
(o añadiendo &
al final del comando).
xeyes
y desconocemos el PID, ¿con qué comando podemos finalizar el proceso?Respuesta: killall xeyes
.
Respuesta: Típicamente en /mnt
o /media
para montajes temporales, o en puntos de montaje definidos en /etc/fstab
.
Respuesta: /proc/
.
ps
?Respuesta: man ps
.
Respuesta: passwd
(o sudo passwd
para otros usuarios).
Respuesta: groups
(o groups <usuario>
).
Respuesta: .bashrc
, .profile
, .bash_profile
.
Respuesta: last
.
Respuesta: who
(o w
para más detalles).
Respuesta: history
(o history | tail
para las últimas entradas).
Respuesta: cat $HISTFILE
.
/dev
y sus subdirectorios sin que aparezcan mensajes de error?Respuesta: find /dev -type c 2>/dev/null | wc -l
.
.sh
, respetando lo que hubiera en el caso del propietario?Respuesta: chmod o-x,g+r *.sh
.
Respuesta: 1991. Linus Torvalds.
Respuesta: 1985.
Respuesta: 25 de agosto de 1991.
Respuesta: Richard Stallman.
Respuesta: Las dos grandes ramas históricas son System V y BSD.
Respuesta: El Kernel Linux, las Herramientas GNU (compiladores, utilidades de sistema, etc.) y el Shell.
Respuesta: .deb
.
Respuesta: Cinnamon y MATE.
Respuesta: Red Hat Enterprise Linux (RHEL) es ampliamente considerada la principal distribución comercial.
Respuesta: 15 – 150 ms.
Respuesta: Shell.
Respuesta: En hilos (threads).
Respuesta: Mínimo 1 (su grupo primario) y máximo x (depende de la configuración del sistema, pero es un número elevado).
Respuesta: Se denomina grupo primario y, por defecto, suele tener el mismo nombre que el usuario.
Respuesta: Bash (Bourne-Again SHell).
Respuesta: Ficheros.
Respuesta: .
(punto).
Respuesta: El proceso init (PID 1) o systemd.
root
puede manejar?Respuesta: Los valores de prioridad negativos (que corresponden a una mayor prioridad).
Respuesta: /dev/sdc2
(asumiendo discos SATA/SCSI/NVMe).
Respuesta: En un esquema de particionamiento MBR, las particiones lógicas dentro de una partición extendida se numeran a partir de 5. Si /dev/sda
tiene una partición extendida, la segunda partición lógica sería /dev/sda6
.
Respuesta: Ctrl + Alt + F4
.
Respuesta: GDM (GNOME Display Manager).
Respuesta: 0 (cero), que corresponde al teclado.
Respuesta: E/S programada, E/S por interrupciones y Acceso Directo a Memoria (DMA).
Respuesta: Tradicionalmente eth0
, aunque en sistemas modernos puede ser enp0s3
o similar.
Respuesta: GNOME, KDE Plasma, XFCE, MATE, Cinnamon, LXDE, Enlightenment, Budgie.
Variable: $PWD
Variable: $BASH_VERSION
Nota: $SHELL
contiene la ruta al intérprete de comandos predeterminado del usuario, no su versión.
Variable: $RANDOM
Variable: $HOSTNAME
Variable: $(uname -m)
o $MACHTYPE
(aunque esta última es más específica del tipo de máquina).
Variable: $HISTFILESIZE
Variable: $HISTFILE
Ruta: /
Ruta: /root
Ruta: /boot
Ruta: /etc
Ruta: /lib
(o /lib64
, /usr/lib
, etc.)
Ruta: /proc
Ruta: /dev
(para los archivos de dispositivo) y /media
o /mnt
(para puntos de montaje de dispositivos).
Ruta: /tmp
(y /var/tmp
)
Ruta: /var
(específicamente /var/spool
y /var/log
).
Ruta: /etc/gshadow
Ruta: /etc/group
Ruta: /etc/shadow
manolo0047
?Ruta: /home/manolo0047
passwd
y shadow
?Comando: usermod
(para usuarios), chage
(para información de caducidad de contraseña).
Comando: userdel
(con la opción -r
para eliminar también su directorio personal).
Comando: groupadd
.
Comando: groupdel
.
Comando: gpasswd <grupo>
(para administrar miembros y establecer una contraseña para el grupo, aunque el concepto de «contraseña de grupo» es menos común).
Comando: su <nombre_usuario>
(o su - <nombre_usuario>
para iniciar una sesión completa).
Comando: sg <grupo> -c "<comando>"
o newgrp <grupo>
.
Comando: tree
(si está instalado) o find . -type d
.
Comando: pwd
.
Comando: chmod
.
pepe.txt
?Comando: chmod g+r,o+r pepe.txt
.
Respuesta: Se cambia a la terminal 3 con la secuencia de teclas Ctrl + Alt + F3
. El comando tty
muestra la terminal actual.
Comando: rm -rf <directorio>
.
find
)?Comando: locate
(requiere que la base de datos mlocate
esté actualizada con updatedb
).
Comando: file -i <fichero>
.
Comando: clear
y reset
.
Comando: cut
(o awk
).
Comando: wc
.
Comando: ps
(o top
, htop
).
Comando: kill <PID>
(para un proceso específico) o killall <nombre_proceso>
(para todos los procesos con ese nombre).
Comando: fg
.
Comando: nice
.
Comando: time
.
Comando: man
, info
, help
.
.gz
?Comando: gzip
(comprimir) y gunzip
o gzip -d
(descomprimir).
Comando: fdisk
o parted
.
Comando: mount <dispositivo> <punto_montaje>
y umount <punto_montaje>
(o umount <dispositivo>
). mount -a
monta todas las entradas de /etc/fstab
.
Comando: sudo apt update
(en sistemas Debian/Ubuntu).
Comando: sudo apt install <nombre_paquete>
(en sistemas Debian/Ubuntu).
Comando: showkey -s
.
Comando: ip a
(o ifconfig
, aunque obsoleto).
Comando: lscpu
(o cat /proc/cpuinfo
).
Comando: reboot
, halt
, poweroff
(y shutdown
).
Comando: fsck
(File System Check).