如何获得/etc/fstab 中的cifs.mount 挂载完成后的触发

如何获得/etc/fstab 中的cifs.mount 挂载完成后的触发

我想挂载一些脚本,但是脚本会访问到一些cifs.mount 之后的目录,我在启动最后的/etc/rc.d/rc.local中执行了脚本发现cifs.mount 还是没有完成!想请教除了nohug或者sleep之外的解决办法!
获得cifs.mount 之后的触发也行

=========================
在stackoverflow上找到了答案,如果需要保持执行需要添加
RemainAfterExit=true
WantedBy = multi-user.target #可能更加合适我现在的应用场景

回复
阅读 4k
2 个回答

(如果你用systemd) 新开一个unit, 里面写上After=XXX-XXX.mount (根据那个mountpoint 的unit名). 用这个unit启动你的脚本

以下是写都写了系列 ..


systemd是一个管理服务和mount和其他很多东西的东西。每个服务或mount任务都是作为一个"unit"来管理的。

centos7开始也是systemd。如果你是centos 7 就应该已经在用systemd了。

这个gist 定义了一个新的unit, 这个unit会在另一个unit完成后启动。

你还需要systemctl | grep mount 找到你那个cifs mount的unit名 (比如我机器上/var/lib/docker对应的unit是var-lib-docker.mount)。把mount的unit名和你的脚本的执行命令写到上面gist的unit文件里,保存到/etc/systemd/system/run-my-script.service 然后重启。

google到了
补充下 mountpointer 的unit可以通过systemctl 获得

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