Как файловый менеджер может смонтировать внешний диск без прав sudo или root в Linux?
$ 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.
Polkit – это набор инструментов на уровне приложения для определения и обработки авторизации.
Он позволяет непривилегированным процессам общаться с привилегированными процессами.
Поскольку UDisks уже запущен от имени пользователя root, он позволяет непривилегированным программам (например, файловым менеджерам) монтировать или отключать устройства хранения без прав sudo или root.
Вот так файловые менеджеры монтируют внешний диск без прав администратора.
Вы можете проверить это самостоятельно, подключив USB-накопитель от обычного пользователя, используя команду udisksctl, как показано ниже:
$ udisksctl mount -b /dev/sdc1
или
$ udisksctl mount --block-device /dev/sdc1
Mounted /dev/sdc1 at /media/sk/ventoy.
Точно так же вы можете отключить USB-накопитель с помощью команды:
$ udisksctl unmount -b /dev/sdc1
Или,
$ udisksctl unmount --block-device /dev/sdc1
Unmounted /dev/sdc1.
Очень полезная статья, спасибо! Жаль что не находится в поиске по запросу “монтирование без root прав”
Спасибо! Всегда рады помочь!