En ocasiones, me interesa realizar determinadas tareas directamente mediante dsh, en lugar de esperar a que se vayan realizando mediante puppet. Un ejemplo de ello es cuando quiero instalar un nuevo kernel para los clientes ltsp.
Para instalar un nuevo kernel en el chroot de los clientes ltsp utilizo un script (actualizakernelchroot.sh) que copio de forma remota a las máquinas y posteriormente ejecuto mediante dsh.
El script es muy simple, como se puede ver:
El script es muy simple, como se puede ver:
#!/bin/bash
# Instala el kernel y los headers que le indiquemos en las variables KERNEL y HEADERES en el chroot
# Una vez instalado, regenera la imagen de los terminales y actualiza los kernels en:
# * /var/lib/tftpboot
# * /srv/tftp
# Esteban M. Navas Martín
# Administrador Informático del IES Valle del Jerte.
# 22-Enero-2012
KERNEL="linux-image-2.6.32-5-686"
HEADERS="linux-headers-2.6.32-5-686"
mount -t proc proc-chroot /opt/ltsp/i386/proc
mount -t devpts devpts-chroot /opt/ltsp/i386/dev/pts
ltsp-chroot -a i386 apt-get -y install $KERNEL $HEADERS
umount proc-chroot
umount devpts-chroot
ltsp-update-image --arch i386
ltsp-update-kernels
Para cambiar el kernel a instalar, modificamos la variable KERNEL y la variable HEADERS y listo.
En respuesta al comentario de LOR, así es como quedaría el script, sustituyendo los comandos de montaje por opciones de ltsp-chroot que permiten realizar directamente dichos montajes:
En respuesta al comentario de LOR, así es como quedaría el script, sustituyendo los comandos de montaje por opciones de ltsp-chroot que permiten realizar directamente dichos montajes:
#!/bin/bash
# Instala el kernel y los headers que le indiquemos en las variables KERNEL y HEADERES en el chroot
# Una vez instalado, regenera la imagen de los terminales y actualiza los kernels en:
# * /var/lib/tftpboot
# * /srv/tftp
# Esteban M. Navas Martín
# Administrador Informático del IES Valle del Jerte.
# 22-Enero-2012
KERNEL="linux-image-2.6.32-5-686"
HEADERS="linux-headers-2.6.32-5-686"
ltsp-chroot -a i386 -d -p apt-get -y install $KERNEL $HEADERS
ltsp-update-image --arch i386
ltsp-update-kernels
0 comentarios:
Publicar un comentario