Listado de los comandos SSH

Este es un listado de los comandos SSH que se usan con más frecuencia. Los comandos se encuentran organizados por materia e incluyen una descripción breve para imaginar como usarlos.
Comandos de navegación

pwd muestra el path completo del directorio en el que se encuentra
cd cambia de directorio, por ejemplo cd directorio/subdirectorio
cd ~ lleva a su directorio home
cd – lleva al postrero directorio en el que estuvo
cd .. sube a un directorio superior
Listado de archivos

ls inventario archivos y directorios de un directorio
ls -al inventario archivos y directorios e información sobre los mismos
ls -aR inventario archivos e información incluyendo todos los subdirectorios
ls -aR | more inventario archivos e información incluyendo todos los subdirectorios por pantallas
ls -alR > resultado.txt inventario archivos e información de subdirectorios y lo guarda en un archivo
cat resultado.txt mostraría en pantalla el contenido del archivo
ls *.html inventario todos los archivos acabados en .html
ls -al directorio/subdirectorio/ inventario archivos e información de ese subdirectorio

Crear, publicar o eliminar archivos y directorios

pico /home/usuario/public_html/index.html edita el archivo index.html con el editor pico
touch /home/usuario/public_html/404.html crea el archivo vacio 404.html en ese directorio
rm archivo.txt elimina archivo.txt
rm -rf directorio/ ¡CUIDADO! elimina el directorio indicado, los subdirectorios y todos sus archivos
mkdir descargas Crea un directorio llamado descargas
rmdir descargas Elimina el directorio llamado descargas

Compresión y descompresión de archivos

zip archivo.zip /home/usuario/public_html/directorio Comprimir directorio
unzip archivo.zip Descomprimir archivo.zip
unzip -v archivo.zip Ver contenido de archivo.zip

Otros comandos SSH

