Skip to main content

Los mejores comandos para GNU/Linux que deberías conocer

Los mejores comandos para GNU/Linux que deberías conocer

03/09/2016 - 08:03

Los mejores comandos para GNU/Linux que deberías conocer

Usar el terminal en Ubuntu o en cualquier otra distribución GNU/Linux es uno de los grandes temores de aquellos usuarios que se inician en el descubrimiento de los sistemas operativos de software libre y abierto, que suelen estar más acostumbrados a las interfaces gráficas que a las líneas de comandos.

Sin embargo, conocer los comandos más básicos de Linux puede evitarte pasar por un laberinto de ventanas para llevar a cabo cualquier configuración o cambio en el sistema que, desde el terminal, tan solo supondría escribir algún que otro comando, siendo al final incluso más sencillo recordar el comando y hacerlo desde el terminal que aprenderse la ruta de ventanas hasta llegar a la opción que permite realizar el mismo cambio desde la interfaz gráfica.

Básicamente, conociendo los comandos adecuados, ahorrarás tiempo y esfuerzo y podrás realizar las tareas más básicas de la forma más efectiva posible.

Hemos clasificado los comandos del terminal de GNU/Linux más importantes en diferentes categorías según su uso; gestión de archivos en Linux, gestión unidades de almacenamiento y sistemas de archivos, comandos Linux para la gestión de redes, así como los comandos más útiles para la actualización de Linux y gestión de paquetes de software.

Como siempre, te invitamos a que hagas tu aportación en los comentarios por si nos hemos olvidado de alguno.

Steam ya está oficialmente en Linux

[Fuente: gutl.jovenclub]

Comandos para información y apagado del sistema

Comandos para información y apagado del sistema

En ocasiones, puedes necesitar conocer algunos detalles sobre tu ordenador, configuraciones de tu sistema operativo y sus componentes para instalar un determinado tipo de programas o para monitorizar su rendimiento de tu ordenador.

Esta información sobre tu equipo está accesible desde la interfaz gráfica, pero con estos comandos obtendrás la información de tu sistema desde el terminal de Linux de una forma mucho más rápida que desde la interfaz gráfica.

Escribiendo en un terminal de Linux el comando adecuado se mostrará inmediatamente la información sobre el componente o del proceso que necesitas, y sin necesidad de navegar por todo el sistema.

Cómo crear una Live-USB para una distro Linux

  • arch: mostrará la arquitectura de tu ordenador.
  • uname -r: mostrará la versión del kernel que está usado.
  • dmidecode -q: mostrará los componentes de hardware presentes en el sistema.
  • hdparm -i /dev/hda: mostrará las características del disco duro que le indiques.
  • cat /proc/cpuinfo: mostrará la información sobre la CPU.
  • cat /proc/meminfo: verificará el uso de memoria RAM.
  • free -m: muestra el estado y uso de la memoria RAM.
  • cat /proc/net/dev: mostrará los adaptadores de red y sus estadísticas.
  • cat /proc/mounts: mostrará el sistema de archivos montado.
  • lspci -tv: mostrará los dispositivos PCI presentes.
  • lsusb -tv: mostrará los dispositivos USB conectados.
  • top: mostrará las tareas de Linux usando la mayoría de CPU.
  • date: mostrará la fecha actual del sistema.
  • cal 2016: mostrará el calendario completo del año indicado. En este caso 2016.
  • cal 05 2016: similar a la anterior, pero solo mostrará el mes del año indicado. En este caso, mayo de 2016.
  • man ping: mostrará las páginas del manual de ayuda para el comando indicado, en este caso el comando ping.

Los 5 mejores reproductores multimedia para Linux

Utilizando los comandos adecuados también podrás forzar el apagado o reinicio de tu ordenador desde el terminal de Linux. Esto, en ocasiones puede ser incluso más útil que hacerlo desde la interfaz gráfica ya que, por ejemplo, podrás programar el apagado de tu equipo para más tarde algo que desde la interfaz gráfica requiere instalar un software adicional.

  • shutdown -h now: apagará el sistema.
  • halt: Otra forma de apagar el sistema es utilizar este comando.
  • shutdown -h 18:55 &: Este comando programará el apagado planificado del sistema a la hora indicada. En este caso, a las 18:55.
  • shutdown -c: cancelar un apagado planificado del sistema.
  • shutdown -r now: reiniciará tu equipo inmediatamente.
  • reboot: otro comando con el que reiniciar tu equipo.
  • last reboot: mostrará un historial de cuando se realizaron los últimos reinicios.
  • logout: cerrará tu actual sesión.

