LFCA: Aprende comandos básicos del sistema Linux – Parte 3

Este artículo es Parte 3 de la serie LFCA, aquí en esta parte, enumeraremos 24 de los comandos de administración de sistemas Linux más ampliamente utilizados que se requieren para el examen de certificación LFCA.

El sistema Linux proporciona un amplio conjunto de comandos que puede utilizar para administrar y gestionar su sistema y son los siguientes.

1. Comando uptime

El comando uptime muestra cuánto tiempo ha estado funcionando su sistema desde la última vez que se encendió. Sin argumentos, muestra una gran cantidad de información como el tiempo que ha estado funcionando el sistema, usuarios con sesiones activas y carga promedio.

$ uptime

11:14:58 up  1:54,  1 user,  load average: 0.82, 1.60, 1.56

Para obtener la fecha y hora exactas desde que se encendió el sistema, use la bandera -s.

$ uptime -s

2021-03-17 09:20:02

Para obtener la duración exacta en un formato más amigable para el usuario, agregue la bandera -p.

$ uptime -p

up 1 hour, 55 minutes

La salida a continuación muestra que el sistema ha estado activo durante 1 hora y 55 minutos.

2. Comando uname

El comando uname imprime información básica sobre su sistema operativo y hardware subyacente. Sin argumentos, el comando uname solo imprime el sistema operativo, que en este caso es Linux.Agregue la bandera -a para revelar toda la información como el nombre del kernel, versión, lanzamiento, máquina, procesador y sistema operativo.

$ uname

Linux

Agregue la bandera -a para revelar toda la información como el nombre del kernel, la versión, la liberación, la máquina, el procesador y el sistema operativo.

$ uname -a

Linux ubuntu 5.4.0-65-generic #73-Ubuntu SMP Mon Jan 18 17:25:17 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Para mostrar la liberación del kernel, agregue la bandera -r.

$ uname -r

5.4.0-65-generic

Para obtener la versión del kernel, use la bandera -v.

$ uname -v

#50~20.04.1-Ubuntu SMP Mon Jan 18 17:25:17 UTC 2021

Para ver el tipo de kernel que está utilizando, use la bandera -s.

$ uname -s

Linux

Para obtener más comandos, consulte la sección de ayuda de la siguiente manera.

$ uname --help

3. Comando whoami

El comando whoami muestra el usuario actualmente conectado como se muestra a continuación.

$ whoami

tecmint

4. Comando w

El comando w proporciona información sobre los usuarios actualmente conectados.

$ w

11:24:37 up  2:04,  1 user,  load average: 2.04, 1.95, 1.74
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
tecmint  tty7     :0               09:21    2:04m  7:52   0.52s xfce4-session

5. Comando free

El comando free brinda información sobre el uso del espacio de intercambio y la memoria principal. Muestra el tamaño total, el uso y la memoria disponible.

$ free

              total        used        free      shared  buff/cache   available
Mem:        8041516     2806424     1918232      988216     3316860     3940216
Swap:      11534332           0    11534332

Para mostrar la información en un formato más legible para humanos, agregue la bandera -h.

$ free -h

              total        used        free      shared  buff/cache   available
Mem:          7.7Gi       2.7Gi       1.9Gi       954Mi       3.2Gi       3.8Gi
Swap:          10Gi          0B        10Gi

6. Comando top

Este es uno de las herramientas útiles en un sistema Linux. El comando top ofrece una visión de los procesos actualmente en ejecución y también proporciona una visión general en tiempo real del uso de recursos del sistema.

En la parte superior de la salida, obtiene información sobre el tiempo de actividad, tareas en ejecución, CPU y uso de memoria.

$ top
Linux Resource Usage Summary

Vamos a desglosar brevemente lo que representa cada columna.

  • PID – Este es el ID de proceso con el que se identifica un proceso.
  • USER – Este es el nombre de usuario del usuario que inició o generó el proceso.
  • PR – Esta es la prioridad de programación de la tarea.
  • NI – Este es el valor de nice del proceso o tarea.
  • VIRT – Esta es la memoria virtual total que utiliza una tarea.
  • RES – La memoria que utiliza un proceso.
  • SHR – La cantidad de memoria utilizada por un proceso que es compartida por otros procesos.
  • %CPU – Este es el uso de CPU del proceso.
  • %RAM – Porcentaje de uso de RAM.
  • TIME+ – Tiempo total de CPU utilizado por un proceso desde que comenzó a ejecutarse.
  • COMMAND – Este es el nombre del proceso.