cp -a /home/usuario/public_html/origen/* /home/usuario/public_html/destino/
Copia todos los archivos de un directorio a otro manteniendo sus respectivos permisos

du -sh muestra es espacio total ocupado por el directorio en el que se encuentra
du -sh * muestra el espacio ocupado de cada archivo y directorio

lynx aemilius.net emplear el navegador Lynx para acceder a www.aemilius.net
whoami muestra su nombre de usuario

¿Qué es SSH?
Una explicación clarísima y algo más la encontrarás siguiendo este vínculo.

Pero en resumen, es una forma en la que manejas tu servidor lejano de manera rápida y segura, aunque… no es tan elemental de emplear cómo un FTP.

La contrariedad es que este es un régimen no visual, es decir al conectarte medio SSH sólo tienes una pantalla negra en la que tienes que escribir un comando. Si no sabes el comando… ya fuiste!

Lo bueno, es que los comandos son muy sencillos. Por ejemplo, escribe:
ls
y te aparecerá un listado de lo que hay en el directorio en que te encuentras.

Listado de comandos básicos:

ls
Lista del contenido de un directorio
Ejemplo: ls /home
Te mostrará el contenido del directorio home
Ejemplo: ls – al
Te mostrará información sobre archivos y directorios
Ejemplo: ls – aR
Te mostrará información sobre archivos, directorios y subdirectorios
Ejemplo: ls – alR > resultado.txt
Como lo anterior te arroja demasiada información para una pantalla, mejor trasladar el resultado en un archivo llamado resultado.txt

du -sh *
Para advertir el peso de un directorio
el comando du
te muestra la suma del directorio en formato h (humano) o sea bytes kilobytes, megas.
El comando:
du -sch *
hace los mismo pero al final te muestra el peso total del directorio madre.
Para más referencias:
http://en.wikipedia.org/wiki/Du_(Unix)

grep
Lista los archivos que contengan un palabra en un directorio
Ejemplo: grep -r -l «cebolla» htdocs
Te mostrará los archivos que contengan la palabra «cebolla» en el directorio htdocs
-r indica que buscará en todos los subdirectorios dentro del directorio htdocs
-l indica que listará sólo los archivos que contengan la palabra buscada
-i ignora la honor entre mayúsculas y minúsculas.

more
Muestra el contenido de un archivo en la pantalla. Y al hacer enter te muestra la siguiente línea.
Ejemplo: more /home/resultado.txt
Te mostrará el contenido del archivo resultado.txt que está dentro del directorio home

q
Para terminar un comando en ejecución
Por si te aburres de leer el archivo

cd
Para cambiar de directorio
Ejemplo: cd home
Te lleva al directorio home
Ejemplo: cd ..
Te saca del directorio home
Ejemplo: cd /home/chaveztoro
Te lleva al directorio chaveztoro dentro de home

Empaquetar, apretar y descomprimir de archivos

Empaquetar y comprimir
Ejemplo: tar czvf archivo.tar.gz /home/usuario/public_html/*
Desempaquetar y descomprimir
Ejemplo: tar xzvf archivo.tar.gz
Ver el contenido (sin extraer)
Ejemplo: tar tzvf archivo.tar.gz

Compresión y descompresión de archivos

zip archivo.zip /home/usuario/public_html/directorio – Comprimir directorio
unzip archivo.zip – Descomprimir archivo.zip
unzip -v archivo.zip – Ver contenido de archivo.zip

clear
Para limpiar la pantalla negra que estamos usando
Ejemplo: clear
Borra todo lo que había en la pantalla.

find
Para encontrar un archivo
Ejemplo: find / -name archivo.*
Buscará en todo el disco (/) algo llamado archivo con cualquier extensión.
Ejemplo: find /home -name archivo.*
Buscará en el directorio home (/home) algo llamado archivo con cualquier extensión.

rm
Para borrar un archivo
Ejemplo: rm /home/archivo.txt
Borra resultado.txt dentro del directorio home

/scripts/cpbackup
Para ejecutar backup

wget
Para traer un archivo que esta en internet
Ejemplo: wget http://accesoperu.com/backup.gz
Copia en la carpeta en que me encuentro el archivo del url.

chmod
Para cambiar permisos de un archivo
Ejemplo: chmod 777 archivo.txt
Le cambiara a 777 el permiso a archivo.txt

cp
Para trasladar un archivo
Ejemplo: cp /home/backup1.tar.gz
/home/accesoperu
Copia backup1.tar.gz de /home al directorio home/accesoperu

Para reiniciar el régimen de webmail Horde
/scripts/fullhordereset –force

chown
Para cambiar propietario de los archivos
Para hacerlo basta lo siguiente:
chown nuevopropietario:nuevopropietario -R folder/
Por ejemplo, si el nuevo propietario fuera s7accesoperu y la carpeta fuera clientes:
chown s7accesoperu:s7accesoperu -R clientes/

el -R hace que se cambie también todo lo que esta dentro de la carpeta.

Cómo revisar el log de correo en exim:

1.- Ingresar medio SSH al servidor.

2.- En la siguiente carpeta se encuentra el archivo «exim_mainlog»:
/var/log/

3.- Copiarlo a alguna carpeta a la que se pueda acceder medio FTP.
(Por ejemplo en el usuario: romero)

cp /var/log/exim_mainlog /home/romero

Atención: Se requiere tener el user y pass FTP de la cuenta para bajar el archivo

4.- Darle permisos para dominio bajarlo:

chmod 777 /home/romero/exim_mainlog

5.- Ingresar por FTP y bajarlo

Cómo pasar un sitio usando un usuario FTP:

1.- Ingresar medio SSH al servidor al que quieres trasladar el sitio.

2.- Ubícate en la carpeta en la que harás la copia.

3.- Ingresa el siguiente comando:

wget -N -x -r -P/ ftp://webmaster:[email protected]/public_html/*

Dónde la barra inclinada después de -P es la carpeta en la q queremos copiar.
-N es un medida para que deje la fecha singular del archivo.
-x dominio la creación de la carpetas existentes en el origen.
-r es para que entre a todos los directorios existentes y copie.
-P indica en qué carpeta se hace la copia.
Y el asterisco final (*) indica que se quiere trasladar todo.

Cómo migrar en SSH un cpanel a otro:

Para WHM/CPanel, aunque los principios son los mismos y pueden existir adaptados para cualquier panel de control.
Requiere acceso root, o saber el usuario y contraseñas de los clientes.
Primero, hacer lo siguiente para cada cuenta:

1. Accede a tu actual cuenta de WHM. En “Edit a DNS Zone”, elije la cuenta que quieres preparar para la transferencia.

2. En la Zone File verás @ IN 14400 SOA, cambia los 14400 a 3600. Los 14400 representan 4 horas y queremos acortar este período a una hora.

3. Bajando, aproximadamente a la mitad de la página, en la sección llamada «Record» con varias entradas bajo el TTL (Time To Live) título que tiene 14400 en ellos; tendrás que cambiar éstos a 3600 también.

4. Aumenta el número de encadenamiento en simple para indicarle que es la más actual actualización, guárdalo, y repite esto para cada sitio web.
Una vez que haz hecho esto para cada cuenta que quieres transferir, anda consiguiéndote un poco de café y descansa un rato… si tienes muchos clientes.
¿Listo? bien, Accede al WHM de tu nuevo servidor y anda a la sección llamada «Transfers». En este título verás varias opciones, sólo nos preocuparemos de las primeras 3.
La primera disyuntiva es si tienes acceso como root en el servidor singular y sólo tienes que trasladar una cuenta, o deseas trasladar una cuenta por vez * (esta es la mejor disyuntiva si tienes un número limitado de clientes).
La segunda disyuntiva está disponible si NO tienes acceso root en el servidor original, pero sabes la consigna de tus clientes.
La tercera disyuntiva es si tienes acceso root en el servidor singular y quiere trasladar todas tus cuentas de una vez, inmediatamente.
Comenzamos

1. Determina si los sitios web que estás transfiendo son estáticos o dinámicos. Son estáticos principalmente html sin base de datos de uso activo, y son dinámicos los que usan activamente bases de datos como por ejemplo algún tipo de foro. Si este es un sitio web estático, estás listo para trasladarla; si es un sitio web dinámico, tendrás que parar (shut down) la base de datos durante una hora hasta que el sitio web sea redireccionado del antiguo servidor al nuevo.

2. Elije la disyuntiva que deseas emplear para enajenar la(s) cuenta(s)

3. Ahora tendrás que concluir el IP del servidor singular (antiguo), el nombre de usuario y la contraseña. También tendrás que elegir si hay que producir al sitio web una IP en el nuevo servidor, y desde que tipo de servidor te estás trasladando. Da clic en Setup.

4. Tu nuevo servidor intentará acceder al antiguo medio ftp y empaquetar/embalar la cuenta, con bases de datos y cuentas/contraseñas de e-mail intactas. Esto transferirá y configurará la cuenta en el nuevo servidor y si todo es correcto, recibirás un mensaje diciendo que la transferencia fue completada con éxito.

5. En el nuevo Server, en la sección DNS Functions, abre “Edit DNS Zone”. Elije la cuenta que quieres editar, (la que acabas de transferir) y cambia la información del nameservers que ha sido puesta por defecto, pone allí tu información de nameservers, aumenta el número de encadenamiento por uno, guarda todo, y repite los pasos para cada cuenta.

6. Ahora vuelve a acceder a tu veterano servidor, y en la sección «Records», cambia todas las instancias de las IP originales (antiguas) a las nuevas IP del nuevo servidor. Aumenta el número de encadenamiento por uno, guarda y cierra.

7. Repetir pasos 1 – 6 para cada cuenta.
En aproximadamente una hora, una vez que los ciclos TTL se completen, los sitios web estarán resolviendo en el nuevo servidor.
Sólo un paso más para hacer. Anda a tu registrar (registrador ns) y actualiza las IPs de tu nameservers para reflectar tus nuevas IPs.

Fuentes de Información

El contenido del post es de mi autoría, y/o, es un recopilación de distintas fuentes.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *