View all posts filed under 'Sistemas'

Configurar LOGROTATE en sistemas Red Hat

Monday, 12. April 2010 12:29

En sistemas Red Hat y todas sus variantes tenemos la opción de manejar la rotación de logs con logrotate, y evitar que los ficheros de log de los distintos servicios ocupen mucho espacio en disco.

Para configurar esto tenemos el fichero: /etc/logrotate.conf, donde podemos especificar directivas generales para la rotación de logs. Y en el directorio /etc/logrotate.d/ indicamos procedimientos de rotación para cada servicio de forma específica.

‘logrotate’  lo configuramos en un cron para que se ejecute de forma periódica. Ppor defecto ya viene configurado en el sistema, y si queremos lanzarlo manualmente para probar si está bien, ejecutamos:

# logrotate /etc/logrotate.conf  -f

Veamos un ejemplo con el servicio apache. Tenemos que crear un fichero de texto plano ‘apache’ dentro de /etc/logrotate.d/ con permisos 644. Vamos a configurar que los ‘logs’ de apache : acces_log y error_log, roten diariamente y se guarden durante 31 días. Y además configuramos que se compriman los logs rotados.

El contenido del fichero ‘/etc/logrotate.d/apache‘ quedaría así :

/log/apache2/access_log {

daily

rotate 31

copytruncate

compress

notifempty

missingok

}

/log/apache2/error_log {

daily

rotate 31

copytruncate

compress

notifempty

missingok

}

Lo que se indica al principio , es la ruta donde se guardan los logs y el nombre. Y el significado de los siguientes parámetros es el siguiente:

-         daily : para hacer la rotación de log diariamente

-         rotate 31: mantener las rotaciones 31 días

-         copytruncate: copia el archivo original de log y lo pone a 0

-         compress: comprime logs antiguos

-         notifempty: comprueba si está vacío el archivo log para entonces rotar o no

-         missingok: Si da error en fichero pasa al siguiente que no de error

Si necesitamos ver las posibilidades de configuración y otros parámetros, podemos consultar el manual con : ‘man logrotate’, en la consola de nuestro sistema.

Si queremos, se puede indicar, después de la rotación de log, que se reinicie el servicio ‘apache’ :

postrotate
/etc/init.d/apachectl restart > /dev/null
endscript

Category:CentOS, Fedora, Red Hat, Sistemas, Tips | Comment (0) | Author:

Compartir archivos vía NFS en Linux

Tuesday, 12. January 2010 16:51

Con NFS (Network File Sistem o Sistema de Ficheros de Red) podemos montar una partición de otro servidor en un directorio de otro servidor remoto como si fuera una partición local

Necesitamos tener instalado nfs-common y portmap si queremos utilizar los recursos NFS compartidos de otro servidor o para poder compratir y acceder, instalar : nfs-kernel-server y portmap

comprobar que está inciado el servicio :

# ps aux | grep portmap

Para compartir un directorio del servidor, hay que editar fichero /etc/exports y añadir como ejemplo :

/var/ejemplo *(rw,no_root_squash,snyc)

Sigue la forma :

directorioacompartir maquinasconlasquecompartir(opcionesdeexportación)

Con ‘*’ indicamos que se puede acceder de cualquier ip, y si pones ‘ro’ solo se permite acceso de lectura.

Utilizamos los fichero /etc/hosts.allow/etc/hosts.deny para configurar acceso y seguridad :

/etc/hosts.deny
portmap:ALL
lockd:ALL
mountd:ALL
rquotad:ALL
statd:ALL

Para que tengan efectos los cambios : # exportfs -ra , y tenemos el servidor NFS funcionando

Ahora toca conectarse a esa máquina, para ello montamos en nuestro equipo el recurso compartido en un direcotorio local :

Podemos ver que contenido comparte una máquina : # showmount -e IPSERVIDOR

Usamos el comando mount para acceder:

# mount IPServidorNFS:/DirectorioCompartido PuntodeMontaje

# mount 192.168.1.59:/var/backup /mnt/temporal_nfs

Para mantener este recurso cuando se reinicie la máquina hay que añadir línea al fichero /etc/fstab :

192.168.1.59:/copias /home/copias  nfs rw,hard,intr 0 0

Category:Sistemas | Comment (0) | Author:

Ejecución de un comando en segundo plano o abandonando la shell

Thursday, 12. November 2009 13:08

Si necesitamos que un proceso se ejecute en segundo plano en nuestra shell activa o para evitar que se interrumpa si salimos de la shell (por ejemplo cuando estamos conectado con Putty al servidor y se desconecta el terminal)

# nohup  proceso  &

nohup : mantiene activo el proceso o el script que hemos iniciado aunque cierres la sesión de shell
& : hace que el proceso se ejecute en segundo plano hasta que termine

Para retornar al programa o proceso utilizamos:  ‘fg’‘exit’

La salida del programa que lanzamos con ‘nohup’, que normalmente se muestra en la terminal, se guarda en un fichero ‘nohup.out’ que se guarda en la ruta desde donde hemos lanzado nohup.

Category:Linux, Sistemas, Tips | Comment (0) | Author:

Limitar uso de CPU por aplicación o proceso en Debian, Ubuntu

Thursday, 12. November 2009 12:34

A veces necesitamos una solución para poder limitar el uso de CPU que hace una aplicación o proceso en nuestro sistema Linux. Hay aplicaciones devoradoras de tiempo de proceso. Aunque tenemos la posibilidad de configurar /etc/security/limits.conf para indicar ‘tiempo’ de uso de CPU, si queremos indicar valores en porcentajes, tenemos la utilidad ‘cpulimits’. Para instalarlo en sistemas Debian, Ubuntu:

Tenemos el programa en http://cpulimit.sourceforge.net

# tar zxf cpulimit-xxx.tar.gz
# cd cpulimit-xxx
# make

Con esto tenemos la aplicación cpulimit, que podemos copiar a /usr/bin

Algunos ejemplo de uso; por ejemplo para limitar por aplicación y que no utilice más del 60% de CPU:

# cpulimit -e  firefox  -l 60

Si queremos indicar el proceso :

# cpulimit -p 1420 -l 30

Podemos buscar el PID de la aplicación :

# ps aux | grep firefox

Category:Debian, Linux, Sistemas, ubuntu | Comment (0) | Author:

Como saber que versión de Ubuntu, RedHat o Linux tenemos instalado

Tuesday, 20. October 2009 17:29

A veces suele pasar, no sabemos que versión de Sistema Operativo instalamos en su momento, o tienes que acceder a un server para ayudar :-) En cualquier caso, para saber que versión tenemos de Ubuntu o Debian instalado en el server:

# lsb_release -a

No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 7.04
Release:        7.04
Codename:       feisty

En caso de tener una Red Hat o CentOS :

# cat /etc/redhat-release
Red Hat Enterprise Linux AS release 4 (Nahant Update 5)

O también consultando en el siguiente fichero, es válido para Linux en general:

#cat /etc/issue
Red Hat Enterprise Linux AS release 4 (Nahant Update 5)
Kernel \r on an \m

Category:CentOS, Fedora, Red Hat, Sistemas, Tips | Comments (3) | Author: