Saltar al contenido principal

Comandos Linux

sudo​

Superuser do. Ejecuta los comandos posteriores como administrador. Hay que tener especial cuidado con este comando

Identificarse como root.

sudo -i

su​

Cambia el usuario actual a superusuario

Cheatsheets​

Comandos de Ayuda​

man​

Ejecuta el manual del comando proporcionado como argumento.

man top

Para salir pulsar q****

Para visualizar un manual en el entorno gráfico.

yelp man:cat

Si se desea añadir man en diferentes lenguajes podemos consultar el procedimiento descrito en: https://askubuntu.com/questions/1113648/linux-man-pages-in-different-languages

Recrear base de datos de manuales​

sudo mandb -c

help​

La mayoría de los comandos tienen un argumento para mostrar su ayuda. Para ello existe el argumento extendido --help y a veces su versión corta -h.

 cp --help

info​

Ayuda GNU, contiene hipervínculos para navegar aunque esta un poco más desestructurada.

 info comando

history​

Comando que recupera el historial de comandos introducidos.

 history

Borrar historial de history

 history -c

Ejecutar un comando listado en history.

 !21

Nota: Si ejecutamos un comando con un espacio delante no se almacena en el historial de history

Comandos de Información​

more​

Muestra un fichero en el terminal. Opciones limitadas de navegación. Sintaxis more [opciones] nombre_archivo

 more -c fichero.txt

Opciones: -c: Limpia la pantalla antes de mostrar el archivo. -e: Salir inmediatamente después de escribir la última línea del último archivo en la lista de argumentos. -n: Especifica cuántas líneas se muestran en la pantalla para un archivo dado. +n: Inicia el archivo desde la línea del número dado.

less​

El comando less se usa para mostrar texto en la pantalla del terminal. Sólo muestra el texto del archivo dado. No se puede editar o manipular el texto. Para mostrar el archivo desde la línea especificada, se introduce el número de línea seguido de dos puntos (:). Permite el movimiento hacia adelante y hacia detrás en la navegación del archivo.

Sintaxis: less [opciones] nombre_de_archivo

 less -3 fichero1.txt

Opciones:

  • -c: Limpia la pantalla antes de mostrar.
  • +n: Inicia el archivo desde el número dado.
  • :p :Examina el archivo previo en la lista de línea de comandos.
  • :d :Elimina el archivo actual de la lista de archivos.

Muestra las primeras líneas de un fichero. Por defecto las 10 primeras.

 head fichero

tail​

Muestra las últimas líneas de un fichero. Por defecto las 10 últimas.

 tail fichero

Para que el fichero se actualice para cada cambio podemos utilizar la opción -f (follow)

 tail -f fichero

+Info https://www.computerhope.com/unix/utail.htm

Comandos de navegación por el sistema de ficheros​

cd​

Cambia al directorio especificado.

 cd /directorio/subdirectorio/

Casos especiales​

Ir al directorio raíz

 cd /

Cambiar subir un nivel en el árbol de directorios

 cd ..

Cambiar al directorio HOME (/home/nombredeusuario/)

 cd

o

 cd $HOME

Volver al directorio anterior Vuelve a la ruta anterior en la que nos encontrábamos

 cd -

ls​

Lista los archivos y directorios contenidos en el directorio en el que se ejecuta el comando.

Argumentos habituales:

  • -l: Muestra los resultados como un listado
  • -a: Muestra todos los resultados incluyendo aquellos archivos y directorios ocultos
 ls -la

pwd​

Print working directory Imprime en consola el directorio actual.

 bjlanza@kali:~$ pwd
/home/bjlanza/

tree​

Muestra el árbol de directorios desde el directorio donde se ejecuta. No viene por defecto instalado en Kali Linux.

Instalación

 sudo apt install tree
 tree -L 1

tree_info

Comandos relativos a la gestión de la máquina​

uname​

Muestra información sobre el sistema operativo.

 sudo uname -a

shutdown​

Para apagar la máquina.

 sudo shutdown -h now

halt​

Alias del comando sudo shutdown -h now

 sudo halt

reboot​

Reinicia la maquina.

 sudo reboot now

uptime​

Muestra información sobre el tiempo que la maquina lleva encendida. También muestra información la carga de de los procesadores. (Load Average)

 sudo uptime

info_uptime

Comandos de edición de ficheros y carpetas​

mv​

Mueve un fichero de una localización a otra. También sirve para renombrar un fichero.

 mv archivoamover /ruta/destino/nombrecopia

cp​

Copia los ficheros o directorios indicados en la ruta proporcionada.

 cp ficheroacopiar /ruta/fichero/copiafichero

rm​

Remover o Borrar. Borra el fichero o directorio indicado.

 rm fichero

Para borrar un directorio podemos hacerlo con el comando rm pero debemos indicar que lo haga recursivo (-r), lo que borrara todos los ficheros contenidos en el directorio y para evitar problemas de permisos forzar el borrado (-f). Si queremos que nos pregunte para cada fichero indicamos el modo info (-i).

 rm /directorio/ -rf