Muévete por el terminal de Linux

Muévete por el terminal de Linux

Una de las primeras cosas que debes aprender para sacarle todo el provecho a tu distro GNU/Linux es a utilizar los comandos necesarios para moverte de un directorio a otro desde el terminal de Linux.

El terminal de Linux te mostrará en todo momento en qué directorio te encuentras, pero tendrás que aprender a moverte entre los directorios del sistema. Este es uno de los puntos críticos del terminal y uno de los principales motivos de bloqueo para los usuarios más inexpertos que no son capaces de llegar hasta las distintas ubicaciones.

  • cd /home/usuario: Te llevará directamente hasta la ruta que indiques, en este caso hasta el directorio “usuario”.
  • cd ..: retrocederás un nivel en la jerarquía de directorios.
  • cd ../..: retrocederás 2 niveles en la jerarquía de directorios.
  • cd: te llevará al directorio raíz de esa unidad.
  • cd ~usuario: irás al directorio principal del usuario que indiques.
  • cd –: regresarás al directorio anterior.
  • pwd: mostrará la ruta del directorio donde te encuentras actualmente.
  • ls: mostrará los archivos y carpetas del directorio donde te encuentras.
  • ls -l: mostrara los detalles de archivos y carpetas del directorio actual.
  • ls -a: mostrará los archivos ocultos del directorio actual.

Instala otro Linux en tu Linux... ¡o incluso un Windows!

Comandos para la gestión de archivos y directorios

Comandos para la gestión de archivos y directorios

Es muy sencillo crear, copiar, mover o borrar archivos y carpetas desde el terminal de Linux. Para ello solo necesitarás utilizar una serie de comandos básicos para Linux con los que podrás gestionar tus archivos sin necesidad de utilizar la interfaz gráfica de tu distro GNU/Linux.

Una vez te muevas con soltura por todo el sistema de directorios de tu sistema operativo, llegará el momento de conocer los comandos más útiles para crear, mover, copiar o eliminar archivos desde el terminal de Linux. Con estos comandos para el terminal de Linux descubrirás que hay otras formas de gestionar tus archivos además de arrastrarlos de una ventana a otra.

  • mkdir Directorio: creará una nueva carpeta o directorio con nombre que le indiques. En este caso, “Directorio”.
  • mkdir Directorio1 Directorio 2: creará dos carpetas simultáneamente.
  • rmdir Directorio: borrará la carpeta llamada “Directorio”.
  • rm -rf Directorio: eliminará una carpeta llamada “Directorio” y todo su contenido.
  • mv Viejodirectorio Nuevodirectorio: renombrará o moverá un archivo o carpeta.
  • cp Archivo: copiará un archivo.
  • cp Archivo1 Archivo2: copiará dos archivos simultáneamente.
  • cp -a Directorio: copiará una carpeta completa, en este caso “Directorio”.
  • cp -a Directorio1 Directorio2: copiará dos directorios simultáneamente.
  • ln -s Archivo Enlacearchivo: creará un enlace simbólico con un determinado nombre, al archivo o directorio indicado.
  • ln Archivo Enlacearchivo: creará un enlace físico con el nombre indicado al archivo o directorio indicado.

Cómo instalar TeamViewer en Linux

Otra de las tareas rápidas de gestión de archivos desde el terminal de Linux es la de encontrar archivos en tu sistema. Para conseguirlo solo tendrás que usar estos comandos para buscarlos por formato de archivo, por nombre, etc.

  • find / -name Archivo: buscará ese archivo o directorio comenzado por la raíz del sistema.
  • find / -user Usuario: buscará archivos y directorios propiedad del usuario “Usuario”.
  • find /home/usuario -name \*.bin: buscará todos los archivos con la extensión que le indiques, en este caso “. bin”, dentro del directorio indicado, que en el ejemplo es “/ home/usuario”.
  • find /usr/bin -type f -mtime -5: buscará los archivos creados o cambiados en el sistema dentro de los últimos “5” días.
  • whereis firefox: mostrará la ubicación de un archivo binario, de ayuda o fuente. En este caso pregunta dónde está “Firefox”.
  • which firefox: mostrará la ruta completa al binario/ejecutable que le indiques.

