Поддержка gnome-disk-utility в xfce-sysv
Краткое описание:
Пакет gnome-disk-utility содержит исполняемый файл gnome-disks. Предназначено для выполнения дисковых операций и содержит бенчмарк блочных устройств, с отображением результата в текстовом виде и в виде графика.
Рулезы поддержки gnome-disk-utility:
# cat /etc/polkit-1/rules.d/org.freedesktop.udisks2.rules
polkit.addRule(function(action, subject) {
if (subject.isInGroup("wheel") && (action.id.indexOf("org.freedesktop.udisks2.modify-device") == 0 )) {
return polkit.Result.YES;
}
});
polkit.addRule(function(action, subject) {
if (subject.isInGroup("wheel") && (action.id.indexOf("org.freedesktop.udisks2.modify-device-system") == 0 )) {
return polkit.Result.YES;
}
});
polkit.addRule(function(action, subject) {
if (subject.isInGroup("wheel") && (action.id.indexOf("org.freedesktop.udisks2.modify-device-other-seat") == 0 )) {
return polkit.Result.YES;
}
});
polkit.addRule(function(action, subject) {
if (subject.isInGroup("wheel") && (action.id.indexOf("org.freedesktop.udisks2.open-device") == 0 )) {
return polkit.Result.YES;
}
});
polkit.addRule(function(action, subject) {
if (subject.isInGroup("wheel") && (action.id.indexOf("org.freedesktop.udisks2.open-device-system") == 0 )) {
return polkit.Result.YES;
}
});
Зависимости как новые пакеты:
# cat install-gnome-disk-utility.txt
cracklib cracklib-utils cracklib-words gnome-disk-utility libcanberra libcanberra-gtk3 libpwquality sound-theme-freedesktop
В рулез org.freedesktop.udisks2.modify-device введено несоотвествие правам с его action,
чтобы предотвратить выполнение дисковой операции от непревилегированного пользователя. Все операции выполняются только группой wheel:
# grep '<action\|<description>\|description xml:lang="ru\|active' /usr/share/polkit-1/actions/org.freedesktop.UDisks2.policy | grep -A4 'org.freedesktop.udisks2.modify-device"'
<action id="org.freedesktop.udisks2.modify-device">
<description>Modify a device</description>
<description xml:lang="ru">Изменить устройство</description>
<allow_inactive>auth_admin</allow_inactive>
<allow_active>yes</allow_active>
# head -n5 /etc/polkit-1/rules.d/org.freedesktop.udisks2.rules
polkit.addRule(function(action, subject) {
if (subject.isInGroup("wheel") && (action.id.indexOf("org.freedesktop.udisks2.modify-device") == 0 )) {
return polkit.Result.YES;
}
});
Эти правила дополняют /usr/share/polkit-1/rules.d/60-sysvinit-mount.rules, содержащий рулезы udisks2.
При наличии новой версии polkit-sysvinit с этими правилами, пакет gnome-disk-utility рекомендуется включить в состав образа xfce-sysv.