Guía definitiva de comandos para Linux

comandos linux

Ya seas un usuario iniciado o poco experimentado en el mundo GNU/Linux, debes saber cómo actuar y moverte por la terminal de comandos del sistema operativo, ya que está orientado a darle este uso, aunque siempre te queda la opción de recurrir a la interfaz gráfica como en Windows o Mac.

No obstante, existe una ingente cantidad de comandos, tanto internos (interpretados y ejecutados por la Shell de Linux) como externos (almacenados en archivos).

Por eso en el artículo de hoy haremos una guía de comandos para tareas de configuración, administración y explotación que consideramos más importantes del intérprete de comandos Bash de Linux.

Un comando se compone básicamente de 3 elementos:

nombre_comando argumentos_obligatorios [argumentos_opcionales]

Primero escribiremos el nombre del comando, luego los argumentos obligatorios y finalmente los argumentos opcionales, que los especificaremos o no, depende del resultado que queramos obtener. Los componentes, argumentos y parámetros del comando deberán ir separados entre ellos con espacios en blanco.

Tal vez, en algún caso, se deba ejecutar el comando en modo administrador para poder realizar su función, ya que la acción puede ser bloqueada por defecto de permisos de usuario. En tal caso, deberás añadir el comando «sudo» delante del comando que quieras ejecutar (por ejemplo: “sudo nano /etc/resolv.conf”) o ejecutar el comando «sudo su» para disponer de la Shell de administrador.

ALIMENTACIÓN DEL SISTEMA

  reboot

Este comando sirve para reiniciar el ordenador.

  shutdown now

Con este comando podrás apagar el ordenador al instante.

  shutdown –h horas:minutos &

Usa este comando especificando las horas y minutos que quieras esperar hasta que el ordenador se apague.

  shutdown –c

En caso que hayas planificado un apagado del ordenador con el comando anterior, este comando lo cancela.

INSTALACIÓN Y ACTUALIZACIÓN DE PAQUETES

  apt-cache policy “nombre_paquete”

Este comando permite saber si el paquete (programa) en cuestión se encuentra ya instalado en el sistema y ofrece información tanto de la versión actual del paquete como de la versión disponible en los repositorios.

  apt-get update

Comando usado para actualizar la lista de repositorios y de paquetes disponibles en el sistema, lo que, si se ha modificado la versión del software de algún paquete o se ha añadido algún paquete nuevo a los repositorios, ahora estará disponible para descargar en el sistema. Debe ejecutarse este comando antes de lanzar un apt-get upgrade.

  apt-get upgrade

Una vez hayas ejecutado el comando anterior, podrás lanzar este, que se encargará de actualizar, si ha habido alguna modificación, el software de los paquetes que tengas instalados en el sistema, por ejemplo, a una nueva versión de estos.

  apt-get install “nombre_paquete”

Se usa para descargar e instalar uno o varios paquetes, siempre que estén disponibles en los repositorios del sistema (por ejemplo: “apt-get install nodejs bind9”; instalará dos paquetes, “nodejs” para ejecutar código JavaScript y “bind9” para configurar un servidor de DNS).

De forma similar que con el comando apt-get upgrade, para ejecutar este comando es muy recomendable, si no necesario, ejecutar antes el comando apt-get update.

Con la instalación de un paquete puede realizarse la instalación automática de más paquetes adicionales que son considerados necesarios para el correcto desarrollo de la herramienta instalada en el sistema operativo.

  apt-get remove “nombre_paquete”

La función de este comando es la contraria a la del anterior; se usa para desinstalar paquetes en lugar de instalarlos.

FICHEROS Y DIRECTORIOS

  pwd

Este comando retorna el directorio actual de trabajo, que es, en el que te encuentras al ejecutar el comando.

  cd “nombre_directorio”

Sirve para moverse entre directorios. Por ejemplo: si te encuentras en el directorio raíz y quieres acceder al directorio “/var/log”, deberás ejecutar el comando “cd /var/log”. En caso que quieras volver a atrás en el árbol de directorios, puedes hacerlo con el comando “cd ..”

  ls “nombre_directorio”

Con este comando podrás listar el contenido de un directorio específico. Con el argumento “-a” podrás ver el contenido oculto y con el argumento “-l” podrás obtener datos sobre los permisos, propietario, tamaño, etc. Por ejemplo: “ls –la /home”

  cp “directorio_o_archivo”

Se usa para copiar ficheros y directorios en otro directorio. Por ejemplo, copiar el fichero hosts del directorio /etc en el escritorio del usuario Juan: “cp /etc/hosts /home/Juan/Desktop”

  mv “directorio_o_archivo”

Se usa para mover ficheros y directorios a otro directorio.

Por ejemplo, mover el directorio lib al directorio raíz: “mv /var/lib /”

  touch “nombre_archivo”

