AutoFS funktioniert mit CIFS-Freigaben nicht wie erwartet

AutoFS funktioniert mit CIFS-Freigaben nicht wie erwartet

Ich habe dieses Setup

Klient:Centos 7.6.1810 aktuell

Server:Windows 7 Pro

AutoFS-Konfiguration

# tail -1 /etc/auto.master
/srv/xray   /etc/auto.xray

# cat /etc/auto.xray
cdm8240  -fstype=cifs,ro,vers=2.0,credentials=/etc/auto.smb.cdm8-240.credentials  ://my.server/share/

# cat /etc/auto.smb.cdm8-240.credentials
username=mylogin
password=passpass123

Wenn ich diese Freigabe manuell mounte, ist alles in Ordnung

# mount.cifs -o ro,vers=2.0,credentials=/etc/auto.smb.cdm8-240.credentials //my.server/share/ /srv/xray/

# ls -l /srv/xray/ | wc -l
34
# umount /srv/xray/

Wenn ich es mit Autofs versuche, habe ich diesen falschen Mount-Eintrag.

/etc/auto.xray on /srv/xray type autofs (rw,relatime,fd=17,pgrp=71348,timeout=300,minproto=5,maxproto=5,indirect,pipe_ino=404555)

Dann habe ich versucht, den Einhängepunkt cdm8240im Ordner /srv/xray/ vorab zu erstellen …

# ls -ld /srv/xray/cdm8240/
drwxrwxrwx 2 root root 6 Jun  6 08:17 /srv/xray/cdm8240/

...autofs neu laden und auf die Freigabe zugreifen und es funktioniert

# systemctl restart autofs
# ls -l /srv/xray/cdm8240/ | wc -l
34

Jetzt kommt aber das Seltsame: Wenn ich Autofs neu starte, wird die Freigabe aufgehoben und der Ordner cdm8240 entfernt!

# systemctl restart autofs
# find /srv/xray/ -ls
406293    0 drwxr-xr-x   2 root     root            0 Jun  6 08:20 /srv/xray/

Und sogar die Berechtigungen für /srv/xray/ wurden geändert, sodass es jetzt 755 statt der vorherigen 777 hat! Und ich komme zurück zur ersten Situation und es ist der falsche Mount-Eintrag.

Aktualisierung 1

Habe es mit dem "Direkt"-Modus versucht und jetzt sieht es gut aus

# tail -1 /etc/auto.master
/-   /etc/auto.xray

# cat /etc/auto.xray 
/test/cdm8240  -fstype=cifs,ro,credentials=/etc/.cdm8240cred,vers=2.1,file_mode=0775,dir_mode=0775,users  ://my.server/share

ist es also ein Fehler im indirekten Modus oder etwas „Normales“?

Aktualisierung 2 Wie unten erklärt, war alles in Ordnung. Ich habe --ghostmeiner auto.master-Datei die folgende Option hinzugefügt

/srv/autofs/xray   /etc/auto.xray --ghost

jetzt wird die Freigabe angezeigt und alles funktioniert einwandfrei.

Antwort1

Das sieht völlig normal aus.

Der Automounter übernimmt das oberste Verzeichnis /srv/xrayfür alle in der entsprechenden Datei oder im Programm definierten Mounts /etc/auto.xray. (In deinem Fall ist es eine normale Datei.)

Dateisysteme werden nur bei Bedarf gemountet. Wenn Sie also hineingeschaut haben, /srv/xrayhaben Sie zunächst nichts gesehen. Als Sie jedoch ls -ld /srv/xray/cdm8240/den Automounter ausgeführt haben, hat er den Verweis auf das zugeordnete Verzeichnis gesehen cmd8240und das entsprechende Dateisystem /srv/xray/cdm8240für Sie gemountet.

Zu einem späteren Zeitpunkt würde das im Automounter gemountete Dateisystem, sobald Sie den Zugriff darauf beendet hätten, /srv/xray/cdm8240ausgehängt und /srv/xrayerneut als leer erscheinen.


Persönlich finde ich es hilfreich, den Automounter darunter laufen zu lassen /var/autofs, so dass auto.miscich für eine Mapping-Datei /var/autofs/miscund für einen Eintrag remotein dieser auto.miscDatei Folgendes hätte /var/autofs/misc/remote:

Dann erstelle ich ein Verzeichnis der obersten Ebene /autofsund erstelle einen symbolischen Link zu den Verzeichnissen von /var/autofs/misc/. Auf diese Weise sind sie für mich sichtbar, auch wenn sie nicht gemountet sind, und ich muss mir nie /var/autofs/miscwieder Gedanken über den Verzeichnisbaum machen.

mkdir -p -m755 /autofs
cd /autofs
ln -s ../var/autofs/misc/remote    # Create link to automounted 'remote'

verwandte Informationen