Diferencia entre revisiones de «PSSH / PSCP»

De jagfloriano.com
Ir a la navegaciónIr a la búsqueda
Línea 100: Línea 100:
</syntaxhighlight>
</syntaxhighlight>


---
 


=== Copiar scripts de mantenimiento ===
=== Copiar scripts de mantenimiento ===

Revisión del 16:14 2 ene 2026

Uso de pssh y pscp

En esta página se muestran ejemplos prácticos del uso de pssh y pscp para la ejecución de comandos y copia de ficheros de forma paralela en múltiples servidores Linux.

Buenas prácticas

  • Probar primero con un único servidor
  • Usar -p 1 para evitar impactos masivos
  • Redirigir salidas con -o y -e
  • Validar scripts antes de ejecutarlos en paralelo
  • Usar inventarios claros y controlados

Notas finales

pssh y pscp son herramientas muy potentes para administración masiva. Un uso incorrecto puede provocar impactos en múltiples sistemas al mismo tiempo. Utilizarlas siempre con precaución.

Todos los ejemplos asumen acceso por SSH y privilegios de root o sudo.

pssh – Ejecución remota en paralelo

pssh permite ejecutar comandos simultáneamente en múltiples servidores definidos en un fichero.


Copiar un fichero de configuración de forma masiva

Ejecuta un comando cp en todos los servidores del listado:

pssh -X -q -h servers.lst -i "sudo cp /etc/sudoers.serverA /etc/sudoers"

Buscar configuración en múltiples servidores

Buscar la opción X11 en la configuración SSH:

pssh -X -q -h servers.lst -i "sudo grep X11 /etc/ssh/sshd_config"


Ejecutar un script remoto

Ejecutar un script previamente copiado en /tmp:

pssh -X -q -h servers.lst -o out_umount -e err_umount -i "sudo /tmp/umount.sh"

Controlar salida estándar y errores

Guardar la salida estándar y errores en directorios separados:

pssh -X -q -h servers.lst -o info/ -e error/ -p 1 "sudo date"

Desactivar THP (Transparent Huge Pages)

Ejecutar un comando protegido con sh -c:

pssh -X -q -h servers.lst -O StrictHostKeyChecking=no -t 300 -p 1 "sudo sh -c 'echo never > /sys/kernel/mm/transparent_hugepage/defrag'"


Consultas sobre usuarios y permisos

Buscar una entrada concreta en /etc/sudoers:

pssh -X -q -h servers.lst -i "sudo grep -i redis /etc/sudoers"

Buscar un usuario por UID:

pssh -X -q -h servers.lst -i "getent passwd | grep 10188"

Ejecución autenticada y en serie

Ejecutar un comando uno a uno (-p 1) solicitando contraseña:

pssh -h servers.lst -p 1 -A -P "pip3 list | grep google-api-python-client"

pscp – Copia de ficheros en paralelo

pscp permite copiar archivos a múltiples servidores de forma simultánea.


Copiar un script a /tmp

pscp -h servers.lst -o out_copy -e err_copy umount.sh /tmp


Copiar scripts de mantenimiento

pscp -h servers.lst -o out_copy -e err_copy isilon_fstab_mod.sh /tmp

Copiar a distintos grupos de servidores

pscp -h servers_group2.lst -o out_copy -e err_copy umount.sh /tmp