Autofs 在啟動時不會掛載共享

Autofs 在啟動時不會掛載共享

我正在使用 OpenSuSE 12.1,並透過 LDAP 和 NFS 共享家庭。 LDAP 儲存地圖。我的問題是我無法在啟動時安裝共用。它僅在手動重新啟動 autofs 服務時才起作用。在 CentOS 6.3 上不存在這樣的問題。

我的/etc/nsswitch.conf

passwd: files sss
group:  files sss

hosts:  files mdns4_minimal [NOTFOUND=return] dns
networks:       files dns

services:       files
protocols:      files
rpc:            files
ethers:         files
netmasks:       files
netgroup:       files nis
publickey:      files

bootparams:     files
automount:      files ldap
aliases:        files

我的/etc/openldap/ldap.conf

SIZELIMIT       20
TIMELIMIT       15
#DEREF          never
TLS_REQCERT     demand
uri     ldap://10.0.0.1
base    dc=domain,dc=com

我的/etc/sssd/sssd.conf

[sssd]
config_file_version = 2
reconnection_retries = 3
sbus_timeout = 30
services = nss, pam
domains = domain.com

[nss]
filter_groups = root
filter_users = root
reconnection_retries = 3

[pam]
reconnection_retries = 3

[domain/domain.com]
 id_provider = ldap
 auth_provider = ldap
 min_id = 500
 max_id = 30000
 ldap_schema = rfc2307
 ldap_uri =  ldaps://ldap-ms.local,  ldaps://ldap-sl.local, ldap://ldap
 ldap_search_base = dc=domain,dc=com
 ldap_user_search_base =  ou=People,dc=domain,dc=com
 ldap_group_search_base = ou=Group,dc=domain,dc=com
 ldap_tls_cacert = /etc/pki/CA/certs/domain-cacert.pem
 ldap_tls_reqcert = hard
 cache_credentials = true
 enumerate = True

我的/etc/sysconfig/autofs

MASTER_MAP_NAME="auto.master"
TIMEOUT=300
BROWSE_MODE="yes"
MAP_OBJECT_CLASS="automountMap"
ENTRY_OBJECT_CLASS="automount"
MAP_ATTRIBUTE="ou"
ENTRY_ATTRIBUTE="cn"
VALUE_ATTRIBUTE="automountInformation"
USE_MISC_DEVICE="yes"

我錯過了什麼嗎?

答案1

這個問題被社區提出了,而且已經很老了。
這些年來發生了很多事情,Michael 提到了一個解決方案,即使用 fstab。最初的問題很可能是在啟動時按執行順序執行的。網路可能尚未準備好,某些服務可能尚未啟動等。

如果你正在運行systemd,還有另一個解決方案(我懷疑OP 當時是否這樣做了,但如果你透過搜尋最終到達這裡,你確實這麼做了),這是使用systemd 的自動掛載功能的另一種解決方案。

[Unit]
Description=Network mapping
After=network.target

[Mount]
What=10.0.0.1:/share/stuff
Where=/mnt/remote_share
Type=nfs
Options=_netdev,auto

[Install]
WantedBy=multi-user.target

這樣做的唯一缺點是您必須小心命名服務腳本。描述得最好這裡,但是 tl;dr 版本是服務檔案必須以其要掛載的路徑命名。並且所述路徑中的所有正斜杠都必須替換為-服務檔案名稱中的斜杠,以便自動安裝工作。上面的/mnt/remote_share would be a service-file calledmnt-remote_share.mount範例`

有一堆選項就這樣吧。
如果 systemd 不是你的菜,上面還有很多新東西自動檔案系統做得很好的一面(對我來說有點複雜)

如果您想使用 fstab 條目,但要利用 systemd 的自動掛鉤功能,那麼您的 fstab 可能如下所示:

10.0.0.1:/share/stuff   /mnt/remote_share  nfs  noauto,x-systemd.automount,x-systemd.device-timeout=10,timeo=14,x-systemd.idle-timeout=1min 0 0

如果這些都不起作用,還有 pure-fstab 解決方案:

10.0.0.1:/share/stuff   /mnt/remote_share   nfs   defaults,soft,rsize=32768,wsize=32768,timeo=900,retrans=5,_netdev 0 0

我將添加一些關於該主題的良好文件的連結(請記住,這是一個不同的作業系統。但他們的 Wiki 是市場上最好的文件之一):

答案2

為什麼不直接將安裝位置加入到 fstab 中呢?

您也可以使用 sshfs。配置 ssh 以使用公鑰身份驗證。


在伺服器上:
sudo apt-get install openssh-server
更改為或新增 ServerKeyBits 2048 到 /etc/ssh/sshd_config


在客戶端上
ssh-keygen -t rsa -b 2048
ssh-copy-id 從客戶端電腦到伺服器。使用伺服器電腦上的使用者密碼登入
變更 /etc/ssh/sshd_config:PasswordAuthentication no,UsePAM no
我還使用其他設定來強化 ssh,但對於本範例來說不需要。
如果您的區域網路外部設定了 dyndns 或 noip 更新程序,並在路由器上設定了連接埠轉發,則連接埠 23 或您決定用於混淆服務的任何連接埠將轉發到伺服器 IP 位址,如果您需要協助,請詢問。


然後:
sshfs USER@SERVERADDRESS:/mnt/DRIVELOCATION /PATH/TO/MOUNT/DRIVE/TO
我將此指令設定為某些磁碟機和 fstab 中其他磁碟機主選單上的啟動器。
我知道它有效,因為我每天都使用相同的設定加上強化。
這樣您就可以擺脫對 autofs 的需要及其所需的開銷。

相關內容