Wenn ich versuche, eine Datei mit zu finden find -name "filename"
, wird folgende Fehlermeldung angezeigt:
./var/named/chroot/var/named' is part of the same file system loop as `./var/named'
Ich habe den ls -ldi /var/named/chroot/var/named/ /var/named
Befehl ausgeführt und die Inode-Nummern sind gleich. Nachforschungen haben ergeben, dass der Fix darin besteht, den Hardlink /var/named/chroot/var/named/
mithilfe rm -f
eines Verzeichnisses zu löschen und neu zu erstellen. Wenn ich dies tue, wird mir jedoch empfohlen, dass er nicht gelöscht werden kann, da es sich bereits um ein Verzeichnis handelt. Wie behebe ich das? Ich verwende Centos 6 mit Plesk 11.
Der Befehl mount gibt Folgendes an:
/dev/vzfs on / type reiserfs (rw,usrquota,grpquota)
proc on /proc type proc (rw,relatime)
sysfs on /sys type sysfs (rw,relatime)
none on /dev type tmpfs (rw,relatime)
none on /dev/pts type devpts (rw,relatime)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,relatime)
/etc/named on /var/named/chroot/etc/named type none (rw,bind)
/var/named on /var/named/chroot/var/named type none (rw,bind)
/etc/named.rfc1912.zones on /var/named/chroot/etc/named.rfc1912.zones type none (rw,bind)
/etc/rndc.key on /var/named/chroot/etc/rndc.key type none (rw,bind)
/usr/lib64/bind on /var/named/chroot/usr/lib64/bind type none (rw,bind)
/etc/named.iscdlv.key on /var/named/chroot/etc/named.iscdlv.key type none (rw,bind)
/etc/named.root.key on /var/named/chroot/etc/named.root.key type none (rw,bind)
Die Nachricht löst einen Rückkehrcode 1 aus und kann nicht ignoriert werden. Die Umleitung funktioniert auch nicht.
Verwenden von findutils findutils-4.4.2-6.el6.x86_64
Es scheint, dass dies der entsprechende Fehlerbericht ist:
Eine (sicherheitsrelevante) Lösung, wenn Sie das betroffene Skript nicht reparieren können (dh weil es von einem Drittanbieter geschrieben wurde), besteht darin, das Bind-Chroot-Paket zumindest vorübergehend zu entfernen.
quelle
Ich denke nicht, dass es eine harte Verbindung ist. Normalerweise sind Verzeichnis-Hardlinks verboten. Ich könnte ein Softlink sein, aber es sieht so aus, als wäre es eine Mount-Schleife: Es scheint, dass
/var/named
oder vielleicht/var
wieder montiert wird/var/named/chroot
. Vielleicht ist es ein Bind-Mount (mount -o bind
) oder nur ein normaler Mount.Können Sie die Ausgabe Ihres
mount
Befehls veröffentlichen? Vielleicht ist dies auch ein Reittier, das für das Chroot-Gefängnis benötigt wird, und Sie sollten es besser verlassen.quelle
mount --bind
weil es das einzige ist, was in einer Chroot funktioniert.Das Problem wird durch das Init-Skript verursacht, über
named
das das/var/named
Verzeichnis bereitgestellt wird/var/named/chroot
. Die Lösung für dieses Problem ist auch im Init-Skript enthalten.Wie oben erwähnt,
mount
funktioniert die Funktion nur, wenn das Verzeichnis leer ist. Verwenden Sie also die folgende Lösung:named
/var/named/chroot/var/named
named
quelle