Su función básica es modificar la fecha de última modificación o acceso de un fichero o directorio, sin embargo, su uso por defecto consiste en crear un archivo vacío en el directorio actual de trabajo o en uno específico. Se le puede especificar el formato del archivo al final del nombre, con un punto y el formato. Por ejemplo: “touch cuento.txt”

  mkdir “nombre_directorio”

Permite crear un directorio. Por ejemplo: “mkdir midirectorio”

  rm “nombre_archivo”

Elimina un archivo existente.

  rmdir “nombre_directorio”

Elimina un directorio existente.

  nano “nombre_archivo”

Es un editor de texto para poder configurar parámetros de los archivos, implantado en la mayoría de distribuciones Linux.

  vim “nombre_archivo”

Otro editor de texto similar a nano, también implantado en la mayoría de distribuciones Linux.

  cat “nombre_archivo”

Este comando permite mostrar por terminal el contenido de un archivo.

  less “nombre_archivo”

Permite paginar el contenido de un archivo, de manera que puedes navegar por el contenido.

  more “nombre_archivo”

Igual que el comando “less”, pero solo permite navegar hacia adelante por el contenido del archivo.

  grep

Este comando permite filtrar contenido de un archivo o directorio especificando el texto que quieres hallar.

  find “nombre_archivo”

Con este comando podrás realizar la búsqueda de archivos en todo el árbol de directorios que coincidan con el nombre de archivo especificado en el comando.

  chmod “directorio_o_archivo”

Permite modificar los permisos de ejecución, lectura y escritura para usuarios, grupos u otros, sobre un directorio o archivo.

  chown “directorio_o_archivo”

Este comando permite modificar el usuario y grupo propietario de un archivo o directorio.

  gzip “nombre_archivo”

Comprime archivos, manteniendo los mismos permisos, propietarios y fechas de última modificación.

  tar “nombre_archivos”

Este comando sirve para empaquetar archivos.

MONTAR, DESMONTAR Y FORMATEAR SISTEMA DE FICHEROS

  lsblk

Muestra los discos físicos instalados en el sistema, su tamaño y sus particiones.

  mkfs

Este comando sirve para dar formato a una unidad de disco.

  mount /dev/nombre_disco /mnt/nombre_directorio

Permite montar una unidad de disco, tras especificar el dispositivo a montar se debe especificar el punto de montaje de este. El punto de montaje será un directorio ya creado.

  umount “punto_montaje”

Este comando desmonta una unidad de disco del sistema.

USUARIOS Y GRUPOS

  passwd “usuario” “contraseña”

Este comando permite modificar la contraseña de acceso de un usuario.

  su – “usuario”

Permite cambiar de usuario, y ejecutar comandos con sus permisos.

  sudo “comando”

Permite ejecutar un comando como otro usuario.

  useradd “usuario”

Este comando sirve para crear usuarios en el sistema.

  userdel “usuario”

Permite eliminar usuarios del sistema.

  usermod “usuario”

Permite modificar un usuario ya creado en el sistema.

COPIAS DE SEGURIDAD

  rsync “origen” “destino”

Permite realizar copias de archivos y directorios en el mismo sistema o a sistemas remotos.

RED

  ip –a

Este comando permite mostrar información sobre las interfaces de red del equipo.

  iptables

Permite realizar reglas de cortafuegos para filtrar la entrada y salida de paquetes IPv4 y NAT en la red.

  netstat

Este comando muestra información sobre el funcionamiento de la red.

  nmap “nombre_o_IP”

Permite consultar los puertos abiertos de un equipo local o remoto.

  nslookup “nombre_o_IP”

Este comando realiza una consulta DNS a servidores DNS para resolver el nombre de dominio de una dirección IP, o al revés, resolver la dirección IP de un dominio web.

  ping “dirección_IP”

Este comando es usado para comprobar la conexión entre el equipo donde se lanza el comando y el de destino.

  route

Muestra información de las tablas de enrutamiento del equipo y permite su modificación.

  traceroute “dirección_IP”

Muestra las direcciones IP de todos los dispositivos intermediarios en la comunicación del equipo donde se lanza el comando y el de destino.

ANÁLISIS, MONITORIZACIÓN E INFORMACIÓN DEL SISTEMA

  ps

Muestra información sobre los procesos en ejecución, como el número de proceso.

  kill -9 “número_proceso”

Este comando permite finalizar un proceso en ejecución.

  killall -9 “nombre_proceso”

Permite finalizar los procesos y subprocesos asociados a un nombre de proceso.

  uname –a

Muestra toda la información sobre el sistema operativo y el equipo.

  free

Muestra la cantidad total, en uso y disponible de memoria física y de intercambio en el sistema.

Conclusión

Esperamos que con este artículo te hayamos podido ayudar a conocer varios comandos de GNU/Linux importantes y muy útiles y conocer sus utilidades. Quedan muchos más por mencionar, pero este repertorio te ayudará a tener nociones básicas de administración de sistemas Linux.

Si consideras que se ha quedado algo en el tintero o tienes alguna duda, ¡estamos a tu disposición!