mkdir​

Make Directory. Crea un directorio con el nombre proporcionado en la ruta especificada.

 mkdir nombredirectorio
 mkdir /home/Kali/pruebas/

rmdir​

Remove directory. Borra un directorio.

 rmdir nombredirectorio

touch​

Crea un fichero con el nombre proporcionado

touch nombrefichero

Opciones​

  • -t: Modifica la fecha de creación a la fecha proporcionada
 touch -t 202003041220:22

ln​

Crea enlaces (accesos directos) Los enlaces pueden ser hard o soft. Si son hard crea una copia referenciada completa del fichero. Si son soft crea un enlace símbolico que apunta a la localización del fichero. Si el fichero referenciado cambia de localización el enlace se "rompe".

Ejemplo de creación de un enlace simbólico.

 ln -s /etc/init.d acceso_a_init.d

Diferencias entre soft y hard linksDiferencias entre soft y hard links

Comandos mostrar información​

cat​

Concatenar. El comando cat concatena archivos y los muestra en el salida estándar.

Sintaxis

cat [OPCIONES][ARCHIVO]...

 cat fichero

Opciones Cat​

  • -A: Mostrar todo.
  • -b: Omitir los números de línea para los espacios en blanco en el salida.
  • -e: Un carácter $ se mostrará al final de cada línea anterior a una nueva línea.
  • -E: Muestra un $ (símbolo del dólar) al final de cada línea.
  • -n: Numera todas las líneas en el salida.
  • -s: Si el salida tiene múltiples líneas vacías las sustituye con una única línea vacía.
  • -T: Muestra los caracteres de tabulación en el salida.
  • -v: Los caracteres no mostrados (con la excepción de tabuladores, nuevas líneas y saltos de página) se muestran.

Crear un fichero nuevo o sobrescribir un fichero existente.

 cat>fichero1.txt

Añadir contenido a un fichero.

 cat>>fichero1.txt

Para concatenar varios ficheros.

 cat>>fichero1.txt fichero2.txt

Concatenar 2 ficheros y mostrarlos mediante less.

 cat>>fichero1.txt fichero2.txt | less

Concatenar 2 ficheros y mostrarlos mediante less.

 cat fichero1.txt fichero2.txt | less

Concatenar 2 ficheros y añadirlos a un tercero.

 cat fichero1.txt fichero2.txt >>fichero3.txt

tac​

 tac fichero

echo​

Muestra en terminal el objeto proporcionado, normalmente una variable.

 echo $PS1

stat​

Muestra información de las estadísticas de un archivo.

 stat nombre de fichero

stats_info

diff​

Muestra las diferencias línea a línea entre dos ficheros.

 diff fichero1 fichero2

Comandos de búsqueda​

locate​

Localiza consultando bases de registros del sistema donde se encuentran los ficheros. Por tanto hay que actualizar dichas bases de datos.

+Info https://www.howtoforge.com/linux-locate-command/

find​

El comando Find busca los archivos y carpetas que concuerden con los parámetros de búsqueda, pudiendo realizar acciones sobre dichos comandos.

Opciones Find​

  • -iname: Busca sin ser sensible a mayúsculas
  • -maxdepth: Busca hasta el nivel de profundidad máximo definido (Ex: -maxdepth 3)
  • -type: Busca ficheros o carpetas (Ex: _-type f)
  • -mtime: Especifica un rango temporal de la creación del fichero (Ex: _-mtime -1)

Ejemplos:

Borrar ficheros que se ajusten a un patrón de búsqueda.

 find . -maxdepth 1 -type f -iname "fichero?" -exec rm {} \;

Buscar todos los archivos que contengan office, descartando aquellos mensajes que presenten denied(al no poder entrar en dichos directorios) Los mensajes que se mostraban en el ouput de error pasarlos a la terminal normal.

 sudo find / -type f -iname “*office*” 2>&1 | grep -v denied

Buscar archivos modificados En el último minuto.

sudo find / -type f -mmin

-mtime -1 (busca archivos modificados en 24h) -mtime -3 (busca archivos modificados en 72h)

Comandos relativos a aplicaciones​

which​

Da la ruta donde se encuentra el binario de una aplicación.
info_which

whereis​

Muestra donde se encuentra los ficheros referentes a una aplicación.

info_whereis

apt​

Advance Package Tool - Herramienta avanzada de gestión de paquetes Herramienta de gestión de paquetes que utilizan las distribuciones de la familia debian. En la mayoría de las veces necesitaremos permisos de administrador por lo que ejecutaremos sudo.

update​

Descarga y actualiza la lista de paquetes disponibles en los repositorios configurados.

 sudo apt update

upgrade​

Actualiza los paquetes actualizables

 sudo apt upgrade

Para actualizar un paquete concreto, ejecutar:

 sudo apt upgrade paquete_aplicacion

install​

Instala un paquete. Si tiene dependencias listadas también las instala.

 sudo apt install paquete_aplicacion

remove​

Elimina un paquete concreto.

 sudo apt purge paquete_aplicacion

purge​

