我一直试图让 AutoFS 在我的家庭网络中挂载一个位置//内容/项目本地/mnt/content
,但导航到那里时没有文件。
如果我通过 fstab 挂载,则没有问题,这可以正常工作:
//content/projects /mnt/content/ cifs credentials=/etc/creds/content,uid=localuser,rw 0 0
所以我在 /etc/auto.master 中添加了一行:
/mnt/content /etc/auto.cifs-shares --timeout 300
然后在‘auto.cifs-shares’中:
projects --fstype=cifs,credentials=/etc/creds/content,dir_mode=0755,file_mode=0755,uid=user,rw ://content/projects
编辑我的 /etc/creds/content 文件:
username=smbuser
password=smbpass
最后通过'在 shell 中重新启动 autofssudo 自动挂载-f -v':
$ sudo automount -f -v
Starting automounter version 5.1.2, master map /etc/auto.master
using kernel protocol version 5.02
lookup(dir): dir map /etc/auto.master.d missing or not readable
lookup(file): failed to read included master map dir:/etc/auto.master.d
lookup(file): failed to read included master map auto.master
mounted indirect on /mnt/content with timeout 300, freq 75 seconds
然而,“ls /mnt/content/”显示一个空目录。
我在这里遗漏了什么?
提前致谢!
答案1
我设法通过替换什么来解决这个问题可能是拼写错误在您的帖子中:
在 auto.master 中:
/mnt/content /etc/auto.cifs-shares --timeout=300 --ghost
我在超时和 300 之间添加了一个 =,并且添加了 --ghost
在 /etc/auto.cifs-shares 中
projects -fstype=cifs,credentials=/etc/creds/content,dir_mode=0755,file_mode=0755,uid=user,rw ://content/projects
我将 --fstype=cifs 替换为 -fstype=cifs
附注::如果您感兴趣的话,systemd 有自己的 autofs 版本。它通过 fstab 工作。基于您的 fstab 语句的等效版本如下所示:
//content/projects /mnt/content/ cifs credentials=/etc/creds/content,uid=localuser,rw,noauto,x-systemd.automount,x-systemd.idle-timeout=300 0 0
如果您想尝试一下,您可能需要更改挂载点。不知道当两个 autofs 进程同时在同一个挂载点运行时会发生什么。
noauto,x-systemd.automount
替换其中的“在我访问挂载点之前不要挂载共享”部分。
x-systemd.idle-timeout=300
替换 auto.master 中的 --timeout=300 部分。
然后你需要重置systemd:
sudo systemctl daemon-reload
sudo systemctl restart remote-fs.target