Para mostrar procesos específicos de un usuario, ejecute el comando

$ top -u tecmint
Check Linux User Resource Usage

7. Comando ps

El comando ps lista los procesos actualmente en ejecución en la terminal actual junto con sus PID.

$ ps

   PID TTY          TIME CMD
  10994 pts/0    00:00:00 bash
  12858 pts/0    00:00:00 ps

Para mostrar los procesos actualmente en ejecución del usuario, utilice la opción -u como se muestra.

$ ps -u tecmint
Check Linux User Running Processes

8. Comando sudo

A portmanteau for Super User do, sudo is a command-line utility that grants a regular user ability to perform administrative or elevated tasks. Before using the command, ensure that the user is first added to the sudo group. Once added, begin the command with sudo first.

Por ejemplo, para actualizar las listas de paquetes, ejecute el comando:

$ sudo apt update

Se le pedirá la contraseña, tras lo cual se ejecutará la tarea.

Update Ubuntu Using Sudo User

9. Comando echo

El comando echo hace varias cosas. En primer lugar, puede imprimir el valor de una cadena en la terminal como se muestra a continuación.

$ echo “Hey guys. Welcome to Linux”

“Hey guys. Welcome to Linux”

También se puede guardar una cadena en un archivo utilizando el operador de redirección ( > ). Si el archivo no existe, se creará.

$ echo “Hey guys. Welcome to Linux” > file1.txt
$ cat file1.txt

“Hey guys. Welcome to Linux”

Tenga en cuenta que esto sobrescribe un archivo. Para agregar o anexar información, use el operador de doble mayor que ( >> ).

$ echo “We hope you will enjoy the ride” >> file1.txt
$ cat file1.txt

“Hey guys. Welcome to Linux”
We hope you will enjoy the ride

Además, un comando echo se puede utilizar para mostrar variables de entorno. Por ejemplo, para mostrar el usuario actualmente conectado, ejecute:

$ echo $USER

tecmint

Para mostrar la ruta al directorio de inicio, ejecute:

$ echo $HOME

/home/tecmint

10. Comando history

Como su nombre indica, el comando history le proporciona un historial de los comandos que se ejecutaron por última vez en la terminal.

$ history
View Previously Executed Commands

11. Comando head

A veces, es posible que desee echar un vistazo a las primeras líneas de un archivo de texto en lugar de ver el archivo completo. Un comando head es una herramienta de línea de comandos que muestra las primeras líneas de un archivo. De forma predeterminada, muestra las primeras 10 líneas.

$ head /etc/ssh/ssh_config
View Lines in Text File

Puede agregar la bandera -n para especificar el número de líneas a mostrar. Por ejemplo, para mostrar 5 líneas, ejecute el comando de la siguiente manera:

$ head -n 5 /etc/ssh/ssh_config

12. Comando tail

El comando tail es el opuesto exacto del comando head. Muestra las últimas 10 líneas de un archivo.

$ tail /etc/ssh/ssh_config
View Last Lines in Text File

Al igual que el comando head, puede definir el número de líneas a mostrar. Por ejemplo, para ver las últimas 5 líneas de un archivo, ejecute:

$ tail -n 5 /etc/ssh/ssh_config

13. Comando wget

El comando wget es una herramienta de línea de comandos utilizada para descargar archivos a través de la web. Admite múltiples funcionalidades, incluida la descarga de varios archivos, limitar el ancho de banda de descarga, descargar en segundo plano y mucho más.

En su forma básica, descarga un archivo desde una URL dada. En el comando a continuación, estamos descargando el último kernel de Linux.

$ wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.11.4.tar.xz

El comando comienza resolviendo primero la dirección IP de la URL, tras lo cual se conecta a los servidores remotos y comienza a descargar el archivo. El archivo se descarga en el directorio actual.

Wget Download File in Linux

Para guardar un archivo en un directorio diferente, use la bandera -P seguida de la ruta al directorio seguida de la URL. Por ejemplo, para descargar un archivo en el directorio /opt, ejecute el comando.

$ wget -P /opt https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.11.4.tar.xz

Para descargar y guardar un archivo con un nombre diferente, use la bandera -O seguida del nombre de archivo deseado.

$ wget -O latest.tar.xz https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.11.4.tar.xz

14. Comando finger

