U盘的自动装载方法,目前我已经使用过以下几种方法:
udev 规则
基于 udev 规则的 Shell script
udisks 以及 udisks2
结果,总是存在这样那样的小问题。例如,文件名乱码,普通用户写权限问题,卸载数据同步等等。
其实,作为一个 linuxer,我并不是喜欢折腾的人,虽然几乎天天都在折腾。原则上总是存在问题才修改,现实中却不得不折腾。
在 Archlinux 的U盘自动装载方法中,udevil 可能是最简单、依赖性最小的了……我也希望这是最后一次折腾这个问题。下面进入正题。
安装和使用 udevil
先删除以前为实现U自动装载安装的软件包,如 udisks、udisks2、pmount 等。
然后安装:
sudo pacman -S udevil
sudo pacman -S zenity
运行:
sudo systemctl start devmon@pi
sudo systemctl enable devmon@pi
'@' 后面的字符串是常用 linux 登录用户名。如果用 root 也可以(都不需要输入用户密码),但这样的话,常用用户只能读文件不能增删改文件……请确定这是你想要的结果。
另外,zenity 是一个适用于 shell script 的图形界面显示软件(基于 gtk)。当运行以下命令时:
devmon --unmount-removeable
或者其简化格式命令:
devmon -r
该命令将同步U盘数据然后卸载U盘,同时用zenity显示对话框告知用户U盘已被安全卸载。