Purga un paquete. Esto significa no solo borrar el paquete si no eliminar también todos los ficheros relacionados.

 sudo apt purge paquete_aplicacion

list​

Listar paquetes que cumplan con ciertos criterios.

Listar todos los paquetes actualizables.

 sudo apt list --upgradable

Listar los paquetes instalados.

 sudo apt list --installed

Comprobar si una aplicación está instalada.

 sudo apt list --installed

+Info​

Para más información https://codeburst.io/a-beginners-guide-to-using-apt-get-commands-in-linux-ubuntu-d5f102a56fc4

Comandos relativos a permisos​

chmod​

 chmod +rwx fichero
 chmod 777 fichero

Permisos octales​

  • 4-r (Read) - Permisos de lectura
  • 2-w (Write) - Permisos de escritura
  • 1-x (eXecution) - Permisos de ejecución

permisos

PermisosBinarioNºDefinición
---0000sin acceso
--x0011ejecución
-w-0102escritura
-wx0113escritura y ejecución
r--1004lectura
r-x1015lectura y ejecución
rw-1106lectura y escritura
rwx1117lectura, escritura y ejecución

+Info Permisos Octales​

https://desarrolloweb.com/articulos/tutorial-comando-chmod.html

chown​

Change Owner. Cambia el propietario de un fichero.

 chown root fichero.txt

Comandos de rendimiento - gestión de procesos​

top​

 top

info_top

Para finalizar pulsar (control +c) Si se pulsa 1. Muestra información detallada para cada procesador.

IMPORTANTE Load Average (0.45 0.17 0.12)
Ultimo minuto | Últimos 5 minutos | Últimos 15 minutos

info_top

ps​

Muestra información de los procesos activos.

 ps -aux

info_psaux

Jobs​

Muestra los comandos ejecutándose en segundo plano.

 Jobs -l

kill​

Conocido como matar el proceso, finaliza el proceso con el pID proporcionado

 kill 94848 -9

Para saber el id de un proceso realiza un ps -aux

 ps -aux

pstree​

Muestra el árbol de ejecución de procesos.

 pstree

crontab​

Programa que se encarga de ejecutar tareas periódicamente. Herramienta fundamental para un administrador.

+Info https://www.redeszone.net/2017/01/09/utilizar-cron-crontab-linux-programar-tareas/

Comandos utilidades​

wc​

Word Count. Cuenta las apariciones. Usado en conjunción a otros comandos. La opción -l (lines) cuenta el número de líneas.

 wc -l

Comandos relativos a la gestión de usuarios​

id​

Comando que muestra los grupos a los que pertenece nuestro usuario.

id

info_id

w​

who. Comando que muestra quien tiene abierta una sesión en la máquina.

 w

info_who

who​

Comando que muestra que sesión tenemos abierta como usuario.

 who

whoaim​

Muestra el usuario con el que estamos conectados

bjlanza@kali:~$ whoami
bjlanza

Comandos relativos a redes​

hostname​

Muestra el nombre de la maquina en un entorno red.

 hostname

ping​

Ejecuta un ping a la dirección IP especificada. En Linux el ping es continuo hasta que se cancele.

 ping 192.168.1.255

ifconfig​

Muestra la información de los interfaces de red de la máquina. Actualmente este comando se ejecuta con otra sintaxis.

 ip a

info_ipa

netstat​

Muestra un informe detallado de las conexiones establecidas por la máquina. Especificando puerto y servicio.

 netstat

netstat_info

wget​

Utilidad que descarga el contenido de la dirección proporcionada.

 wget http://www.direccionweb.com

curl​

Utilidad que descarga el contenido de la dirección proporcionada.

 curl http://www.direccionweb.com

Editores de texto​

Gedit​

Editor texto Linux

 gedit fichero

Nano​

Nano es un editor de texto incorporado en las mayorías de las distribuciones de Linux. Si el fichero que se indica no existe, nano lo crea.

 nano fichero

info_nano

Para salir presionar control + X.

Vim​

Editor de texto Linux.

Comandos criptografía​

md5sum​

Calcula y muestra el hash con el algoritmo md5 de un fichero.

 md5sum fichero

info_md5

sha256sum​

Calcula y muestra el hash con el algoritmo SHA 256.

 md5sum fichero

sha256_info

Argumentos​

  • -b, --binary: Lee el fichero en binario.
  • -c, --check: Lee el SHA256 sums del fichero y lo comprueba.
  • --tag: Crea un checksum estilo BSD
  • -t, --text: Lee el fichero en modo texto (por defecto)

Sintaxis​

sha256sum [OPTION]... [FILE]…

+Info sha256​

https://www.computerhope.com/unix/sha256sum.htm

Grep​

Gestión de terminales​

tellinit​

Cambia el RUNLEVEL del sistema

Salir del entorno gráfico​

Sudo telinit 3

Arrancar entorno gráfico​

Sudo telinit 35

+Info https://www.computerhope.com/unix/telinit.htm

Otros comandos​

Volcado de datos de terminal​

Realiza un volcado del trafico tcp

tcpdump -nli eth "port 443"