# rm-rf.es | Administración de sistemas

Bitácora personal de un SysAdmin Gnu/Linux, Windows, BSD...

cPanel: eliminar directorio .cpan por excesivo tamaño

Si sois administradores de servidores con cPanel os habréis dado cuenta que muchas veces el directorio /home/.cpan termina ocupando cerca de 1G de espacio. Gracias a The cPanel Admin descubro la forma de eliminarlo y regenerarlo sin riesgo, pasando de ocupar 1G a apenas 20M.

Primero eliminamos el directorio:

# rm -rf /home/.cpan

Posteriormente ejecutamos los siguientes comandos:

# perl -MCPAN -e shell

Una vez en la shell de cpan:

cpan> install Bundle::CPAN
cpan> reload index
cpan> reload cpan
cpan> exit

Y finalmente de nuevo en la shell ssh:

/scripts/checkperlmodules --full

[cpanel] Unable to locate forwarder “” for account

Últimamente he encontrado dos veces el siguiente error dentro de los logs de error de cPanel:

/usr/local/cpanel/logs/error_log

[2010-08-09 08:38:52 +0200] info [cpanel] Unable to locate forwarder "" for account xxxxx@xxx.com on domain xxx.com
[2010-08-09 08:39:02 +0200] info [cpanel] Unable to locate forwarder "" for account xxxxx@xxx.com on domain xxx.com
[2010-08-09 10:02:42 +0200] info [cpanel] Unable to locate forwarder "" for account xxxxx@xxx.com on domain xxx.com
[2010-08-09 11:03:35 +0200] info [cpanel] Unable to locate forwarder "" for account xxxxx@xxx.com on domain xxx.com
[2010-08-09 11:03:54 +0200] info [cpanel] Unable to locate forwarder "" for account xxxxx@xxx.com on domain xxx.com
[2010-08-09 11:19:25 +0200] info [cpanel] Unable to locate forwarder "" for account xxxxx@xxx.com on domain xxx.com
[2010-08-09 11:25:37 +0200] info [cpanel] Unable to locate forwarder "" for account xxxxx@xxx.com on domain xxx.com

El error al tratar de eliminar una redirección de correo desde la sección “Alias y reenvío” del panel de control de una cuenta. Por el momento no he encontrado otra solución que eliminar la redirección de forma manual dentro del fichero de alias del dominio en cuestión:

vim /etc/valiases/xxx.com

Y eliminar la línea de la redirección que queremos borrar. Puede que sea un bug del skin que utilizamos para los paneles, pues parece que hay casos en los que cuando esto pasa, si cambias al tema x3 se puede eliminar sin problemas.

Feliz día del sysadmin 2010

Un año más, felicidades a todos los administradores de sistemas. Seguramente serán pocos los usuarios que os feliciten, por lo menos esperaremos que las máquinas nos den un día de respiro y se mantengan todas en verde ;)

Felicidades a Recetas de un Sysadmin, SystemAdmin, Matnews, supaplex.info, thinking sysadmin, logadmin.net, Racker Hacker, etc etc etc

Feliz día del sysadmin

Y que todos los Data Center sean como el de la siguiente foto, ese sería un buen regalo, ¿verdad? :D

sysadmin

hpasm “sed: can’t read /etc/init.d/ipmi: No such file or directory”

Instalando hoy en unos nuevos equipos hpasm (Hpasmcli: monitorizar el estado de hardware HP Proliant desde linux) me encontré con el siguiente error al arrancar los servicios:

# /etc/init.d/hpasm restart
Shutting down NIC Agents (cmanic): All agents

Shutting down Storage Agents (cmastor): cmaeventd cmaidad cmafcad cmaided cmascsid cmasasd
   Shutting down Storage Event Logger (cmaeventd):         [  OK  ]
   Shutting down IDA agent (cmaidad):                      [  OK  ]
   Shutting down FCA agent (cmafcad):                      [  OK  ]
   Shutting down IDE agent (cmaided):                      [  OK  ]
   Shutting down SCSI agent (cmascsid):                    [  OK  ]
   Shutting down SAS agent (cmasasd):                      [  OK  ]

Shutting down Server Agents (cmasvr): cmastdeqd cmahealthd cmaperfd cpqriisd cmasm2d cmarackd
   Shutting down Standard Equipment agent (cmastdeqd):     [  OK  ]
   Shutting down Health agent (cmahealthd):                [  OK  ]
   Shutting down Performance agent (cmaperfd):             [  OK  ]
   Already stopped cpqriisd.                               [  OK  ]
   Shutting down RIB agent (cmasm2d):                      [  OK  ]
   Shutting down Rack agent (cmarackd):                    [  OK  ]