Comandos para comprimir y descomprimir archivos y carpetas

Comandos para comprimir y descomprimir archivos y carpetas

Comprimir y descomprimir archivos y carpetas desde el terminal de Linux te ayudará a optimizar las operaciones de almacenaje de archivo o para gestionar los archivos que descargas de Internet.

Bastará un simple comando en el terminal de Linux para comprimir o descomprimir archivos, sin necesidad de acceder a la interfaz gráfica del programa que se encarga de hacerlo.

Por lo general, comprimir o descomprimir estos archivos es tan sencillo como indicar el formato de archivo en el que se quiere comprimir (zip, rar, gzip, bzip, etc) e indicar qué archivo o archivos se deben comprimir, aunque en ocasiones es posible que tengas que instalar el paquete del compresor antes de utilizarlo, algo que el propio terminal de Linux te indicará cómo hacer.

Qué es Kali Linux y qué puedes hacer con él

  • bunzip2 Archivo.bz2: descomprimirá el archivo con formato .bz2 indicado. En este caso será uno llamado “Archivo.bz2”.
  • bzip2 Archivo: comprimirá a formato bzip2 un archivo existente llamado “Archivo”.
  • gunzip Archivo.gz: descomprimirá un archivo con formato .gz indicado. En este caso “Archivo.gz”.
  • gzip Archivo: comprimirá en formato gzip un archivo llamado “Archivo”.
  • gzip -9 Archivo: comprime un archivo existente con un ratio de compresión máxima.
  • rar a Archivo.rar test_file: creará un archivo comprimido con formato RAR llamado “Archivo.rar”.
  • rar a Archivo.rar Archivo1 Archivo2 Directorio1: comprimirá los archivos y directorios indicados (Archivo1, Archivo2, Directorio1) simultáneamente y creará un archivo comprimido con formato RAR.
  • rar x Archivo1.rar: descomprimirá el archivo RAR indicado.
  • unrar x Archivo1.rar: descomprimirá el archivo con formato RAR indicado.
  • zip Archivo1.zip Archivo1: creará un archivo comprimido en zip a partir del archivo indicado.
  • zip -r Archivo1.zip f Archivo1 Archivo2 Directorio1: comprimirá los archivos y directorios indicados (Archivo1, Archivo2, Directorio1) simultáneamente y creará un archivo comprimido con formato zip.
  • unzip Archivo1.zip: descomprimirá un archivo zip ya existente.

Comandos para gestión de unidades y discos

Comandos para gestión de unidades y discos

La gestión de las unidades de disco y particiones mediante comandos desde el terminal es una de las funciones más habituales en Linux.

Cualquier configuración en la que estén involucrados montajes de discos duros, particiones o formateos, requiere pasar por diversas ventanas de la interfaz gráfica, mientras que desde el terminal supone poco menos que escribir un par de comandos.

Actualmente, la mayoría de las distros GNU/Linux cuentan con sistemas de automontaje para las unidades, de forma que cuando las conectas al equipo, el sistema las detecta y las monta automáticamente mostrándolas en la interfaz gráfica. No obstante, el montaje de las unidades es una de las piedras angulares de la gestión de los sistemas Linux y conocer su funcionamiento te sacará de muchos problemas.

  • mount /dev/hda2 /mnt/hda2: montará un disco llamado hda2 en el directorio /mnt/hda2 que debe crearse previamente.
  • umount /dev/hda2: desmontará un disco llamado hda2.
  • fuser -km /mnt/hda2: forzará el desmontaje del disco aun cuando éste está ocupado.
  • umount -n /mnt/hda2: desmontará la unidad sin leer el archivo /etc/mtab. Este comando resulta muy útil cuando el disco duro está lleno.
  • mount /dev/fd0 /mnt/floppy: montará un disco flexible (floppy).
  • mount /dev/cdrom /mnt/cdrom: montará un CDRom/DVDRom.
  • mount -o loop /home/usuario/imagen.iso /media/iso: montará un determinado archivo o imagen ISO en la ubicación /media/iso que se ha creado previamente.
  • mount -t vfat /dev/hda5 /mnt/hda5: montará un sistema de archivos FAT32.
  • mount /dev/sda1 /mnt/usbdisk: montará una unidad USB sin especificar el tipo de sistema de archivos.
  • df -h: mostrará una lista de las particiones montadas en el sistema.
  • smartctl -A /dev/hda: monitoriza la fiabilidad de un determinado disco duro a través de su SMART.
  • smartctl -i /dev/hda: comprobará si la función SMART está activada en un determinado disco duro.

