Comandos de la terminal de GNU/Linux que deberías conocer (segunda parte, Spanish)
Eduardo Zepeda
Posted on November 4, 2020
Esta es la segunda parte de la lista de comandos para la terminal de GNU/Linux basicos. Si quieres ver los comandos de la entrada anterior por favor entra en la primera parte aquí.
Vamos a empezar con el comando uname, para situarnos un poco en el contexto del sistema operativo con el que estamos trabajando.
uname
Este comando nos muestra información relativa al sistema, es usado frecuentemente para mostrar toda la información agregando la opción '-a' al final de comando.
uname
# Linux
uname -a
# Linux kino 4.9.0-8-amd64 #1 SMP Debian 4.9.144-3.1 (2019-02-19) x86_64 GNU/Linux
who
El comando who, sí, como "the who", nos muestra las personas que están conectadas al momento de ejecutarlo.
who
# usuario tty2 2019-04-29 08:07 (:0)
whoami
El comando whoami nos dice quien es el usuario actual de la sesión
whoami
# usuario
id
El comando id nos muestra información relativa a nuestro usuario, su identificador de usuario (uid), su identificador de grupo(gid) y los grupos a los que pertenece.
id
# uid=1000(eduardo) gid=1000(eduardo) grupos=1000(eduardo),7(lp),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev),108(netdev),113(bluetooth),117(scanner),999(docker)
passwd
Con este comando, al cual parece que se les olvidó la letra "o" y la "r", podemos cambiar nuestra contraseña para acceder al sistema. Una vez ejecutado el comando, este nos pedirá ingresar la contraseña actual para poder cambiar a una nueva.
passwd
# Cambiando la contraseña de usuario.
#(actual) contraseña de UNIX:
du
Que proviene de las siglas de "Disk Usage", nos muestra el espacio que ocupan los directorios y subdirectorios desde donde estamos ejecutando el comando en kilobytes. Puede usarse también para conocer el tamaño de los archivos utilizando la opción '-a' al final del archivo, así como usar kilobytes, megabytes. La opción '-h' decide si mostrarnos kb, mb o gb en función del tamaño, de esta manera se obtiene una medida más amigable con los humanos.
du
# nuestra todos los directorios y su tamaño en kb
# 668 ./carpeta1
# 3065936 ./carpeta1/subarpeta1
# 28080 ./carpeta2/subcarpeta1/subsubcarpeta1
du -a
# nos muestra tambien los archivos
# 4 archivo1
# 40 archivo2
# 668 ./carpeta1
# 3065936 ./carpeta1/subarpeta1
# 28080 ./carpeta2/subcarpeta1/subsubcarpeta1
du -m -a
# lo mismo que el anterior pero en megabytes
# 1 archivo1
# 1 archivo2
# 1 ./carpeta1
# 2995 ./carpeta1/subarpeta1
# 28 ./carpeta2/subcarpeta1/subsubcarpeta1
du -a -h
# la h es de humano
# 4.0K archivo1
# 40K archivo2
# 668K ./carpeta1
# 2.9G ./carpeta1/subarpeta1
# 28M ./carpeta2/subcarpeta1/subsubcarpeta1
df
Nos muestra el tamaño, el espacio ocupado y el espacio disponible del sistema de ficheros en bloques de 1kb y, al igual que el comando anterior, también tiene disponible la opción '-h', para que muestre la información de una manera más amigable para los humanos.
df -h
# S.ficheros Tamaño Usados Disp Uso% Montado en
# udev 3.9G 0 3.9G 0% /dev
# tmpfs 793M 9.5M 783M 2% /run
#/dev/sda4 235G 65G 158G 29% /
# tmpfs 3.9G 55M 3.9G 2% /dev/shm
# tmpfs 5.0M 4.0K 5.0M 1% /run/lock
# tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
# tmpfs 793M 16K 793M 1% /run/user/115
# tmpfs 793M 48K 793M 1% /run/user/1000
free
Nos muestra la cantidad, en kilobytes, de memoria libre y ocupada en el sistema y en la memoria swap. Si queremos una lectura más amigable podemos usar la opción '-h'
free
# total used free shared buff/cache available
# Mem: 8111072 4937452 736592 263560 2437028 2605744
# Swap: 11717628 0 11717628
free -h
# total used free shared buff/cache available
# Mem: 7.7G 4.7G 762M 246M 2.3G 2.5G
# Swap: 11G 0B 11G
su
Hay comandos que no podemos usar si no tenemos los permisos adecuados. El super usuario es aquel usuario que tiene acceso sin restricciones al sistema. Este comando, tras una verificación por contraseña, te permite acceder como super usuario al sistema.
su
# Contraseña:
Si pasamos la verificación nuestro prompt cambiará y nos mostrará una almohadilla al final '#'.
root@nombre-de-tu-maquina:~#
No cierres tu terminal aún, necesitamos quedarnos en modo super usuario para ejecutar los siguientes comandos.
useradd
Nos permite agregar un usuario. Solo disponible para super usuario.
useradd nombre_de_usuario
Si usamos la opción -m creará un directorio en /home con el nombre del usuario y los permisos necesarios
useradd -m nombre_de_usuario
usermod
El comando usermod nos permite modificar la cuenta de un usuario y tiene muchas funciones, entre las que se incluyen:
- Agregar un usuario a un grupo
- Deshabilitar cuentas tras un periodo de tiempo de inactividad
- Modificar el directorio de inicio de sesión de un usuario
- Cambiar el nombre de un usuario
- Mover el directorio home de un usuario a otra localización
Con el comando de abajo usaremos la opción -a para agregar a uno o varios grupos al usuario llamado usuario. Podemos agregar más grupos separándolos por una coma.
usermod -a -G grupo usuario
Con la opción -e podemos establecer una fecha de caducidad a una cuenta de usuario. El formato de la feche debe ser YYYY-MM-DD.
usermod -e 2099-11-11 usuario
userdel
Este comando nos permite eliminar un usuario. Solo disponible para super usuario.
userdel nombre_de_usuario
fdisk
El comando fdisk sirve para mostrar las tablas o particiones del sistema, solo podrá ejecutarse como super usuario. Si lo ejecutas sin argumentos mostrará la página de ayuda del comando. Es usado generalmente con la opción '-l' para listar y ver detalles de las particiones y tablas del sistema. Solo disponible para super usuario.
fdisk
# Modo de empleo:
# fdisk [opciones] cambia tabla de particiones
# fdisk [opciones] -l [] muestra tabla(s) de particiones
#
# Muestra o manipula una tabla de particiones de disco.
fdisk -l
# Disco /dev/sda: 931.5 GiB, 1000204886016 bytes, 1953525168 sectores
# Unidades: sectores de 1 * 512 = 512 bytes
# Tamaño de sector (lógico/físico): 512 bytes / 4096 bytes
# Tamaño de E/S (mínimo/óptimo): 4096 bytes / 4096 bytes
# Tipo de etiqueta de disco: dos
# Identificador del disco: 0x325cbe04
#
# Disposit. Inicio Comienzo Final Sectores Tamaño Id Tipo
#/dev/sda1 * 2048 1026047 1024000 500M 7 HPFS/NTFS/exFAT
#/dev/sda2 1026048 1429233663 1428207616 681G 7 HPFS/NTFS/exFAT
#/dev/sda3 1429235710 1452670975 23435266 11.2G 5 Extendida
#/dev/sda4 1452670976 1953523711 500852736 238.8G 83 Linux
#/dev/sda5 1429235712 1452670975 23435264 11.2G 82 Linux swap / Solaris
apt-cache search
Este comando busca en los repositorios y nos muestra los paquetes que son relevantes para nuestra búsqueda. Solo disponible para super usuario.
apt-cache search chromium
# chrome-gnome-shell - GNOME Shell extensions integration for web browsers
# chromium - web browser
# chromium-driver - web browser - WebDriver support
# ...
apt-cache policy
Con apt-cache policy podremos ver la versión que tenemos instalada de un paquete y las versiones que se encuentran disponibles para instalar. Solo disponible para super usuario.
apt-cache policy chromium
# chromium:
# Instalados: 73.0.3683.75-1~deb9u1
# Candidato: 73.0.3683.75-1~deb9u1
# Tabla de versión:
# *** 73.0.3683.75-1~deb9u1 500
# 500 http://security.debian.org/debian-security stretch/updates/main amd64 Packages
# 100 /var/lib/dpkg/status
# 70.0.3538.110-1~deb9u1 500
# 500 http://ftp.us.debian.org/debian stretch/main amd64 Packages
# 500 http://http.debian.net/debian stretch/main amd64 Packages
apt-cache show
Con apt-cache show podremos ver información sobre los paquetes que tenemos instalados, su versión, tamaño, las librerías de las que depende, sus tags y más. Solo disponible para super usuario.
apt-cache show python3
# Package: python3
# Source: python3-defaults
# Version: 3.5.3-1
# Installed-Size: 67
# Maintainer: Matthias Klose <doko@debian.org>
# Architecture: amd64
# Replaces: python3-minimal (<< 3.1.2-2)
# más información
apt-get install
Ahora toca el turno de instalar otros paquetes que dotarán a nuestro sistema de diversas funcionalidades, desde bases de datos, lenguajes de programación, hasta interfaces gráficas completas o navegadores. Podemos usar este comando para instalar el paquete que deseemos siempre y cuando se encuentre disponible en nuestra lista de repositorios. Solo disponible para super usuario.
apt-get install recordmydesktop
# Instalará el paquete recordmydesktop
Los sistemas operativos más nuevos traen su versión mejorada, sin el "-get", que viene con colores y mejoras.
apt install recordmydesktop
# Instalará el paquete recordmydesktop
apt-get remove
Así como podemos añadir paquetes, también podemos removerlos de nuestro sistema. Este comando se encarga de eso. Solo disponible para super usuario.
apt-get remove recordmydesktop
# Este comando se encarga de remover el paquete de recordmydesktop del sistema
Los sistemas operativos más nuevos traen su versión mejorada, sin el "-get", que viene con colores y mejoras.
apt remove recordmydesktop
# Este comando se encarga de remover el paquete de recordmydesktop del sistema
exit
exit, ejecutado en modo super usuario, nos devuelve el prompt a la normalidad y termina nuestros privilegios como super usuario.
exit
Nuestro prompt normal
usuario@nombre-de-tu-maquina:~$
Si ejecutamos exit nuevamente, esta vez en nuestro usuario de sistema, se cerrará la terminal.
whereis
El comando nos muestra donde se encuentran los binarios, código fuente y manuales del comando que le solicitemos.
whereis node
# node: /home/usuario/.nvm/versions/node/v11.9.0/bin/node
which
Parecido al anterior, pero con una diferencia: este nos muestra donde se ejecutaría el comando en el entorno actual.
Si desconoces que es un entorno virtual te invito a leer mi entrada donde explico los entornos virtuales.
En cambio, si no estamos usando entornos virtuales mostrará el mismo resultado que el anterior.
which python3
# usr/bin/python3
Si activamos un entorno virtual nos cambiará la localización del comando en el entorno virtual.
source virtual/bin/activate
# activemos un entorno virtual para ver que sucede
which python3
#/home/usuario/proyecto/entorno_virtual/bin/python3
uptime
El comando uptime nos dice la hora actual, el tiempo que el sistema operativo lleva corriendo, la cantidad de usuarios están conectados y la carga promedio del sistema hace un minuto, 5 minutos y 15 minutos.
uptime 14:15:10 up 6:08, 1 user, load average: 0.87, 0.87, 0.93
last
Este comando se encarga de mostrarnos los últimos logins en el sistema.
last
# usuario tty2 :0 Mon Apr 29 12:24 still logged in
# reboot system boot 4.9.0-12-amd64 Mon Apr 29 07:22 still running
# usuario tty2 :0 Sun Apr 29 11:27 - down (13:33)
# reboot system boot 4.9.0-12-amd64 Sun Apr 28 06:26 - 01:01 (18:34)
# usuario tty2 :0 Sat Apr 27 22:42 - down (02:07)
w
Este comando de una letra nos muestra los usuarios que están loggeados actualmente en el sistema
w
# 13:48:46 up 1:25, 1 user, load average: 0.73, 0.83, 1.09
# USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
# usuario tty2 :0 12:24 1:25m 1:20m 7.69s /opt/firefox/firefox-bin -contentproc -childID 23 -isForBrowser -prefsLen 9788 -prefMapSize 224870 -parentBuildID 20200708170
last reboot
Last reboot nos muestra el historial de reinicios de nuestro sistema
last reboot
# reboot system boot 4.9.0-12-amd64 Sat Apr 27 07:22 still running
# reboot system boot 4.9.0-12-amd64 Fri Apr 26 06:26 - 01:01 (18:34)
Comando bonus: neofetch
Ahora que sabes como instalar paquetes voy a mostrarte un paquete que muestra información del sistema pero de una manera bastante visual, el nombre del paquete es neofetch.
sudo apt-get install neofetch
Ahora ejecuta neofetch con privilegios de super usuario y mira por ti mismo lo que se imprime en la terminal.
sudo neofetch
Más comandos básicos para la terminal de linux
Otra entrada y muchos más comandos revisados, faltan algunos comandos para cubrir solo una pequeña parte, toma tu tiempo, no hay prisa, levántate de la silla y ve a tomar agua o café. La tercera parte es la última e incluyo más comandos, algunos de ellos un poquito más complicados. entra en este enlace para seguir aprendiendo.
Posted on November 4, 2020
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.
Related
November 4, 2020