Kit de supervivencia Linux

Mayo 2017




En este artículo encontrarás un compendio de comandos Linux de uso frecuente que todos tenemos en la cabeza, pero de los que a menudo no recordamos alguna parte de su sintaxis o quizás toda, algunos de estos quizás hasta hemos olvidado que existen…
Les agradeceré a todos completar esta lista así como la de las categorías.

Nota para los futuros contribuidores:
  • Este no es un tutorial sino sólo un articulo para recordar los comandos, por ello hay que poner únicamente una descripción lo más concisa posible del comando.
  • Para los comandos del sistema que necesitan los derechos de superusuarioroot” hay que hacer preceder estos comandos con el caracter almohadilla (#) representativo de “root” y con el caracter dollar ($) a los comandos que no necesitan ningún derecho especial y que pueden ser ejecutados por cualquier usuario.


Nota para los lectores:
  • Para los sistemas basados en Ubuntu cuando un comando necesita los derechos de superusuarioroot” (representado en este artículo por el carácter almohadilla (#) representativo de “root”), hacer preceder este comando por “sudo”.



Manual y ayuda


Las paginas del man


Mostrar la página man de un comando
  • $ man comando


Buscar las páginas haciendo referencia a una palabra clave (la ”palabra clave” puede ser una simple palabra o el nombre de un comando)
  • $ man –k palabra clave
  • $ apropos comando/palabra clave


Documentación suplementaria con información (para algunas paginas)
  • $ info comando

Ayuda en línea


Tipo de un comando (alias, palabra clave reservada al shell, función, comando interno o simple archivo en el disco)
  • $ type comando
  • $ type –t comando


Mostrar la ayuda de un comando interno (builtin)
  • $ help comando


Mostrar la ayuda de un comando externo
  • $ comando --help
  • $ comando –h

Operaciones con archivos y directorios


Mostrar


Mostrar un archivo
  • $ cat archivo


Mostrar página por pagina (tecla “Espace” avanza una página, tecla “Enter” avanza una línea)
  • $ more archivo


Mostrar línea por línea (flecha hacia arriba <=> flecha hacia abajo)
  • $ less archivo


Mostrar las 5 últimas líneas de un archivo
  • $ tail -5 archivo


Leer en tiempo real las 5 ultimas líneas de un archivo
  • $ tail -5f archivo


Mostrar las 5 primeras líneas de un archivo
  • $ head -5 archivo


Mostrar un archivo al reves
  • $ tac archivo


Numerar las líneas de un archivo a la salida
  • $ cat –n archivo


Conocer el tipo de un archivo
  • $ file archivo


Listar los archivos de un directorio
  • $ ls
  • $ ls –l


Listar recursivamente
  • $ ls *
  • $ ls –R


Listar los archivos ocultos
  • $ ls –a

Crear


Crear un archivo vacio
  • $  >  archivo
  • $ touch archivo


Crear 10 archivos vacios
  • $ touch archivo{1..10}.txt


Crear un directorio
  • $ mkdir directorio


Crear un directorio con sus sub-directorios
  • $ mkdir –p dir_principal/dir1/dir2/dir3

Redireccionar


A un archivo
  • $ ls –R  /home/$USER/*.txt >  lista.txt


A un archivo pero añadiendolo luego
  • $ ls –R  /home/$USER/*.txt >> lista.txt


A la pantalla y a un archivo al mismo tiempo
  • $ ls –R  /home/$USER/*.txt | tee lista.txt


Al mismo tiempo a la pantalla y a un archivo pero añadiendolo luego
  • $ ls –R  /home/$USER/*.txt | tee -a liste.txt

Copiar


Copiar un archivo
  • $ cp archivo_origen directorio_destino


Copiar un conjunto de archivos
  • $ cp /directorio_origen/*.html /directorio_destino


Copiar un directorio
  • $ cp –R /directorio_origen /directorio_destino

Mover


Mover un archivo
  • $ mv –i  /ruta/archivo/ruta


Mover un directorio
  • $ mv /ruta/dir_a_mover / /ruta/destino/

Renombrar


Renombrar un archivo
  • $ mv archivo_origen archivo_destino>

Comparar


Comparar 2 archivos
  • $ cmp archivo1 archivo2
  • $ diff archivo1 archivo2
  • $ sdiff archivo1 archivo2


Comparar 3 archivos
  • $ diff3 archivo1 archivo2 archivo3

Ordenar


Ordenar en orden alfabético
  • $ sort archivo


Ordenar numericamente
  • $ sort –n archivo


Eliminar repetidos
  • $ sort archivo | uniq
  • $ sort –u archivo


Mostrar únicamente los repetidos
  • $ sort archivo | uniq –d

Empaquetar/Desempaquetar


Empaquetar una carpeta/directorio
  • $ tar –vcf nombre_archivo.tar nombre_ carpeta _a_empaquetar


Desempaquetar una carpeta/directorio
  • $ tar –vxf mi_archivo.tar


Listar el contenido de un archivo tar
  • $ tar –tf mi_archivo.tar

Comprimir/Descomprimir


Comprimir un archivo (sin copia de seguridad del original)
  • $ compress mi_archivo.tar
  • $ gzip mi_archivo.tar
  • $ bzip2 mi_archivo.tar


Comprimir un archivo (con copia de seguridad del original)
  • $ compress –c mi_archivo.tar  >  mi_archivo.tar.Z
  • $ gzip –c mi_archivo.tar  >  mi_archivo.tar.gz
  • $ bzip2 –k mi_archivo.tar


Descomprimir un archivo
  • $ uncompress mi_archivo.tar.Z
  • $ gunzip mi_archivo.tar.gZ
  • $ bunzip2 mi_archivo.tar.bZ2

Descomprimir y desempaquetar


Un archivo tar.gz
  • $ tar xvzf mi_archivo.tar.gZ


Un archivo tar.bz2
  • $ tar xvjf mi_archivo.tar.bZ2

Contar


Contar los caracteres de un archivo
  • $ wc –c archivo


Contar el número de palabras de un archivo
  • $ wc –w archivo


Contar las líneas de un archivo
  • $ wc –l archivo
  • $ sed -n '$=' archivo

Buscar


Archivos


Buscar un archivo
  • $ find /ruta -name "nombre" –print


Buscar un patrón en un árbol de directorios (mostrando la ruta, el nombre del archivo y el numero de la línea es ese archivo)
  • $ find /ruta -name "*" -type f -exec grep -Hn  "patrón" {} \;


Actualizar la base de datos de slocate
  • # updatedb


Buscar un archivo idexado
  • $ locate nombre


Un patron en un archivo
  • $ grep "patron" archivo

Comandos


Localizar un comando
  • $ which comando


Buscar los archivos ejecutables
  • $ whereis comando


Buscar el nombre del archivo que sera ejecutado al llamado de comando
  • $ type –p comando

Usuarios


¿Quién está conectado?
  • $ who
  • $ finger


¿Quién está conectado y qué es lo que hace?
  • $ w


¿Quién soy yo?
  • $ whoami


¿Dónde estoy?
  • $ pwd

Dependencias


Mostrar las bibliotecas necesarias de un programa
  • ldd /ruta/programa

Administración del sistema


Gestión del sistema


Actividad del sistema
  • $ top



Estado de los procesos
  • $ ps –ef


Tasa del disco ocupado
  • $ df –h


Tasa de uso del disco
  • $ du –h /home/$USER

Gestion de usuarios


Añadir un usuario
  • # useradd new_user



Eliminar un usuario
  • # userdel user



Añadir un grupo
  • # groupadd new_groupe



Eliminar un grupo
  • # groupdel groupo



Cambiar el propietario de un directorio
  • # chown $USER /ruta/directorio



Cambiar nuestra contraseña
  • $ passwd



Cambiar la contraseña de un usuario
  • # passwd login



Mostrar el grupo a los que pertenece un usuario
  • $ groups $USER



Informacion sobre un usuario
  • $ finger $USER

Red


Informacion del hardware


Conocer el módulo de una tarjeta
  • # ethtool –i eth0



Mayor informacion
  • # udevinfo -a –p /sys/class/net/eth0/



Listar el hardware detectado por el núcleo
  • $ /sbin/ifconfig
  • $/sbin/ip link show


Herramientas suplementarias
  • # mii-tool eth0
  • # mii-diag –a

Tests y medidas


Verificar la conexion local
  • $ ping -c4 localhost


Hacer pin a una dirección IP
  • $ ping -c4 direccion_IP


Verificar las direcciones MAC del LAN
  • # nmap –sP 192.168.1.1-254

Configuración


Configurar una dirección
  • # ifconfig eth0 192.168.10.1 netmask 255.255.255.0 broadcast 192.168.10.255


Agregar una puerta de enlace predeterminada
  • # route add default gw nombre_puerta_de enlace



Impedir el ping
  • # echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

Conexion


ssh
  • $ ssh login@sevidor


telnet
  • $ telnet direccion_IP


scp
  • $ scp /ruta/archivo login@servidor:/ruta/destino/

Información acerca del equipo


Sistema


Núcleo
  • $ uname –r


Sistema operativo
  • $ uname –o

Procesador


Tipo de procesador
  • $ uname –p


Informacion detallada
  • $ cat /proc/cpuinfo


Carga media del procesador
  • $ cat /proc/loadavg

Memoria


Informacion detallada
  • $ cat /proc/meminfo


Mostrar el uso de la memoria
  • $ free –m

Descripcion del hardware


Información sobre el hardware
  • # dmidecode


Listar el hardware
  • # lshw
  • # lshw -html > archivo.html
  • # lshal


Lista de tarjetas PCI
  • $ lspci –v


Lista de dispositivos USB
  • # lsusb

Verificacion de la compatibilidad del hardware


Listar el ID del fabricante y dispositivos PCI
  • $ lspci –n

¿Dispositivos desconocidos (unknow)?

  • # scanpci –v


Obtener de la descripción del componente en cuestión su código "vendor" (0xXXXX) así como su código "device" (0xYYYY, luego ir a la página "PCIDatabase.com" para determinar el fabricante y el dispositivo desconocido.

Bios


Información sobre el Bios
  • # biosdecode

Módulo


Mostrar los módulos cargados
  • $ /sbin/lsmod


Mostrar la lista de módulos
  • $ /sbin/modprobe –l


Cambiar un módulo
  • # insmod nombre_modulo
  • # modprobe nombre_módulo


Eliminar un módulo
  • # rmmod nombre_módulo
  • $ modprobe –r nom_modulo


Obtener información sobre un módulo
  • $ /sbin/modinfo nombre_modulo

Disco duro


Tabla de particiones
  • $ /sbin/fdisk –l



Información sobre el disco
  • # hdparm -I /dev/xxx


(si smartmontools está instalado)
  • # smartctl -i /dev/xxx


Test del disco
  • # smartctl -t short /dev/xxx



Hacer una copia de seguridad de la tabla de particiones (MBR)
  • # dd if=/dev/hdx of=/ruta/copiadeseguridad.dd bs=512 count=1



Hacer una copia de seguridad de la tabla de particiones de la partición extendida
  • # sfdisk -d /dev/hdx > /ruta/save_extendida.sf



Restaurar la tabla de particiones (MBR)
  • # dd if=/ruta/copiadeseguridad.dd of=/dev/hdx



Restaurar la tabla de particiones de la partición extendida
  • # sfdisk /dev/hdx < /ruta/save_extendida.sf



Determinar el UUID de un disco (Universal Unique IDentifier)
  • $ ls -l /dev/disk/by-uuid
  • # vol_id -u /dev/sda1
  • # blkid

CD/DVD/Grabador


Encontrar la dirección SCSI del grabador
  • $ cdrecord –scanbus
  • $ cdrecord --scanbus dev=ATA


Desbloquear el grabador
Si por cualquier razón el grabador no responde más a ningún comando, da mensajes de error y no se abre incluso presionando el botón de eyección, entonces puedes utilizar cdrdao para reinicializarlo.
  • # cdrdao unlock --device y,z

Temperatura (lm_sensors)


Buscar sensores
  • $ sensors-detect


Carga de módulos
  • # modprobe i2c-xxx i2c-yyy i2c-zzz


Mostrar la temperatura
  • $ sensors

Multimedia


Conversión de formatos de video


avi => flv
  • $ ffmpeg –i video.avi -f flv video.flv


flv => avi
  • $ ffmpeg –i video.flv -f avi video.avi


wmv => avi
  • $ ffmpeg –i video.wmv -f avi video.avi


avi => SVCD
  • $ ffmpeg –i video.avi -target pal-SVCD video.mpeg

Captura de pantalla


Con ImageMagcik
  • $ import -pause 5 capture.png

Conversión de formatos gráficos


GIF => PNG
  • $ convert  archivo_de_entrada.gif archivo_de_salida.png



JPG => PNG
  • $ convert  archivo_de_entrada.jpg archivo_de_salida.png


etc.

Redimensionamiento de imágenes


Con ImageMagcik

En el siguiente ejemplo, el formato de entrada puede ser un formato distinto a PNG, las dimensiones pueden ser modificadas:
  • Redimensionamiento a un tamaño dado
    • $ convert  archivo_de_entrada.png  -resize 320x200 archivo_de_salida.png
  • Redimensionamiento a una à un ancho dado
    • $ convert  archivo_de_entrada.png -resize 320x archivo_de_salida.png
  • Redimensionamiento a una altura dada
    • $ convert  archivo_de_entrada.png -resize 320x archivo_de_salida.png
  • Redimensionamiento de la primera imagen de un GIF animado
    • $ convert  archivo_de_entrada.gif[0]  -resize 320x200 archivo_de_salida.gif
  • Redimensionamiento forzando el valor del fondo transparente (para evitar un fondo negro poco estético). Aquí el fondo es forzado a blanco:
    • $ convert  archivo_de_entrada.png  -resize 320x200
      -background white -flatten archivo_de_salida.png

      Diversos


      Mostrar el calendario del mes actual
      • $ cal


      Mostrar el calendario anual
      • $ cal 2008

      Consulta también

      Publicado por Carlos-vialfa. Última actualización: 8 de agosto de 2008 a las 05:44 por Carlos-vialfa.
      El documento «Kit de supervivencia Linux» se encuentra disponible bajo una licencia Creative Commons. Puedes copiarlo o modificarlo libremente. No olvides citar a CCM (es.ccm.net) como tu fuente de información.