11 usos sorprendentes de Linux

Paralelamente al montaje de las unidades y discos duros en Linux, desde el terminal también puedes acceder a herramientas de análisis y reparación de discos y sistemas de archivos en Linux. Conociendo algunos de los siguientes comandos te ahorrarás tener que instalar programas y herramientas que al final harán el mismo trabajo.

  • badblocks -v /dev/hda1: comprobará los bloques defectuosos en el disco llamado hda1.
  • fsck /dev/hda1: comprobará y reparará la integridad del sistema de archivos de Linux en el disco hda1.
  • fsck.ext2 /dev/hda1: comprobará y reparará la integridad del sistema de archivos ext 2 en el disco hda1. Si sustituyes .ex2 por .ext3, vfat o msdos, lo realizará en los sistemas de archivos correspondientes.

Cinco juegazos para divertirte en Linux

El terminal de Linux también te permite formatear las unidades de forma rápida y sencilla escribiendo un solo comando que formateará la unidad indicada en un abrir y cerrar de ojos.

  • mkfs /dev/hda1: creará un sistema de archivos para Linux en la partición hda1.
  • mke2fs /dev/hda1: creará un sistema de archivos con formato ext2 en la partición hda1.
  • mke2fs -j /dev/hda1: creará un sistema de archivos con formato ext3 (periódico) en la partición hda1.
  • mkfs -t vfat 32 -F /dev/hda1: creará un sistema de archivos con formato FAT32 en la partición indicada.
  • mkswap /dev/hda3: creará un sistema de archivos de tipo swap en la partición indicada.
  • hdparm -tT /dev/sda: realizará una prueba de lectura en el disco duro que le indiques.

Comandos para la gestión de grupos, usuarios y permisos

Comandos para la gestión de grupos, usuarios y permisos

Si no gestionas los sistemas de una empresa, es más que probable que en tu ordenador solo tengas uno o dos usuarios, pero en ocasiones pueden surgir conflictos con los permisos de archivo que te impedirán borrar, copia o mover un archivo en tu ordenador.

Escribiendo el comando adecuado en el terminal de Linux conseguirás asignar los permisos correctos a los archivos para mantener en todo momento el control absoluto de tu equipo.

Estos comandos no se utilizan demasiado en el día a día, pero como te decimos, te vendrán como caídos del cielo cuando, inexplicablemente, tienes problemas para borrar un archivo bloqueado o no puedes modificar alguna configuración de tu Linux.

  • cat /etc/passwd: mostrará los usuarios presentes en el equipo.
  • cat /etc/group: mostrará los grupos presentes en el equipo
  • groupadd nombre_del_grupo: crear un nuevo grupo en el sistema.
  • groupdel nombre_del_grupo: borrará un grupo ya existente en el sistema.
  • groupmod -n nuevo_grupo viejo_grupo: renombrará un grupo ya existente.
  • useradd -c “Nombre usuario” -g admin -d /home/nuevousuario -s /bin/bash nuevousuario: Creará un nuevo usuario perteneciente al grupo “admin”.
  • useradd Usuario1: creará un nuevo usuario.
  • userdel -r Usuario1: borrará un usuario y su directorio Home.
  • passwd: cambiará tu contraseña de usuario.
  • passwd Usuario1: cambiará la contraseña del usuario indicado (solo permitido para el usuario root).
  • chage -E 2016-12-31 Usuario1: establece una caducidad para la contraseña de un usuario determinado. En este caso expira el 31 de diciembre de 2016.

