Algunos comandos esenciales para la administración de servidores Linux. Tomado de http://www.crkdown.com
tail -f archivo
Permite ver en tiempo real como se genera un log. También puedes filtrarlo con grep así: tail -f archivo |grep mibusqueda
df -h
Muestra el tamaño de discos y particiones en Kb, Megas o Gigas haciendolo más fácil de leer
rsync -vrPtz -e ssh host:/carpetaremota/* /carpetalocal/
Sincroniza una carpeta entre dos servidores pero lo hace con resume, ideal para cuando hay problemas de networking
whois dominio.com
Muestra un poco de información de algún dominio como fechas, dns etc
dig MX dominio.com
Puedes encontrar aspectos de las zonas de un dominio cualquiera. Por ejemplo puedes usar MX, A, TXT etc
[~]# dig mx ejemplo.com
;; QUESTION SECTION:
;industrialm.com. IN MX
;; ANSWER SECTION:
industrialm.com. 9781 IN MX 0 aspmx.l.google.com.
;; Query time: 0 msec
;; SERVER: 69.64.44.50#53(69.64.44.50)
;; WHEN: Sat Jan 9 19:06:18 2010
;; MSG SIZE rcvd: 64
chmod -R 755 carpeta
Poner permisos recursivamente a un directorio. Igual puedes usar cualquier flag para permisos de escritura, lectura o ejecución a grupos o usuarios.
top
Mirar el consumo de recursos en tiempo real. El top es bueno aunque puedes presionar la letra u para poner los procesos de un usuario o presionando F para ver todas las demás opciones de filtrado
cp -fr carpeta lugar_de_destino
Copiado recursivo sin preguntas de una carpeta a otro lugar. Lógicamente como no pregunta puede reemplazar tus archivos si estos ya están en el lugar de destino
watch mysqladmin proc
Muestra las conexiones actuales de Mysql en tiempo real
su – postgres luego psql y luego select * from pg_stat_activity;
Procesos en tiempo real en Postgres muy util. Debes tener activada la opción de logueo en el archivo postgresql.conf comunmente presente en /var/lib/pgsql/data
mysqldump -u usuario -pclave basededatos > basededatos.sql
Un dump o backup de la base de datos Mysql
mysql -u usuario -pclave basededatos < basededatos.sql
Restaurar un backup de mysql
ls -la
Ver un listado detallado de archivos, carpetas y permisos. Puedes filtrarlo con |grep filtro
du -sch *
Ver un listado de archivos, carpetas y sus tamaños. Muy util
root@host [/home/user]# du -sch *
0 access-logs
8.0K cpmove.psql
40K etc
59M mail
8.0K public_ftp
45M public_html
4.0M tmp
0 www
108M total
ps -aux |grep filtro
Listado de todos los procesos del sistema que corren en ese momento. Como pueden ser muchos la aplicación de un filtro es ideal
vim o vi
Es el mejor editor de texto en consola, muy poderoso
vim archivo
Pulsar / y luego escribir el término de búsqueda para encontrar lo que sea
Pulsar la tecla insert para insertar un texto. Delete para borrar. Para salir de estos dos pulsar escape
Escribiendo :w escribes el archivo
Escribiendo :wq escribes y sales del archivo
Si quieres borrar una línea das dos veces sobre la tecla D.
Si quieres deshacer pulsas escape y luego la tecla U cuantas veces quieras devolverte
perl -pi.bak -e “s/[terminoacambiar]/[nuevotermino]/g” *.txt
Find and Replace recursivo en archivos del shell. Jeje debes ser muy cuidadoso. En el ejemplo se busca un termino y se reemplaza por otro escribiendo el archivo al vuelo. Se busca en archivos terminados en txt pero puedes usar cualquier extensión e incluso con *. Debes tener cuidado con archivos binarios
hdparm -t /dev/hda
Hacer un test a la velocidad de escritura de un disco. Es bueno cuando sospechas que esta sacando la mano y debes hacer copias ASAP
yum install o yum remove
Instalar algunas aplicaciones o servicios sin despelucarte. Ejemplo yum install postgres Lógico depende de la distribución y los servidores de repositorios de tu yum
for file in *
do gzip -r $file
done
for file in *
do gunzip -r $file
done
Para descomprimir y comprimir en un bucle recursivamente desde shell
tar tfz archivo.tar.gz |grep “termino.txt”
Busca un archivo llamado “termino.txt” dentro de un tar.gz para evitar descomprimir todo
gunzip -c archivo.tar.gz | tar xvf – carpeta/termino.txt
Extrae un archivo llamado termino.txt sin necesidad de descomprimir todo el tar.gz
sar -B 1 1000
Verificar el consumo de escritura lectura del disco en tiempo real. Ideal para verificar cuando se tienen problemas de performance por i/o degradation
netstat -anp |grep ‘tcp\|udp’ | awk ‘{print $5}’ | cut -d: -f1 | sort | uniq -c | sort -n
Detectar un posible DDos, aunque si es distribuído no sirve de mucho
Killall comando
Matar masivamente un proceso que puede estar generando problemas, por ejemplo killall php o por ejemplo killall postmaster Logicamente podrías matar el proceso fuente y hacer caer el servicio.
find . -type f -size +100000k -exec ls -lh {} \; | awk ‘{ print $9 “: ” $5 }’
Busca archivos grades recursivamente. Este busca archivos de más de 100 mil k
passwd
Cambia claves sobre todo la de root
Por ultimo hay herramientas muy interesantes para conocer aspectos más puntuales como el uso de disco pero sólo funcionan en Kernels más recientes.
pidstat -d 2
Permite conocer en tiempo real el proceso puntual PID que esta escribiendo o leyendo en ese momento. Muy útil ya que a veces es muy dificil saber que lo causa


Leave a comment