我有一个文件夹 /mnt/automounts,用于自动挂载 USB 驱动器(正在运行)。有一种情况仍然会导致问题。插入 USB 驱动器后,系统将关闭,然后拔下 USB 驱动器。当我再次启动系统时,挂载的特定文件夹仍然存在于 mnt/automounts 中。
因此,我想在关机(和重新启动)时启动一个脚本来删除 automounts 文件夹。为此,我创建了一个名为clearmnt.sh的shell脚本并将其放在/etc/init.d文件夹中>
clearmnt.sh 看起来像这样:
#!/bin/sh
### 开始初始化信息
# 提供:clearmnt
# 必需启动:
# 需要停止:
# 应该停止:
# 默认开始: 0 6# Default-Stop:
# Short-Description: 删除 /mnt 中自动挂载文件夹的目录### 结束初始化信息
rm -rf /mnt/自动挂载
然后我在 rc0.d 和 rc6.d 中创建了软链接(关闭并重新启动):
sudo ln -s /etc/init.d/clearmnt.sh /etc/rc0.d/clear_mnt
sudo ln -s /etc/init.d/clearmnt.sh /etc/rc6.d/clear_mnt
然后我使clearmnt.sh可执行:
sudo chmod +x /etc/init.d/clearmnt.sh
然后我重新启动看看它是否有效。事实并非如此,重新启动后 /mnt/automounts 文件夹仍然存在。
知道我做错了什么,或者我错过了什么步骤吗?这一切都是在 yocto 构建上完成的。
答案1
你确定你真的想要这个吗?想象一下你所描述的情况。您插入了 USB 存储设备,然后关闭了系统。您的关闭脚本将执行rm -rf /mnt/automounts
(或者rm -rf /mnt/automounts/*
,无关紧要)。
后来你重新启动,发现你的USB存储上的所有文件都被删除了。已删除。
因此,您应该做的是在重新启动后,在未挂载 USB 存储的情况下删除这些目录。
或者更简单的是,创建一个tmpfs
保存在 RAM 中的小文件,您不需要太多空间,因为它只包含挂载点的目录,并且在启动时它会自动为空。