comandos linux erica aguado

Mis comandos TOP para administrar sistemas.

Posted on by

Esta es MI guía de los comandos linux que más uso en mi día a día en la administración de sistemas.

Como algunos compis me lo habéis pedido, pues estos son mis comandos TOP (ssh, top, scp, rsync, mysql, pwgen, vim y otros):

 

1. Conectando con ssh

ssh — OpenSSH SSH client (remote login program)

Para conectar:

ssh usuario@dominio.ext

Con puerto ssh distinto al 22:

ssh usuario@dominio.ext -p 22222

 Recordar:

  • El comando ssh se utiliza para conectar entre máquinas que tengan el openssh (Linux y Mac), por lo que si necesitas conectar desde un Windows busca algún programa para conectar por ssh tipo Putty.
  • El usuario debe ser usuario de ssh, no vale el del acceso a panel de hosting, si no se han dado permisos chrooted.
  • La contraseña no muestra nada al añadirla, aunque no lo parezca estas escribiendo.

 

2. Conectando con clave RSA.

ssh-keygen — authentication key generation, management and conversion

Generar clave SSH-RSA:

ssh-keygen -t rsa

Genera los siguientes ficheros:

/ruta/usuario/.ssh/authorized_keys  -> Claves públicas RSA de los equipo permitidos.
/ruta/usuario/.ssh/id_rsa -> Cifrado de tu clave.
/ruta/usuario/.ssh/id_rsa.pub -> Clave RSA pública.
/ruta/usuario/.ssh/known_hosts -> Cifrado de los equipos guardados.

Recordar:

  • Al ejecutar el comando ssh-keygen te mostrará por pantalla la home donde se han creado los ficheros. Y además solicita la contraseña o frase para conectar.
  • El fichero id_rsa es el que guarda la información de tu conexión, por lo que nunca, nunca, lo copies o compartas.
  • El fichero id_rsa.pub es la parte pública de tu clave rsa que te permite conectar a otro equipo, por lo que puede verla todo el mundo. No le da a nadie acceso a tu equipo, pero si te permite a ti conectar a cualquier equipo que tenga tu clave rsa pública añadida en su fichero authorized_keys.

3. Subiendo y bajando ficheros con SCP.

scp — secure copy (remote file copy program)

Subir un fichero de mi equipo al servidor:

scp /ruta_origen/fichero usuario@dominio.ext:/ruta/destino/

Bajar un fichero del servidor a mi equipo:

scp usuario@dominio.ext:/ruta/destino/fichero /ruta/origen/

Recordar:

  • Estos comandos están pensados para ejecutarse en tu equipo y conectarse al servidor.
  • Cuidado con las rutas de origen y destino, cada uno en su equipo.
  • Si quieres subir o bajar un directorio completo, comprime el directorio, SCP solo permite subir o bajar ficheros.

 

4. Sincronizar ficheros con Rsync.

rsync – a fast, versatile, remote (and local) file-copying tool

Sincronizar directorios en un mismo equipo:

rsync -avz /ruta/origen/ /ruta/destino/

Subir ficheros de mi equipo a un servidor:

rsync -avz /ruta/origen/ usuario@dominio.ext:/ruta/destino/

Bajar ficheros de un servidor a mi equipo:

rsync -avz usuario@dominio.ext:/ruta/origen/ /ruta/destino/

Sincronizar directorios con puerto SSH diferente al 22:

rsync -avz -e "ssh -p 22222" /ruta/origen/ usuario@dominio.ext:/ruta/destino/

Sincronizar directorios sin sobreescribir:

rsync --ignore-existing /ruta/origen/ usuario@dominio.ext:/ruta/destino/

