我有這個設置
客戶:Centos 7.6.1810 最新
伺服器:Windows 7 專業版
AutoFS 設定
# 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
如果我手動安裝此共享,一切都很好
# 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/
如果我嘗試使用 autofs,則會出現錯誤的安裝條目。
/etc/auto.xray on /srv/xray type autofs (rw,relatime,fd=17,pgrp=71348,timeout=300,minproto=5,maxproto=5,indirect,pipe_ino=404555)
cdm8240
然後我嘗試在 /srv/xray/ 資料夾中預先建立掛載點...
# ls -ld /srv/xray/cdm8240/
drwxrwxrwx 2 root root 6 Jun 6 08:17 /srv/xray/cdm8240/
...重新加載 autofs 並訪問共享並且它可以工作
# systemctl restart autofs
# ls -l /srv/xray/cdm8240/ | wc -l
34
但現在奇怪的是,如果我重新啟動 autofs,它會卸載共用並刪除 cdm8240 資料夾!
# systemctl restart autofs
# find /srv/xray/ -ls
406293 0 drwxr-xr-x 2 root root 0 Jun 6 08:20 /srv/xray/
甚至更改 /srv/xray/ 上的權限,將其保留為 755,而不是之前的 777!我回到第一種情況,這是錯誤的安裝條目。
更新1
嘗試過“直接”模式,現在看起來不錯
# 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
那麼,這是間接模式中的錯誤還是「正常」的情況?
更新2
如下所述,一切都很好。我--ghost
在 auto.master 檔案中新增了選項,如下所示
/srv/autofs/xray /etc/auto.xray --ghost
現在共享已顯示,一切正常。
答案1
這看起來完全正常。
自動掛載程式會接手頂級目錄,/srv/xray
用於對應檔案或程式中定義的所有掛載/etc/auto.xray
。 (在您的情況下,這是一個普通文件。)
檔案系統僅按需安裝,因此當您查看內部時,/srv/xray
您最初什麼也看不到。但是,當您執行時,ls -ld /srv/xray/cdm8240/
自動掛載程式會看到對映射目錄的引用,並為您cmd8240
掛載相應的檔案系統。/srv/xray/cdm8240
在將來的某個時刻,一旦您停止存取在/srv/xray/cdm8240
自動掛載器上掛載的檔案系統,就會將其卸載並/srv/xray
再次顯示為空。
我個人認為有用的是在下面運行自動安裝程序/var/autofs
,這樣對於auto.misc
我將擁有的映射文件以及該文件中的/var/autofs/misc
條目,我將擁有。remote
auto.misc
/var/autofs/misc/remote
然後,我建立一個頂級目錄/autofs
和符號連結目錄/var/autofs/misc/
。這樣,即使未安裝它們,我也可以看到它們,而且我再也不需要擔心/var/autofs/misc
目錄樹了。
mkdir -p -m755 /autofs
cd /autofs
ln -s ../var/autofs/misc/remote # Create link to automounted 'remote'