2019/02/18 更新:
9012年了,事情也越来越多,原本简简单单的系统,现在安装的软件也是越来越多。像 Xfce 桌面环境如果用于经常移动办公使用的话,操作起来的确没有其他完整的DE那么顺手了。不过呢,这些大的桌面环境都有自动配置U盘识别的相关组件,不需要另外操心安装配置。
那么对于还在用 Xfce、LEDE 这类简洁版本的系统,我想方便地识别、挂载U盘或者硬盘怎么办?
下面以使用 thunar 文件管理器为例,直接一步命令搞定就可以了:
pacman -Syu & pacman -S thunar-volman gvfs & systemctl enable udisks2.service
前面那个系统更新是一定要有的,否则依赖会有问题;
后面的那个服务也是一定要自启的,不然还是不能起到自动识别的目的。
对于其他的文件管理器应该也是同理,如果有类似的挂载插件就安装一下。
为什么不太推荐用 udiskee? 它也能起到 gvfs 的作用,不过感觉既然有了能够现成使用的就感觉是。。造轮子?区别就是解除挂载的时候,右键出来的是 “Disconnect”,而不是 gvfs 的 “Umount 和 Eject” 这两个选项。其他功能都类似,只不过 udiskee 用的是一些 python 依赖。
不用理会 ArchWiki 里面什么将 thunar 设置为 standlone 后台模式啦、自动启动这些,现在已经没有必要作这些配置了,直接可以一步到位。
此外,要实现“开机自启就有挂载”,最方便的方法就是更改 /etc/fstab,基本格式为:
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx 挂载到?文件系统 挂载命令 0 0
注意:
不要为了一时偷懒用 /dev/sda1 这种块设备名称。强烈推荐用UUID,以避免引导程序比如Grub挂掉的时候、电脑硬盘顺序变动时进不了系统找不到硬盘
不同的文件系统所使用的挂载命令都不相同,以下是几个例子:
NTFS:ntfs-3g defaults 0 0
ext4:ext4 defaults,noatime,user 0 0
btrfs:btrfs rw,realtime,subvol=/ 0 0
UEFI FAT: UUID=xxxx-xxxx /boot/efi vfat rw,realtime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 2
Swap:UUID= none swap defaults,pri=100 0 0
复杂情况的挂载操作务必参考相关手册或者ArchWiki。
以下是2014年发布的原始博文,仅供参考(命令行挂载U盘):
上周六不是重装了OS嘛,很多东西还需要重建。可之前用的好好的自动挂载(特别是移动媒体),竟然不能用了。
这时,所有的操作都是 mount /dev/sdaX /mnt/Y 。。如果没装 ntfs-3g,更要压力山大!
按照原始做法,一个U盘插进电脑,需要执行:
mount -t vfat -o iocharset=utf8 /dev/sdb1 /mnt/PortableDisk
加这么多参数是为了防止CJK各种乱码,再加上随时可能遇到的权限问题,这真是一个极不好的=。=
以前用openSUSE,Thunar直接在侧边栏给我弹出来所有disk,挂载时还需要认证,感觉挺安全的,甚至在我接下来配置udisks2时也有点小纠结:到底要不要还原成auth_admin呢?可是挂载个硬盘就要我root密码,太烦了吧?况且这又没什么安全性(系统里本来就有WIndows,用 ext2explore 访问你的ext4真是毫无压力!我整一PE也行啊。。)所以,“点击挂载”就是所要到达的目标。
在XFCE环境下,首先安装 udisk 及其依赖:
pacman -S udisks gvfs gvfs-afc
uevt 在AUR中,用yaourt安装:
yaourt -S uevt
安装好之后就会在Thunar左侧显示出所有磁盘(若无则重启)。
但此时点击任意,会出现 Not authorized to perform operation.的错误,解决思路:通过改变规则,使udisks默认允许所有用户挂载其列罗的磁盘(原来则需要认证),也许是缺少包的问题,在Fedora、OpenSUSE下,同样的规则文件出来的则是“认证对话框”,让用户输入root密码。这里就不需要密码了。
更改如下:
1、进入规则文件所在文件夹,并找出需要更改的两个文件。
cd /usr/share/polkit-1/actions/
ls |grep udisks
输出结果为:
org.freedesktop.udisks2.policy
org.freedesktop.udisks.policy
2、首先更改其二。
vim org.freedesktop.udisks.policy
Line 16-19 标记符内的 auth_admin 更改为 yes 即可。
yes
yes
yes
3、在更改其一。
Line 72-74 标记符内的 auth_admin 更改为 yes 即可。代码如上。
Line 136-138 标记符内的 auth_admin 更改为 yes 即可。代码如上。
4、为了防止udisks升级后覆盖更改的规则文件,需要对其进行备份。
cp org.freedesktop.udisks2.policy org.freedesktop.udisks2.policyMODBACKUP;cp org.freedesktop.udisks.policy org.freedesktop.udisks.policyMODBACKUP
升级后可以执行:
rm org.freedesktop.udisks2.policy org.freedesktop.udisks.policy; cat org.freedesktop.udisks2.policyMODBACKUP >> org.freedesktop.udisks2.policy;cat org.freedesktop.udisks.policyMODBACKUP>> org.freedesktop.udisks.policy
至此,配置完成。
以前,为了挂载分区,不惜人力物力写个bash脚本,还要用if语句作各种判断防止出错。
现在,不用再敲代码的感觉真是爽歪歪。
Like this:
Like Loading...
Related