Archivo para la categoría "GNU/Linux"
Ajustando ram en Openvz
Para modificar los parámetros de memoria ram de las máquinas virtuales que manejo en el trabajo utilizo los siguientes valores (en el ejemplo 102 es el # de la mvirtual)
El primer valor es la memoria asignada (fija) el segundo valor es la memoria tope en caso que la máquina virtual requiera (solo por cortos periodos de tiempo) con el fin de evitar una caída en el servicio. Este valor en la mayoría de sitios es conocida como “Burstable”
256:512
vzctl set 102 –vmguarpages 256M –oomguarpages 256M –privvmpages 256M:512M –save
512:1024
vzctl set 102 –vmguarpages 512M –oomguarpages 512M –privvmpages 512M:1024M –save
1024:2048
vzctl set 102 –vmguarpages 1024M –oomguarpages 1024M –privvmpages 1024M:2048M –save
2048:4096
vzctl set 102 –vmguarpages 2048M –oomguarpages 2048M –privvmpages 2048M:4096M –save
El misterioso caso del espacio en disco desaparecido…
En ocasiones en nuestros servidores nos encontramos con el extraño caso de espacio “desaparecido”.
Cuando df -h y du -ch no concuerdan, “espacio perdido”, lo que nos pasa es que cuando borramos logs del httpd y el proceso sigue corriendo, éstos no son reclamados por el sistema de archivos porque el proceso los tiene atados.
[root@servidor ~]# du -ch –max-depth=0 /
7,7G /
7,7G total[root@servidor ~]# df -h
S.ficheros Tamaño Usado Disp Uso% Montado en
/dev/mapper/VolGroup00-LogVol00
32G 28G 1,7G 95% /
/dev/sda1 99M 24M 71M 25% /boot
tmpfs 1014M 0 1014M 0% /dev/shm
21 gigas “perdidos”, por qué?
Se verifica primero que mensajes esta marcando apache – httpd
[root@servidor ~]# lsof | grep httpd | grep deleted
httpd 1672 root 2w REG 253,0 361 7996589 /var/log/httpd/error_log (deleted)
httpd 1672 root 10w REG 253,0 361 7996589 /var/log/httpd/error_log (deleted)
httpd 1672 root 11w REG 253,0 237 7996597 /var/log/httpd/ssl_error_log (deleted)
httpd 1672 root 12w REG 253,0 21653919235 7996497 /var/log/httpd/access_log (deleted)
httpd 1672 root 13w REG 253,0 0 7996465 /var/log/httpd/ssl_access_log (deleted)
httpd 1672 root 14w REG 253,0 0 7996476 /var/log/httpd/ssl_request_log (deleted)
httpd 13568 apache 2w REG 253,0 361 7996589 /var/log/httpd/error_log (deleted)
httpd 13568 apache 10w REG 253,0 361 7996589 /var/log/httpd/error_log (deleted)
httpd 13568 apache 11w REG 253,0 237 7996597 /var/log/httpd/ssl_error_log (deleted)
httpd 13568 apache 12w REG 253,0 21653919235 7996497 /var/log/httpd/access_log (deleted)
httpd 13568 apache 13w REG 253,0 0 7996465 /var/log/httpd/ssl_access_log (deleted)
httpd 13568 apache 14w REG 253,0 0 7996476 /var/log/httpd/ssl_request_log (deleted)
httpd 13570 apache 2w REG 253,0 361 7996589 /var/log/httpd/error_log (deleted)
httpd 13570 apache 10w REG 253,0 361 7996589 /var/log/httpd/error_log (deleted)
httpd 13570 apache 11w REG 253,0 237 7996597 /var/log/httpd/ssl_error_log (deleted)
httpd 13570 apache 12w REG 253,0 21653919235 7996497 /var/log/httpd/access_log (deleted)
Desde cuando httpd está corriendo? desde agosto 20 (en este ejemplo)
[root@servidor ~]# ps aux | grep httpd
root 1672 0.0 0.6 163100 12868 ? Ss Aug20 0:27 /usr/sbin/httpd
apache 13572 0.6 0.4 163628 8408 ? S 14:07 0:00 /usr/sbin/httpd
apache 13573 0.5 0.4 163628 8408 ? S 14:07 0:00 /usr/sbin/httpd
apache 13574 0.6 0.4 163628 8408 ? S 14:07 0:00 /usr/sbin/httpd
apache 13591 0.5 0.4 163628 8408 ? S 14:07 0:00 /usr/sbin/httpd
apache 13592 0.4 0.4 163628 8408 ? S 14:07 0:00 /usr/sbin/httpd
apache 13593 0.4 0.4 163628 8408 ? S 14:07 0:00 /usr/sbin/httpd
root 13595 0.0 0.0 3940 728 pts/1 R+ 14:08 0:00 grep httpd
En un intento de liberar espacio se han borrado los logs varias veces como se ve en el lsof.
Solución:
service httpd stop
service httpd start
Razón: bajar el proceso libera los archivos eliminados de forma que el espacio libre es reclamado por el sistema de archivos.
du y df vuelven a ser consistentes.
[root@servidor ~]# service httpd start
Iniciando httpd: httpd: apr_sockaddr_info_get() failed for servidor
httpd: Could not reliably determine the server’s fully qualified domain name, using 127.0.0.1 for ServerName
[ OK ]
[root@servidor ~]# lsof | grep httpd | grep deleted
[root@servidor ~]# df -h
S.ficheros Tamaño Usado Disp Uso% Montado en
/dev/mapper/VolGroup00-LogVol00
32G 7,7G 22G 27% /
/dev/sda1 99M 24M 71M 25% /boot
tmpfs 1014M 0 1014M 0% /dev/shm
Nota: esta mini-guia fue basada en un correo de Miguel Molina, quien amablemente me mostró como encontrar las gb perdidas en el camino. Si lo ven salúdenlo y denle las gracias…
Comandos útiles para el Programa Vi / Vim
Si eres como yo una persona que utiliza Vi / Vim a diario y que no se sabe toodas las opciones escribo esta mini – guía para tu trabajo diario.
Para obtener un desplazamiento por páginas en el programa Vi / Vim:
Ctrl + f = Avanzar una página
Ctrl + b = Retroceder una página
Para obtener un desplazamiento en la línea donde se encuentra el cursor en el programa Vi / Vim:
$ = Ir al final de la línea
0 = Ir al principio de la línea (cero)
G = Ir a la última línea del documento
Eliminar info
x = Elimina el carácter donde se encuentra el cursor
dd = Elimina la línea donde se encuentre el cursor y desplaza todo el texto arriba.
D = Elimina el texto de la línea en la que se encuentra el cursor
Por ultimo en esta ocasión el comando más util:
u = Deshacer el último comando ejecutado
Si tienes preguntas, comentarios o felicitaciones te invito a plantearlas en mi cuenta de twitter
Rsync para sincronización local (2 directorios mismo pc)
El escenario
Tengo los datos importantes en mi disco duro local y deseo hacer una copia de seguridad ya sea en una memoria USB previamente montada o en un segundo disco duro dentro de la misma máquina la cual solo utilizo para backups.
Dentro de dicho directorio (origen) tengo archivos que no cambian de backup en backup (o cambian muy poco) y por lo tanto no es necesario sobre-escribirlos en el destino de backup. En el directorio origen adicional tengo subdirectorios algunos de los cuales están vacíos y por lo tanto no deben ser copiados.
Parece complejo cierto? pero la solución es simple
El comando
rsync -uarmzhP /dir/origen/ /dir/destino
-u : update
-a: archive mode
-r: recursive
-m: no envía los directorios vacíos
-z: comprime mientras transfiere (así se ahorra tiempo y ancho de banda)
-h: presentación para humanos
-P: muestra el progreso de la copia
Si deseo borrar en el directorio destino los archivos que ya no esten en el directorio origen el comando completo sería:
rsync -uarmzhP –delete /dir/origen/ /dir/destino
donde
- -delete: borra en el destin0 los archivos que ya no estén en el origen
Nota: son dos guiones seguidos (- -)
Si tienes preguntas, comentarios o felicitaciones te invito a plantearlas en mi cuenta de twitter
Equipo Amd Phenom Quad-core
Esta máquina llamada “FEROZ” y que está en servicio desde el 16 de Octubre de 2008 tiene un procesador Amd Phenom Quad-core 9660 con 4 Gb en Ram, una tarjeta de video Nvidia (al fin) GeForce 7300 GT con 256 mb. La vieja unidad quemadora de dvds, un disco duro ide de 320 Gb (donde instalo el sistema operativo), dos discos SATA de 1 Tb montados en un sistema LVM dando un total de 1.82 Tb en LVM.
La versión mas reciente de Debian reconoce la tarjeta de red onboard que es una nvidia y la tarjeta de sonido es una Encore con chip VIA (maneja 5.1)
Actualmente está con multi boot instalado Windows Xp SP3 (un mal necesario) y mi confiable y amigable Gnu/Linux Debian.
La información técnica de dicha máquina es:
# cat /proc/cpuinfo (esto por 4 procesadores) processor : 0 vendor_id : AuthenticAMD cpu family : 16 model : 2 model name : AMD Phenom(tm) 9600 Quad-Core Processor stepping : 2 cpu MHz : 2299.977 cache size : 512 KB physical id : 0 siblings : 4 core id : 0 cpu cores : 4 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 5 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nonstop_tsc extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs bogomips : 4599.94 TLB size : 1024 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm stc 100mhzsteps hwpstate # cat /proc/meminfo MemTotal: 4060756 kB MemFree: 100344 kB Buffers: 1188852 kB Cached: 2435840 kB SwapCached: 0 kB Active: 268112 kB Inactive: 3543264 kB Active(anon): 114956 kB Inactive(anon): 76504 kB Active(file): 153156 kB Inactive(file): 3466760 kB Unevictable: 4 kB Mlocked: 4 kB SwapTotal: 7928824 kB SwapFree: 7928824 kB Dirty: 0 kB Writeback: 0 kB AnonPages: 186768 kB Mapped: 63384 kB Shmem: 4700 kB Slab: 78368 kB SReclaimable: 58672 kB SUnreclaim: 19696 kB KernelStack: 2120 kB PageTables: 14684 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 9959200 kB Committed_AS: 458088 kB VmallocTotal: 34359738367 kB VmallocUsed: 122720 kB VmallocChunk: 34359609048 kB HardwareCorrupted: 0 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB DirectMap4k: 7040 kB DirectMap2M: 2088960 kB DirectMap1G: 2097152 kB
Luego les contaré como se va comportando y cambios que realizo.
