Как я могу запретить virt-manager запрашивать пароль root?
При запуске virt-manager запрашивает пароль пользователя root.
Похоже, что virt-manager заставляет демон libvirtd запустить pkcheck с несколькими аргументами, которые затем показывают это диалоговое окно аутентификации. Так что это PolicyKit, который просит пароль root.
Официальный сайт (libvirt.org) описывает, как определить правило PolicyKit, чтобы избавиться от запроса пароля:
$ sudo cat /etc/polkit-1/localauthority/50-local.d/50-org.example-libvirt-remote-access.pkla
[libvirt Management Access]
Identity=unix-group:libvirt
Action=org.libvirt.unix.manage
ResultAny=yes
ResultInactive=yes
ResultActive=yes
Подкаталог "localauthority" не существует. Создание и размещение файла с таким именем и содержимым (libvirt -> my group name) там, похоже, не имеет никакого эффекта. Также есть файл по умолчанию, который использует синтаксис JavaScript:
/etc/polkit-1/rules.d/50-default.rules
Этот пакет установлен в системе, плюс несколько интерфейсов DE:
polkit-0.107-4.fc18.x86_64
Видимо пример конфигурации на libvirt.org устарел?
Какая конфигурация необходима, чтобы избавиться от запроса пароля (для определенной группы пользователей)?
4 ответа
/etc/polkit-1/rules.d/10.virt.rules:
polkit.addRule(function(action, subject) {
if (action.id == "org.libvirt.unix.manage"
&& subject.local
&& subject.active
&& subject.isInGroup("libvirt")) {
return polkit.Result.YES;
}
});
Вам нужно будет выполнить общие шаги, включая перезапуск policykit и запуск нового сеанса с соответствующим пользователем после добавления его в libvirt
группа.
Похоже, что ресурс посвящен Fedora 18, но в нем уже используется синтаксис javascript, поэтому он, скорее всего, подходит и для Fedora 19.
Ссылки:
Я обнаружил, что просто добавив моего пользователя в
libvirt
и
kvm
группы прекратили подсказки.
sudo usermod -a -G libvirt yourusername
sudo usermod -a -G kvm yourusername
Запрос пароля был сделан для безопасности системы, поэтому, если вы сделаете это, это может сделать его уязвимым.
Создайте группу на своем компьютере. или вы можете запустить эту "sudo groupadd -r Group "
Вы можете добавить любого пользователя в эту системную группу, выполнив "sudo usermod -a -G Group User "
Теперь вам нужно создать нашу политику PolicyKit, которая позволит пользователям Group запускать virt-manager.
вы создадите файл по этому пути: "/ etc / polkit-1 / localauthority / 50-local.d / 50-org. Group -libvirt-local-access.pkla"
и вы поместите строки ниже в нем[Разрешить группе Group разрешения на управление libvirt]
Идентичность =unix-группа: группа
Действие = org.libvirt.unix.manage
ResultAny = да
ResultInactive= да
ResultActive= да
Это все, что вам нужно было сделать, теперь вы можете запустить его. И я надеюсь, что это поможет вам.
Я бы на самом деле использовал
sudo usermod -a -G libvirt $(whoami)
sudo usermod -a -G kvm $(whoami)
Таким образом, простое копирование будет работать напрямую, посколькуwhoami
выводит ваше имя пользователя