schroot
schroot es un conjunto de programas que facilitan mucho la creación y el mantenimiento de entornos cerrados (chroot) para distribuciones Debian.
Se caracteriza principalmente por ...
- la ejecución de programas ó sesiones de usuario en diferentes entornos.
- el concepto de sesiones, recuperables tras un reinicio de la máquina.
- la configuración dividida, que permite efectuar un montón de tareas
automágicamente tales como:
- el montaje de sistemas de archivos especiales (
/proc
y/dev
) - el montaje de unidades remotas ó locales
- la gestión de volúmenes --lvm--.
- la copia de los registros de usuarios (
/etc/passwd
, ... )
- el montaje de sistemas de archivos especiales (
Creación
Para crear con comodidad un entorno cerrado funcional instalamos primeramente
el paquete debootstrap, y retocamos la configuración en el archivo
/etc/schroot/schroot.conf
para dar de alta los diferentes entornos que
podemos tener en la misma máquina:
1 [sid] 2 description=Debian sid (unstable) 3 location=/opt/chroot/sid 4 root-groups=root 5 aliases=unstable,default
Una vez hecho esto podemos crear el entorno con un contenido acorde a ello:
Creamos el directorio raíz
# mkdir -p /opt/chroot/sid
Instalamos una distribución base sobre él:
# debootstrap --arch amd64 sid /opt/chroot/sid http://ftp.debian.org/debian
Abrimos una sesión en el nuevo entorno y ejecutamos lo que queramos:
# schroot -c sid I: [sid-3b1fea82-b0a0-40b0-9261-88c933e70b95 chroot] Running login shell: '/bin/bash' maginot:/etc#
en este caso se trataría de una sesión interactiva, pero es posible ejecutar directamente un programa:
# schroot -c sid /bin/mount I: [sid-c0775cbd-4696-4073-84d5-991e6f67980d chroot] Running command: "/bin/mount" proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) maginot:/etc#