文件管理器如何在没有Sudo的情况下挂载外部驱动器?
你有没有想过为什么 须藤 要么 根 需要从终端而不是Linux中的文件管理器以普通用户身份安装外部驱动器或分区的权限? 如您所知,您需要成为sudo用户才能从命令行显示,安装和访问可移动媒体(例如,外部硬盘驱动器,USB记忆棒,光盘和数码相机)。 但是,图形文件管理器(例如Nautilus)如何在没有root或sudo的情况下挂载这些可移动存储设备? 在本简短指南中,我将解释在Linux中文件管理器如何在没有sudo或root许可的情况下安装外部驱动器。
在Linux中,文件管理器如何在没有sudo或root许可的情况下挂载外部驱动器?
文件管理器使用 优盘2 安装没有管理员权限的外部驱动器。 UDisks2是UDisk的第二个版本。 UDisk现在已过时。 现在,GNOME,KDE和其他各种桌面环境使用UDisks2允许普通用户安装可移动媒体设备。
UDisks2项目提供了一个名为 udisksd
,以及一个名为 udisksctl
。
的 udiskd
守护程序在后台运行并实现定义良好的 公交车 可用于查询和操作存储设备的接口。 udiskd
在系统启动时自动启动并以 root
每时每刻。 您可以使用以下命令验证它:
$ sudo systemctl status udisks2
样本输出:
● udisks2.service - Disk Manager
Loaded: loaded (/lib/systemd/system/udisks2.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2020-09-09 12:09:21 IST; 3h 9min ago
Docs: man:udisks(8)
Main PID: 978 (udisksd)
Tasks: 5 (limit: 9336)
Memory: 9.3M
CGroup: /system.slice/udisks2.service
└─978 /usr/lib/udisks2/udisksd
Sep 09 12:08:51 ostechnix systemd[1]: Starting Disk Manager...
Sep 09 12:09:00 ostechnix udisksd[978]: udisks daemon version 2.8.4 starting
Sep 09 12:09:21 ostechnix udisksd[978]: Acquired the name org.freedesktop.UDisks2 on the sy>
Sep 09 12:09:21 ostechnix systemd[1]: Started Disk Manager.
的 udisksctl
CLI实用程序用于查询和使用守护程序。 用户可以使用udisk执行的操作受到限制 波尔基特。 Polkit是用于定义和处理授权的应用程序级工具箱。 它允许非特权进程与特权进程对话。
由于UDisk已经以root用户身份运行,因此它允许非特权程序(例如,文件管理器)在没有sudo或root用户权限的情况下挂载或卸载存储设备。 这就是文件管理器在没有管理权限的情况下挂载外部驱动器的方式。
您可以通过使用以下方式以普通用户身份安装USB驱动器来自己进行测试: udisksctl
如下命令:
$ udisksctl mount -b /dev/sdc1
要么,
$ udisksctl mount --block-device /dev/sdc1
更换 /dev/sdc1
与您的设备名称。
样本输出:
Mounted /dev/sdc1 at /media/sk/ventoy.
同样,您可以使用以下命令卸载USB驱动器:
$ udisksctl unmount -b /dev/sdc1
要么,
$ udisksctl unmount --block-device /dev/sdc1
样本输出:
Unmounted /dev/sdc1.
使用udisksctl命令在没有sudo许可的情况下挂载和卸载外部驱动器
如果您正在寻找一种在Linux中无需超级用户特权即可安全地允许普通用户安装文件系统的方法,建议使用Udisk2!
相关阅读:
- 如何在Linux中查找挂载的文件系统类型
我不知道没有sudo许可就无法安装和卸载驱动器,直到遇到 这个问题 在Reddit上。
希望您今天学到了一些有用的东西。
特色图片 杰西卡·刘易斯(Jessica Lewis) 从 像素。
资源:
LinuxLinux命令安装驱动器PolkitUDisks2