Bra*_* Ho 21 filesystems arch-linux automounting mount symlink
我在 Xfce 中使用 Arch。
最近,我创建了一个指向文件系统目录的符号链接。
但是我不想在启动期间挂载文件系统,也不想在打开符号链接之前手动挂载它。
当我打开指向该文件系统上目录的符号链接时,是否可以自动挂载该文件系统?
Ste*_*itt 23
autofs
可以为你做这件事。您可以使用各种选项配置任意数量的挂载点,只要访问挂载点,就会挂载相应的文件系统。在一定数量的不活动后,文件系统将再次卸载。
毫无疑问,使用 的方法有很多种autofs
,但根据我过去使用它的方式,这里有一种方法可以做您想做的事情。
您从一个目录开始,该目录将包含许多autofs
挂载点(好吧,至少有一个);说/misc
。您不需要创建它,但是您需要创建一个配置文件,该文件将描述您要安装在那里的所有文件系统;例如,我可以使用以下文件挂载 CD、DVD 和蓝光光盘,另存为/etc/auto.misc
:
cd -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom
br -fstype=udf,ro,nosuid,nodev :/dev/cdrom
Run Code Online (Sandbox Code Playgroud)
一般语法是挂载点,后跟由 引入的任何选项-
,然后:
是本地系统上由 引入的挂载点。(我在这里进行了简化,autofs(5)
有关详细信息,请参阅联机帮助页。)
然后通过在 中添加条目来启用此文件/etc/auto.master
:
/misc /etc/auto.misc
Run Code Online (Sandbox Code Playgroud)
重新启动autofs
与
sudo service autofs restart
Run Code Online (Sandbox Code Playgroud)
你应该能够运行
ls /misc/cd
Run Code Online (Sandbox Code Playgroud)
并查看驱动器中任何 CD 的内容。(显然,用适合您情况的任何内容替换名称和挂载目标。)
一旦你有了它,你就可以从其他任何地方链接到自动挂载的文件系统中的任何东西,就像它们是标准的、非自动挂载的文件系统一样。所以在我的例子中,
ln -s /misc/br blu-ray
Run Code Online (Sandbox Code Playgroud)
blu-ray
在命令运行的任何地方创建一个链接。您也可以进一步链接到文件系统,
ln -s /misc/br/BDMV autolinktest
Run Code Online (Sandbox Code Playgroud)
创建autolinktest
指向电影内容的链接。访问链接将挂载目标文件系统。
bvo*_*mer 12
您可以使用 来执行此操作systemd
,因此您无需安装额外的软件,只需进行少量的额外配置即可。
只需添加noauto,x-systemd.automount
到fstab
.
noauto
在启动时不自动挂载并x-systemd.automount
让 systemd 在访问时挂载它。
将 x-systemd.automount 添加到fstab
一行后,您需要运行:
sudo systemctl daemon-reload
Run Code Online (Sandbox Code Playgroud)
然后是以下一项或两项:
sudo systemctl restart remote-fs.target
sudo systemctl restart local-fs.target
Run Code Online (Sandbox Code Playgroud)
然后自动挂载将变为活动和可用。