El comando finger proporciona información breve sobre el usuario que ha iniciado sesión, incluyendo el nombre, shell, directorio de inicio y el tiempo transcurrido desde que el usuario ha iniciado sesión.

$ finger tecmint

Login: tecmint        			Name: Tecmint
Directory: /home/tecmint            	Shell: /bin/bash
On since Wed Mar 17 09:21 (IST) on tty7 from :0
   2 hours 52 minutes idle
No mail.
No Plan.

15. Comando alias

El comando alias te permite asignar tu propio nombre a un comando de Linux con fines de conveniencia. Por ejemplo, para asignar un alias llamado show al comando ls -a, ejecuta el comando alias como se muestra a continuación.

$ alias show=ls -a
$ show
Create Alias in Linux

16. Comando passwd

El comando passwd te permite cambiar tu contraseña. Simplemente ejecuta el comando passwd como se muestra a continuación.

$ passwd

Se te pedirá tu contraseña actual, tras lo cual proporcionarás una nueva contraseña y luego la confirmarás.

Change User Password

Adicionalmente, puedes cambiar la contraseña de otro usuario simplemente pasando el nombre de usuario del usuario como argumento.

$ sudo passwd username

17. Comando groups

Para verificar a qué grupos pertenece un usuario, ejecuta el comando groups de la siguiente manera:

$ groups
OR
$ groups tecmint

tecmint sudo

18. Comando du

¿Quieres vigilar el uso de disco de tus archivos y carpetas? El comando du – abreviatura de uso de disco – es el comando estándar para verificar el uso de disco de archivos y directorios.

El comando sigue una sintaxis básica como se muestra.

$  du OPTIONS FILE

Para ver el uso del disco de forma legible en su directorio actual, ejecute el comando:

$ du -h .

Para verificar el uso del disco en otro directorio, por ejemplo /var/log/ ejecute el comando:

$ du -h /var/log
Check Linux Disk Usage

19. Comando df

El comando df – abreviatura de disco libre – verifica el espacio total de disco, el espacio utilizado y el espacio disponible en varios sistemas de archivos. Sigue la sintaxis mostrada a continuación:

$ df OPTIONS FILE

Las opciones más cruciales son -T y -h. La bandera -T imprime el tipo de sistema de archivos mientras que la bandera -h muestra la salida en un formato legible para humanos.

El comando a continuación lista el espacio libre en disco en todos los sistemas de archivos.

$ df -Th
Check Linux Filesystem Disk Usage

20. Comando chown

El comando chown se utiliza para alterar la propiedad de usuario y grupo de archivos y directorios. Cuando lista el contenido de un directorio usando el comando ls -l, obtendrá una salida similar a la que tenemos aquí.

$ ls -l
List Files in Linux

En las columnas 3 y 4, puede ver claramente tecmint tecmint. El primero de estos apunta al usuario y la segunda entrada se refiere al grupo, que también es tecmint. Cuando se crea un nuevo usuario, se le asigna un nuevo grupo predeterminado, del cual es el único miembro por defecto. Esto indica que el archivo o directorios no se comparten con nadie.

Usando el comando chown, puedes cambiar la propiedad del archivo fácilmente. Simplemente proporciona el nombre del propietario seguido del nombre del grupo, separados por dos puntos ( : ) Esta es una tarea elevada y tendrás que invocar el comando sudo.

Por ejemplo, para cambiar el grupo del file1.txt a james pero mantener el propietario como tecmint ejecuta:

$ sudo chown tecmint:james  file1.txt
$ ls -l
Change File Ownership

Para cambiar tanto el propietario como el grupo, ejecuta el comando:

$ sudo chown james:james  file1.txt
$ ls -l
Change File Ownership in Linux

Para cambiar la propiedad de un directorio, usa la bandera -R para recursivo. Hemos creado un nuevo directorio llamado data y cambiaremos tanto el usuario como el grupo a james.

$ sudo chown -R james:james data
$ ls -l
Change Directory Ownership

21. Comando chmod

El comando chmod se utiliza para establecer o modificar los permisos de archivos o carpetas. Volviendo a la salida del comando ls -l. La primera columna comprende los siguientes caracteres

drwxrwxrwx

El primer carácter ( d ) indica que este es un directorio. Un archivo se representa con un guion ( - ). El resto de los nueve caracteres se dividen en 3 conjuntos de rwx (lectura, escritura, ejecución). El primer conjunto representa el propietario del archivo (u), el segundo representa el grupo (g), y el último conjunto representa todos los otros usuarios.