MaruOS convierte tu móvil Android en un PC con Linux

Para gestionar los atributos y permisos de los archivos en Linux, solo tendrás que escribir el comando adecuado para conseguirlo. Estos son algunos de los más habituales:

  • ls -lh: Mostrará los permisos de un archivo.
  • chown Usuario1 Archivo1: cambiará el propietario de un determinado archivo.
  • chown -R Usuario1 directory1: cambiará el propietario de un determinado directorio y de todos los archivos y subdirectorios contenidos dentro.
  • chattr +i Archivo1: convierte el archivo en invariable, por lo que no puede ser eliminado, alterado, renombrado, ni enlazado.
  • chattr +s Archivo1: permite que un archivo sea borrado de forma segura.
  • lsattr: mostrará los atributos especiales.

Comandos para la gestión de paquetes

Comandos para la gestión de paquetes

Instalar y actualizar paquetes desde el terminal de Linux es mucho más rápido que hacerlo desde la interfaz gráfica del gestor de paquetes de tu distro GNU/Linux.

De hecho, para actualizar todos los paquetes que tienes instalados en tu distro solo necesitarás un comando, al igual que, por ejemplo, actualizar Ubuntu a su última versión, manteniendo intacto el resto del sistema.

En este punto debemos diferenciar los comandos en función del sistema o gestor de paquetes que utilice tu distro Linux: RPM, DEB o YUM.

A continuación, te mostramos los mejores comandos para actualizar o instalar los paquetes de Linux en los distintos formatos de paquetes de software.

Comandos para paquetes con formato .DEB (Debian, Ubuntu y derivadas,etc.):

  • dpkg -i paquete.deb: instalará o actualizará un paquete deb.
  • dpkg -r paquete: eliminará un determinado paquete deb del sistema.
  • dpkg -l: mostrará todos los paquetes deb instalados en el sistema.
  • dpkg -s paquete: mostrará información del paquete indicado instalado en el sistema.

Gestor de paquetes APT

  • apt-get install paquete: instalará o actualizará un determinado paquete deb.
  • apt-cdrom install paquete: instalará o actualizará un paquete deb desde un cdrom.
  • apt-get update: actualizará la lista de paquetes instalados.
  • apt-get upgrade: actualizará todos los paquetes instalados.
  • apt-get remove paquete: eliminará el paquete deb indicado del sistema.
  • apt-get check: verificará la correcta resolución de las dependencias.
  • apt-get clean: limpiará la cache desde los paquetes descargados.

Cómo instalar Linux Ubuntu en 15 minutos y sin complicaciones

Comandos para paquetes con formato .RPM (Mageia, Mandriva, Fedora, SUSE Linux,etc.):

  • rpm -ivh paquete.rpm: instalará un paquete rpm.
  • rpm -ivh –nodeeps paquete.rpm: instalará un paquete rpm ignorando las peticiones de dependencias.
  • rpm -U paquete.rpm: actualizará un paquete rpm sin cambiar la configuración de los ficheros.
  • rpm -F paquete.rpm: actualizará un determinado paquete rpm solamente si este está instalado.
  • rpm -e paquete.rpm: eliminará el paquete rpm indicado.
  • rpm -qa: mostrará todos los paquetes rpm instalados en el sistema.
  • rpm -qi paquete: ofrece la información en un paquete específico instalado.
  • rpm -q paquete –changelog: mostrará el historial de revisiones de un paquete rpm.
  • rpm –checksig paquete.rpm: verificará la integridad de un paquete rpm.
  • rpm -qa gpg-pubkey: verificará la integridad de todos los paquetes rpm instalados.

Las 7 distros de Linux más populares

Gestor de paquetes YUM (Red Hat, Fedora y similares)

  • yum install paquete: descargará e instalará un determinado paquete rpm.
  • yum localinstall paquete.rpm: instalará un paquete rpm y tratará de resolver todas las dependencias usando tus repositorios.
  • yum update paquete.rpm: actualizará todos los paquetes rpm instalados en el sistema.
  • yum update paquete: actualizará un determinado paquete rpm.
  • yum remove paquete: eliminará el paquete rpm especificado.
  • yum list: listará todos los paquetes de software instalados en el sistema.
  • yum search paquete: encontrará un paquete en repositorio rpm.

