允许普通用户挂载 Linux 分区、USB 记忆棒/笔设备
您需要使用 autofs。它用于按需挂载文件系统。通常在系统启动时使用 start 参数调用 autofs,在关机时使用 stop 参数调用 autofs。系统管理员还可以手动调用 autofs 脚本来关闭、重新启动或重新加载自动挂载程序。
autofs 将查阅配置文件 /etc/auto.master 来查找系统上的挂载点。
i) 如果尚未安装,请安装 autofs。如果您使用的是 Debian / Ubuntu Linux,请输入:
# apt-get install autofs
ii) 创建 dekstop 组并将用户 jimmy 添加到该组:
# groupadd desktop
# usermod -G video,desktop jimmy
# chmod -R a+rx /var/autofs/misc
iii)配置 autofs 以便可以访问 USB 驱动器:
# vi /etc/auto.misc
iv) 将以下文本附加到 auto.misc:
其中,
usb -fstype=auto, user, sync, nodev, nosuid, gid=desktop, umask=002 :/dev/sda1
d -fstype=vfat, user, sync, nodev, nosuid,gid=desktop, umask=002 :/dev/hda2
- usb:是目录名,可以通过 /var/autofs/misc/usb 目录访问。桌面组用户只需输入 cd 命令(cd /var/autofs/misc/usb)即可更改目录。
- -fstype- auto、user、sync、nodev、nosuid、gid-desktop、umask-002:所有这些都是自动挂载程序用于挂载文件系统的选项。
- auto:文件系统由内核自动确定。
- 用户:普通用户可以挂载设备
- nodev:不解释文件系统上的字符或块特殊设备。
- nosuid:不允许设置用户标识符或设置组标识符位生效。这是安全功能。
- gid=desktop:这允许将文件系统挂载为组 dekstop。因为我们已经将用户 jimmy 添加到该组。
- umask=002:设置 umask,以便组桌面中的用户可以将数据写入设备。
请注意,如果没有 gid 和 umask 选项,普通用户就无法将数据写入设备。
v)重新启动 autofs:
#/etc/init.d/autofs restart
vi) 以用户 jimmy 身份进行测试(确保 USB 棒/笔已插入 USB 端口):
$ ls /var/autofs/misc/usb
$ cd /var/autofs/misc/usb
$ mkdir testdir
$ ls -l