Necesito ayuda con bind-chroot
Estamos ejecutando la siguiente versión de bind y bind-chroot
enlazar-9.11.2-lp151.10.1.x86_64
enlazar-chrootenv-9.11.2-lp151.10.1.x86_64
Nuestro código de automatización se está ejecutando para agregar archivos de zona a /var/lib/named/etc/named.conf únicamente y no a /etc/named.conf
Entonces, para reflejar los archivos de zona creados en /var/lib/named/etc/named.conf en /etc/named.conf, creé un enlace simbólico en /etc como "ln -s /var/lib/named/ etc/named.conf nombrado.conf" para reflejar lo siguiente lrwxrwxrwx 1 raíz raíz 29 9 de diciembre 11:03 nombrado.conf -> /var/lib/named/etc/named.conf
Ahora, cuando hago cambios en el archivo en /var/lib/named/etc/named.conf y hago un "reinicio del servicio llamado", el archivo en /etc/named.conf no se carga
Mensajes de error en /var/log/messages como se muestra a continuación
2021-12-09T11:04:46.684677+05:30 lavasadns1 systemd[1]: Stopped Berkeley Internet Name Domain (DNS). 2021-12-09T11:04:46.685049+05:30 lavasadns1 systemd[1]: Starting Berkeley Internet Name Domain (DNS)... 2021-12-09T11:04:46.735359+05:30 lavasadns1 named.init[2509]: Starting name server BIND cp: cannot stat '/etc/named.conf': No such file or directory 2021-12-09T11:04:46.844546+05:30 lavasadns1 named.init[2509]: open: /etc/named.conf: file not found 2021-12-09T11:04:46.847806+05:30 lavasadns1 systemd[1]: named.service: Control process exited, code=exited status=6 2021-12-09T11:04:46.848137+05:30 lavasadns1 systemd[1]: Failed to start Berkeley Internet Name Domain (DNS). 2021-12-09T11:04:46.848475+05:30 lavasadns1 systemd[1]: named.service: Unit entered failed state. 2021-12-09T11:04:46.848772+05:30 lavasadns1 systemd[1]: named.service: Failed with result 'exit-code'. 2021-12-09T11:05:31.657460+05:30 lavasadns1 systemd[1]: Starting Berkeley Internet Name Domain (DNS)... 2021-12-09T11:05:31.666976+05:30 lavasadns1 named.init[2573]: Name server configuration file /etc/named.conf does not exist.
y el enlace simbólico cambia de color a rojo. ¿Por qué está pasando esto? ¿Y cómo se puede evitar este error?
Respuesta1
Arrancando bind
/ named
corriendo /usr/sbin/named.init
.
Allí, hay una función llamada checkAndCopyConfigFiles
.
Ahí está la línearm -f ${CHROOT_PREFIX}/${configfile}
Hiciste un enlace simbólico desde /etc/named.conf
a /var/lib/named/etc/named.conf
, ahora, cuando se ejecuta ese script, se elimina /var/lib/named/etc/named.conf
.
Entonces, el script eliminó /var/lib/named/etc/named.conf
e intentó copiar el punto final del enlace simbólico, /etc/named.conf
que ya no existe, ya que ya lo eliminó.
Esto da como resultado una referencia de enlace simbólico colgante y, por lo tanto, se convierte en red
.
Tu creación named.conf
ya no existe.
Si puedes recuperarlo, tienes 3 opciones.
- Haga que su código modifique el archivo
/etc/named.conf
y cualquier otro archivo dentro/etc/
en lugar de dentro de/var/lib/named/etc
. - Edite
/usr/sbin/named.init
y cree el suyo propio que maneje tal situación. - Elimine
bind-chrootenv
y cree su propio script de inicio.