Hay dos formas de asignar permisos de archivos: Notación numérica y notación simbólica (de texto). Para la notación numérica, cada una de las banderas representa un valor como se muestra.

r = 4

w = 2

x = 1

No permissions = 0

Para obtener los permisos de un archivo, simplemente suma los valores correspondientes en todos los conjuntos. Por ejemplo:

drwxrwxr-x
  • Para el propietario del archivo (u) rwx = 4+2+1 = 7
  • Para el grupo (g) rwx = 4+2+1 = 7
  • Para otros (o) r-x = 4+0+1 = 5

Finalmente, llegamos a la notación 775.

Tomemos otro ejemplo de archivo 1.txt.

-rw-rw-r-- 1 james  james   59 Mar 6 18:03 file1.txt

Aquí, tenemos rw-rw-r–.

Sumémoslo.

  • Para el propietario del archivo (u) rw- = 4+2+0 = 6
  • Para el grupo (g) rw- = 4+2+0 = 6
  • Para otros (o) r– = 4+0+0 = 4

Esto da como resultado 664.

Esto lo estableceremos en 775. Esto otorga al propietario y al grupo del archivo todos los permisos, es decir, rwx, y a otros usuarios solo permisos de lectura y ejecución.

Ejecuta el comando:

$ sudo chmod 775 file1.txt
Change Linux File Permissions

Otra forma de asignar permisos es usando la notación simbólica. Usando la notación simbólica, se utilizan las siguientes banderas para agregar o quitar permisos

  • - – Quita los permisos.
  • + – Agrega los permisos especificados.
  • = – Establece los permisos actuales a los permisos especificados. Si no se especifican permisos después del símbolo =, entonces se eliminan todos los permisos de la clase de usuario especificada.

Por ejemplo, para quitar los permisos de ejecución de todos los conjuntos – propietario del archivo, miembros del grupo y otros usuarios, ejecuta el comando

$ sudo chmod a-x file1.txt
Remove Execute File Permissions

Para asignar a los miembros del grupo solo permisos de lectura y no de escritura y ejecución, ejecuta.

$ sudo chmod g=r file1.txt
Assign Read Permissions

Para quitar los permisos de escritura a otros usuarios, ejecuta.

$ sudo chmod o-r file1.txt
Remove Write Permissions

Para otorgar permisos de lectura y escritura a los miembros del grupo y a otros usuarios, ejecuta:

$ sudo chmod og+rw file1.txt
Assign Read and Write Permissions

Para asignar permisos a directorios, utiliza la bandera -R para establecer permisos de forma recursiva.

Por ejemplo:

$ sudo chmod -R 755 /var/www/html

22. Los comandos poweroff / reboot

El comando poweroff, como su nombre indica, apaga el sistema.

$ poweroff

Otro comando que realiza la misma tarea es el comando shutdown como se muestra.

$ shutdown -h now

La bandera -h significa detener, lo que implica detener el sistema. El segundo parámetro es la opción de tiempo que también se puede especificar en minutos y horas.

El comando a continuación muestra un mensaje a todos los usuarios conectados notificándoles del apagado del sistema programado en 5 minutos.

$ shutdown -h +5 “System is shutting down shortly. Please save your work.”

Para reiniciar el sistema, utiliza el comando reboot como se muestra.

$ reboot

Alternativamente, puedes reiniciar usando el comando shutdown con la opción -r como se muestra.

$ shutdown -r now

23. Comando exit

El comando exit cierra la terminal o sale del shell. Si has iniciado una sesión SSH, la sesión se cierra.

$ exit

24. Comando man

El comando man, abreviatura de manual, muestra las páginas de manual de cualquier comando de Linux. Resulta útil cuando quieres ver cómo se utiliza un comando. Proporciona una descripción detallada del comando, incluyendo un breve resumen, opciones, estados de retorno y autores, por mencionar algunos.

Para ver información sobre el comando ls, ejecuta:

$ man ls
View Linux Command Manual
Conclusión

Esa fue una lista de comandos del sistema que deberían ayudarte a empezar a administrar tu sistema y recopilar varias ideas. Como dice el refrán, la práctica hace al maestro. Y no hace falta decir que practicar estos comandos de vez en cuando te ayudará a mejorar y ser más hábil con tu sistema.

Source:
https://www.tecmint.com/basic-linux-commands/