Почему мне не нужно устанавливать, root
когда оболочка «угадывает» пакет, который мне нужен для выполнения команды?
Например:
(cseymour) : ~ $ dnf install rogue
Error: This command has to be run under the root user.
(cseymour) : ~ $ rogue
bash: rogue: command not found...
Install package 'rogue' to provide command 'rogue'? [N/y] y
* Waiting in queue...
The following packages have to be installed:
rogue-5.4.5-19.fc24.x86_64 The original graphical adventure game
Proceed with changes? [N/y] y
* Waiting in queue...
* Waiting for authentication...
* Waiting in queue...
* Downloading packages...
* Requesting data...
* Testing changes...
* Installing packages...
и так далее, успешная установка пакета без пароля root.
dnf
что нет,PackageKit
и правило выше только для PackageKit. DNF - это стандартное средство командной строки, которому требуютсяroot
привилегии, но PackageKit использует аутентификацию с использованием D-Bus и некоторый бэкэнд, уже работающий от имени пользователя root.