Comandos para crear copias de seguridad

Comandos para crear copias de seguridad

Las copias de seguridad de tus archivos son un algo muy serio, aunque para hacerlas no necesitas instalar aplicaciones o herramientas adicionales como sucede en otros sistemas operativos. En GNU/Linux basta escribir el comando adecuado y podrás hacer copias de seguridad de tus archivos desde el terminal Linux.

De hecho, incluso podrás realizar copias de seguridad incrementales con solo escribir el comando adecuado en el terminal o crear archivos ISO de tus discos fácilmente para tener una copia en archivo.

A continuación, te mostramos los comandos más utilizados en Linux para tareas de copia de seguridad y respaldo de archivos.

Automatiza tareas Linux y ahorra tiempo con Bash

  • dump -0aj -f /tmp/home0.bak /home: hará una copia de seguridad completa del directorio /home.
  • dump -1aj -f /tmp/home0.bak /home: hará una copia de seguridad incremental del directorio ‘/home’.
  • tar -Puf backup.tar /home/user: Se creará una copia de seguridad incremental del directorio indicado. En este caso, /home/user.
  • find /home/Usuario -name ‘*.txt’ | xargs cp -av –target-directory=/home/backup/ –parents: encontrará y copiará todos los archivos con extensión “.txt” del directorio /home/Usuario y lo copiará al directorio /home/backup.
  • mkisofs /dev/cdrom > Archivo.iso: creará una imagen ISO de un CD.
  • mkisofs /dev/cdrom | gzip > ArchivoISO.gz: creará una imagen ISO comprimida de un CD.
  • cdrecord -v dev=/dev/cdrom Archivo.iso: grabar en un CD una imagen ISO.
  • gzip -dc ArchivoISO.gz | cdrecord dev=/dev/cdrom –: grabar en un CD una imagen ISO comprimida ya existente.

Comandos para la gestión de redes

Comandos linux para la gestión de redes

Si bien es cierto que la gestión de redes desde el terminal de Linux no es algo que un usuario medio o inexperto realice a diario, sí puede ayudarte a encontrar de una forma rápida y sencilla una determinada información sobre la configuración de la IP de tu ordenador o de cualquier otro parámetro de tu red.

Además, desde e. terminal de Linux también podrás configurar las redes cableadas o inalámbricas de tu ordenador.

Para esas tareas más básicas te serán muy útiles los comandos de gestión de redes en Linux. A continuación, te mostramos algunos de los mejores comandos Linux que deberías conocer para gestionar tus redes como un profesional.

Ejecuta programas Windows en Linux con Wine 1.6.2

  • ifconfig eth0: mostrará la configuración de una tarjeta de red Ethernet.
  • ifup eth0: activará una interface eth0.
  • ifdown eth0: deshabilitará una interface eth0.
  • ifconfig eth0 192.168.1.1 netmask 255.255.255.0: configurará una dirección IP.
  • dhclient eth0: activará la interface eth0 en modo dhcp.
  • route -n: mostrará tabla de recorrido.
  • route add -net 0/0 gw IP_PuertaAcceso: configurará una puerta de acceso predeterminada.
  • route del 0/0 gw IP_PuertaAcceso: eliminará la ruta estática.
  • hostname: mostrará el nombre del host del sistema.
  • ip link show: mostrará el estado de enlace de todas las interfaces.
  • mii-tool eth0: mostrará el estado de enlace de ‘eth0’.
  • ethtool eth0: mostrar las estadísticas de tarjeta de red ‘eth0’.
  • netstat -tup: mostrar todas las conexiones de red activas y sus PID.
  • netstat -tupl: mostrar todos los servicios de escucha de red en el sistema y sus PID.
  • iwlist scan: mostrar las redes inalámbricas.
  • iwconfig eth1: mostrar la configuración de una tarjeta de red inalámbrica.

Cómo crear una Live-USB para una distro Linux