Shutting down Foundation Agents (cmafdtn): cmathreshd cmahostd cmapeerd
   Shutting down Threshold agent (cmathreshd):             [  OK  ]
   Shutting down Host agent (cmahostd):                    [  OK  ]
   Shutting down SNMP Peer (cmapeerd):                     [  OK  ]

sed: can't read /etc/init.d/ipmi: No such file or directory
   Using standard Linux IPMI device driver and hpasm-lite
   Shutting down Proliant Standard IPMI based System Health Monitor (hpasmlited):
                                                           [  OK  ]
sed: can't read /etc/init.d/ipmi: No such file or directory
   Using standard Linux IPMI device driver and hpasm-lite
   Starting Proliant Standard IPMI based System Health Moni[  OK  ]smlited):
Starting Foundation Agents (cmafdtn): cmathreshd cmahostd cmapeerd
   Starting Threshold agent (cmathreshd):                  [  OK  ]
   Starting Host agent (cmahostd):                         [  OK  ]
   Starting SNMP Peer (cmapeerd):                          [  OK  ]

Starting Server Agents (cmasvr): cmastdeqd cmahealthd cmaperfd cpqriisd cmasm2d cmarackd
   Starting Standard Equipment agent (cmastdeqd):          [  OK  ]
   Starting Health agent (cmahealthd):                     [  OK  ]
   Starting Performance agent (cmaperfd):                  [  OK  ]
   cpqriisd requires hp_ilo.
                                                           [  OK  ]
   Starting RIB agent (cmasm2d):                           [  OK  ]
   cpqriisd requires hp_ilo.
                                                           [  OK  ]
   Starting Rack agent (cmarackd):                         [  OK  ]

Starting Storage Agents (cmastor): cmaeventd cmaidad cmafcad cmaided cmascsid cmasasd
   Starting Storage Event Logger (cmaeventd):              [  OK  ]
   Starting IDA agent (cmaidad):                           [  OK  ]
   Starting FCA agent (cmafcad):                           [  OK  ]
   Starting IDE agent (cmaided):                           [  OK  ]
   Starting SCSI agent (cmascsid):                         [  OK  ]
   Starting SAS agent (cmasasd):                           [  OK  ]

Starting NIC Agents (cmanic): All agents
   Starting NIC Agent Daemon (cmanicd):   Unable to determine if cmanic successfully started

hpasm:  Server Management is enabled

El problema era no tener instalado OpenIPMI, procedemos a instalarlo desde yum (en este caso era una CentOS 64bits) y problema solucionado

# yum install OpenIPMI.x86_64

Ya podemos reiniciar los servicios hpasm y debería desaparecer el error.

Múltiples sistemas operativos disponibles desde un USB

MultiBoot ISOs

MultiBoot USB permite crear un USB de arranque en el cual añadir las ISO de sistemas operativos que queramos. Finalmente, al arrancar un equipo con el USB disponemos de un menú (GRUB) del que seleccionar el sistema operativo con el que arrancar.

Esto es extremadamente útil pues permite disponer, en una única memoria USB todos los sistemas operativos que necesitemos, Live-CD, distribuciones de rescate, utilidades como Ubuntu, Fedora, openSUSE, GParted partition disc, Ophcrack password reset, etc

Podéis descargar MultiBootISOs desde el sitio web www.pendrivelinux.com, donde encontraréis los pasos para la creación del USB y más información (También en LifeHacker)

Redirección 301 con IIS

Vamos a ver como realizar una redirección tipo 301 (Página movida permanentemente) para un sitio web alojado en un servidor con IIS (Internet Information Services) corriendo.

Necesitamos acceso por Terminal Service al servidor en el que tenemos el sitio web alojado. Una vez dentro accederemos a “Internet Services Manager” para modificar el website:

Start -> Programs -> Administrative Tools -> Internet Services Manager
Inicio -> Programas -> Herramientas administrativas -> Administrador de Internet Information Services (IIS)

Una vez dentro accedemos al servidor pinchando en él (normalmente local computer) y después pinchamos en websites. Ahora tendremos todos los websites que hay configurados en ese servidor. Pinchamos con botón derecho sobre el que nos interese y pinchamos en “Propiedades“.