Recordar:

  • Si quieres sincronizar o copiar un directorio completo, incluidos los ficheros ocultos, usa «/*» en la ruta de origen. El asterisco después de / para que incluya todos los ficheros (ojo al .htacces).

 

5. Comprimir por consola; gzip, tar, tar.gz…

Principales métodos de compresión que uso:

ZIP:

Comprimir: zip nombre.zip /ruta/fichero
Descomprimir: unzip nombre.zip

RAR:

Comprimir: rar -a nombre.rar /ruta/directorio/
Descomprimir: unrar -x nombre.rar

GZIP:

Comprimir: gzip -9 fichero
Descomprimir: gzip -d fichero.gz

TAR.GZ:

Comprimir: tar -czvf nombre.tar.gz /directorio/a/comprimir/
Descomprimir: tar -xzvf nombre.tar.gz

Recordar:

  • Posiblemente tengáis que instalar la paqueteria de alguno de estos comandos si no lo habéis usado aún.
  • Los métodos de compresión ZIP y RAR tienen la opción verbose, por lo que ejecutando el comando con -v y el fichero nos sacará por pantalla el contenido del fichero.

 

6. Editando con Vim.

vim – Vi IMproved, a programmers text editor

Comandos básicos para abrir un fichero con vim:

Abrir en primera línea del fichero: vim fichero
Abrir en la línea X del fichero: vim fichero +X

Existen dos modos en Vim, el modo editar o insertar y el modo comando. Como diferencia principal el modo editar nos permite escribir, borrar, modificar, etc el contenido del fichero, mientras que el modo comando nos sirve para movernos, buscar contenido, realizar acciones masivas, desde la líne de comandos de Vim.

Acciones más comunes en el modo editar:

Pasar a modo editar: presionar tecla insert (o i en Mac).
Salir de modo editar: presiona tecla esc.

Fuera de modo editar:

Moverse al inicio del fichero: presionar gg
Moverse al final del fichero: presionar Mayúscula + g
Moverse al final de una línea: presiona $
Moverse al inicio de una línea: presiona 0 (cero)
Moverse una palabra a la derecha: presiona w
Moverse una palabra a la izquierda: presiona b
Borrar línea completa: presiona dd

Acciones más comunes en el modo comando:

Pasar a modo comando: presionar tecla de /. A continuació te aparecerá en la línea de abajo el espacio de la línea de comando de Vim.
Salir de modo comando: presiona tecla esc.

Para numerar las líneas del fichero escribe despues de /: set number :
Para buscar una cadena escribe despues de /: cadenaabuscar 
Para añadir color al texto escribe despues de /: syntax on :

Para guardar los cambios escribe despues de /: w
Para salir del fchero escribe despues de /: q
Para guardar y salir del fichero escribe despues de /: wq

* Recuerda pulsar intro para ver los resultados.

 

7. Restaurando y copiando bases de datos; Mysql y Mysqldump.

En servidores con Mysql usa para:

Exportar base de datos:

mysqldump -u usuario -p nombredb > copiadb.sql

Importar copia de base de datos:

mysql -u usuario -p nombredb < copiadb.sql

Exportar todas las bases de datos en un fichero:

mysqldump -u usuario -p --all-databases > copiaddbb.sql

En paneles Plesk, usar usuario admin y clave del fichero /etc/psa/.psa.shadow:

mysql -u admin -p`cat /etc/psa/.psa.shadow` nombredb < copiadb.sql
mysqldump -u admin -p`cat /etc/psa/.psa.shadow` nombredb > copiadb.sql

Recuerda:

  • Puedes poner entre comillas simples la contraseña después de -p, pero no es recomendable ya que se guardaría en el history. Si no le indicas la contraseña te la pedirá por línea de comandos y no se guardará copia de ella.
  • Ojo a las comillas al llamar al fichero, no son comillas lo que envuelve a cat /etc/psa/.psa.shadow, sino el acento abierto. Pulsamos tecla de acento abierto y a continuación espacio para que nos aparezca.

 

8. Controlando con Top.

El comando Top te muestra en la ejecución de procesos en tiempo real.  Y aunque a algunos SysAdmins les suene a antiguo, a mi me gusta tener el top abierto en una consola mientras ejecuto tareas que puedan afectar al rendimiento del servidor y ir viendo lo que ocurre.

La información interesante que te muestra el Top es:

Línea Top: los días que lleva sin reiniciarse y la carga o load average, en 3 tiempos diferentes: último minuto, últimos 5 minutos y últimos 15 minutos, lo que te permite saber si la carga esta subiendo o esta bajando.

Línea Task: el total de procesos activos, activos pero dormidos, parados y zombies.

Línea Cpu (% de carga en cpu según el número de cpus disponibles):

us, usuario: tiempo ejecutando procesos de usuario desapercibidos
sy, system: tiempo de ejecución de los procesos del kernel
ni, agradable: tiempo ejecutando procesos de usuario agradables
id, inactivo: tiempo pasado en el controlador inactivo del núcleo
wa, IO-wait: tiempo de espera para la finalización de E / S
hi: tiempo dedicado al servicio de interrupciones de hardware
si: tiempo dedicado al servicio de interrupciones de software
st: tiempo robado de este vm por el hipervisor

Línea KiB Mem (Uso de la memoria física):

total: valor total de la memoria física.
free: valor de la memoria libre.
used: valor de la memoria usada por el usuario.
buff/cache: Valor de memoria física del buffer de memoria.

Línea KiB Swap (Uso de la memoria Swap):

total: valor total de la memoria swap.
free: valor disponible de la memoria swap.
used: valor de memoria swap usada por el usuario.
avail Mem: Valor de memoria swap cacheada.

A continuación puedes ver en tiempo real los procesos que se están ejecutando, su PID, User, Pr (prioridad del proceso), Virt (memoria virtual usada), Res (tamaño que ocupa la tarea), SHR y S (estado del proceso), %CPU y %MEM, Time (tiempo que lleva en ejecución) y COMMAND (Comando que ejecuta el proceso).

Puedes moverte por el listado con la tecla «><» y volver con mayúscula + «><«.

 

9. Generar contraseñas aleatorias; Pwgen.

pwgen – generate pronounceable passwords

Para generar contraseñas aleatorias simples:

pwgen

Para generar contraseñas aleatorias con simbolos y seguras:

pwgen -Bsy

Para generar contraseñas aleatorias y indicar el número de carácteres (16 carácteres):

pwgen +16

Ejemplo: para generar 10 contraseñas con simbolos de 16 carácteres cada una:

pwgen -Bsy +16 +10

 

10. Procesos que más carga consumen, PS.

ps – informa del estado de los procesos

Lista por orden de mayor consumo de RAM:

ps aux | awk '{print $2, $4, $11}' | sort -k2r | head -n 10

 

11. Generar códigos QR.

Para generar directamente códigos QR en la consola linux:

printf "https://ericaaguado.es" | curl -F-=\<- http://qrenco.de/

** Reemplazar la url por el texto que se quiera generar en el código QR.



Por ahora no hay comentarios

Deja un comentario

Política de comentarios:
Responsable: Érica Aguado Expósito.
Finalidad: Gestionar los comentarios de este blog.
Legitimación: Su consentimiento.

Importante:
Su dirección de correo electrónico no será publicada.
Los campos obligatorios están marcados *.