Ahora, en la sección “Home Directory“, tenemos que seleccionar “A redirection to a URL” o “Redirección a una URL”. En el cuadro de texto escribimos la URL de destino para la redirección 301 y nos aseguramos de pinchar en “A permanent Redirection for this resource“. Esta última opción es la que configurará el 301.

Redirección 301 IIS

Ahora solamente queda guardar y reiniciar el website para que los cambios refresquen. Esta sería una redirección básica 301. IIS permite también redirigir páginas individuales del website o pasar variables como haríamos con mod_rewrite y apache. Esto lo veremos en otra entrada.

Automatización e integración de cPanel/WHM

Hoy os voy a dejar un enlace que os será de gran utilidad si administráis un número elevado de servidores con cPanel/WHM y necesitáis automatizar ciertas tareas como:

  1. Saltarse el asistente de cPanel que aparece una vez instalado y crear un fichero con todas esas configuraciones.
  2. Crear una ISO que instala automáticamente Centos (o RHEL) y cPanel/WHM.
  3. Provisionamiento automático en cPanel con Kickstart.
  4. Perfiles de Easyapache.
  5. Integración y automatización utilizando la API de cPanel

Todo esto y algunas cosas más las encontraréis en el blog oficial de cPanel Integration. Espero que os sea de utilidad.

Cambiar parámetros de red HP iLO desde Linux

Seguimos repasando algunas de las posibilidades que nos ofrece hponcfg, utilidad que permite cambiar desde el sistema operativo GNU/Linux la configuración de la iLO (Integrated Lights-Out) de servidores HP Proliant.

En este caso vamos a ver como modificar los parámetros de red (IP, máscara, puerta de enlace, etc) que se utilizan para posteriormente acceder a la web de gestión iLO.

Seguimos utilizando los ejemplos en formato XML de HP Lights-Out XML PERL Scripting Sample for Linux. A continuación el utilizado para realizar modificaciones en los parámetros de red:

<!--         RIBCL Sample Script for HP Lights-Out Products          -->
<!--Copyright (c) 2003,2010 Hewlett-Packard Development Company, L.P.-->
<!-- Description:  This is a sample XML script to configure the      -->
<!--               network settings for following devices:           -->
<!--                 Integrated Lights-Out 3 (iLO 3)                 -->
<!--                 Integrated Lights-Out 2 (iLO 2)                 -->
<!--                 Integrated Lights-Out (iLO)                     -->
<!--                 Remote Insight Lights-Out Edition II (RILOE II) -->
<!-- NOTE:  You will need to replace the USER_LOGIN and PASSWORD     -->
<!--        and other values inside the quotation marks with values  -->
<!--        that are appropriate for your environment.               -->
<!--        Double check all values before executing this script.    -->
<!--        Incorrect or mismatched network settings may cause you   -->
<!--        to lose the ability to connect to your Lights-Out device.-->
<!--        Use CPQLOCFG.EXE ver 2.26 or greater with this script.   -->
<!--        This script was written for iLO 3 firmware version 1.00  -->
<!--        release.                                                 -->
<!--        See "HP Integrated Lights-Out Management Processor       -->
<!--        Scripting and Command Line Resource Guide" for more      -->
<!--        information on scripting and the syntax of the RIBCL     -->
<!--        XML.                                                     -->
<!--        Firmware support infomation for this script:             -->
<!--            iLO 3 - All versions.                                -->
<!--            iLO 2 - All versions.                                -->
<!--              iLO - All versions.                                -->
<!--         RILOE II - All versions.                                -->
<RIBCL VERSION="2.0">
<LOGIN USER_LOGIN="adminname" PASSWORD="password">
<RIB_INFO MODE="write">
<MOD_NETWORK_SETTINGS>
<!--        Firmware support infomation for next 4 tags :      -->
<!--            iLO 3 - All versions.                          -->
<!--            iLO 2 - All versions.                          -->
<!--              iLO - All versions.                          -->
<!--         RILOE II - None.                                  -->
<ENABLE_NIC value="Yes"/>
<REG_DDNS_SERVER value="Yes"/>
<PING_GATEWAY value="No"/>
<DHCP_DOMAIN_NAME value="Yes"/>
<!--        Firmware support infomation for next 22 tags :     -->
<!--            iLO 3 - All versions.                          -->
<!--            iLO 2 - All versions.                          -->
<!--              iLO - All versions.                          -->
<!--         RILOE II - All versions.                          -->
<SPEED_AUTOSELECT value="YES"/>
<NIC_SPEED value="100"/>
<FULL_DUPLEX value="Yes"/>
<DHCP_ENABLE value="No"/>
<IP_ADDRESS value="172.20.60.152"/>
<SUBNET_MASK value="255.255.255.0"/>
<GATEWAY_IP_ADDRESS value="172.20.60.1"/>
<DNS_NAME value="demoilo"/>
<DOMAIN_NAME value="internal.com"/>
<DHCP_GATEWAY value="Yes"/>
<DHCP_DNS_SERVER value="Yes"/>
<DHCP_WINS_SERVER value="Yes"/>
<DHCP_STATIC_ROUTE value="Yes"/>
<REG_WINS_SERVER value="Yes"/>
<PRIM_DNS_SERVER value="0.0.0.0"/>
<SEC_DNS_SERVER value="0.0.0.0"/>
<TER_DNS_SERVER value="0.0.0.0"/>
<PRIM_WINS_SERVER value="0.0.0.0"/>
<SEC_WINS_SERVER value="0.0.0.0"/>
<STATIC_ROUTE_1 DEST="0.0.0.0" GATEWAY="0.0.0.0"/>
<STATIC_ROUTE_2 DEST="0.0.0.0" GATEWAY="0.0.0.0"/>
<STATIC_ROUTE_3 DEST="0.0.0.0" GATEWAY="0.0.0.0"/>
<!--        Firmware support infomation for next 4 tags :      -->
<!--            iLO 3 - All versions.                          -->
<!--            iLO 2 - None.                                  -->
<!--              iLO - None.                                  -->
<!--         RILOE II - None.                                  -->
<DHCP_SNTP_SETTINGS value="Yes"/>
<SNTP_SERVER1 value="0.0.0.0"/>
<SNTP_SERVER2 value="0.0.0.0"/>
<TIMEZONE value="America/Anchorage"/>
<!-- This tag can be used on an iLO blade server to force iLO  -->
<!-- to attempt to get an IP address from the signal backplane -->
<!-- in a server enclosure.  The IP address must be set prior  -->
<!-- with Mod_Enc_Bay_IP_Settings.xml                          -->
<!--        Firmware support infomation for next tag:          -->
<!--            iLO 3 - All versions.                          -->
<!--            iLO 2 - All versions.                          -->
<!--              iLO - All versions.                          -->
<!--         RILOE II - None.                                  -->
<!--
<ENCLOSURE_IP_ENABLE VALUE="Yes"/>
-->
<!--        Firmware support infomation for next tag:          -->
<!--            iLO 3 - None.                                  -->
<!--            iLO 2 - None.                                  -->
<!--              iLO - None.                                  -->
<!--         RILOE II - All versions.                          -->
<!--
<WEB_AGENT_IP_ADDRESS value="192.168.0.1"/>
-->
</MOD_NETWORK_SETTINGS>
</RIB_INFO>
</LOGIN>
</RIBCL>

En este XML tenemos que modificar primero los datos de conexión como administrador USER_LOGIN y PASSWORD y posteriormente a los parámetros que cada uno necesitemos modificar (IP_ADDRESS, SUBNET_MASK, GATEWAY_IP_ADDRESS…).

Si únicamente necesitáis cambiar los valores básicos, ahí va un script reducido y más fácil de entender:

<RIBCL VERSION="2.0">
<LOGIN USER_LOGIN="xxxxxxxx" PASSWORD="xxxxxxx">
<RIB_INFO MODE="WRITE" >
<MOD_NETWORK_SETTINGS>
<IP_ADDRESS VALUE = "192.168.0.100"/>
<SUBNET_MASK VALUE = "255.255.255.0"/>
<GATEWAY_IP_ADDRESS VALUE = "192.168.0.1"/>
<PRIM_DNS_SERVER value = "192.168.0.222"/>
<DHCP_ENABLE VALUE = "N"/>
</MOD_NETWORK_SETTINGS>
</RIB_INFO>
</LOGIN>
</RIBCL>

Una vez modificado todo el script a conveniencia lo ejecutamos contra la aplicación:

# hponcfg -f cambio-red.xml

Si en la salida de ejecución del comando recibimos “Script succeeded” el cambio debería haber funcionado y ya podríamos acceder con los nuevos datos.