[решено]cinnamon nemo не открывается от администратора

vs220
если политики нет под конкретную команду
так если бы не было бы политики была бы ошибка авторизации.
да и гадать бесполезно polkit из репозитория без systemd не работает, значит у афтора явно не он.
Ошибки в тексте-неповторимый стиль автора©
indeviral
так если бы не было бы политики была бы ошибка авторизации.
Удалял политику и поведение такое же точно как и у ТС. Политики к авторизации собственно отношения и не имеют.
vs220
Удалял политику и поведение такое же точно как и у ТС.
Есть способы, которые работают без polkit и считаются наиболее правильными ... с polkit есть нюансы и плюс к этому не писать же файл для каждого GUI
Позже опишу, когда то давно экспериментировал, нужно найти эти записи ...
Ошибки не исчезают с опытом - они просто умнеют
vasek
не писать же файл для каждого GUI
Его обычно и пишут, в каждом пакете с прогой, обычно идёт файл с правилом polkit.
https://t.me/arch_linuxru
В части pkexec, что нашел в свой базе ...
1. с polkit - по умолчанию требуется авторизация org.freedesktop.policykit.exec, если для рассматриваемой программы не присутствует файл определения действия.
PS - когда экспериментировал у меня не сработал запуск программы даже после того, как я создал файл polkit для данной проги. Возможно и ошибся, но искать ошибку не стал - не понравился мне этот polkit - пошел другим путем.

2. без polkit - сначала несколько нюансов из DOC
- в части передачи переменных, env
pkexec не позволит запускать приложения X11 от имени другого пользователя, поскольку переменные среды $ DISPLAY и $ XAUTHORITY не установлены.
- в части передачи аргументов
pkexec не проверяет АРГУМЕНТЫ, переданные в программу. Если пользователь знает пароль root,  то использование pkexec не проблема, поскольку можно просто запустить pkexec bash для получения root.
Нашел следующий, как пишут, наиболее правильный/менее безопасный способ запуска GUI от root
- открываем 2 терминала
- в 1-ом узнаем его PID - echo $$
- во 2-ом запускаем - pkttyagent --process <PID>
- в 1-ом терминале запускаем нужное приложение GUI
pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY pcmanfm
- во 2-ом терминале появится приглашение для вода пароля --- вводим его и прога запускается
Но я пошел не много другим путем, чтобы не бегать между терминалами задействовал один, но запустил bash от root
su -c bash
pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY pcmanfm
Ошибки не исчезают с опытом - они просто умнеют
Vasek при запущенном полкит агенте и так вылазит gui окно авторизации.
Пример https://m.youtube.com/watch?v=AaCxqhHpqFk
длого возился,что выяснил.
не знаю по какой причине pkexec у меня не видит переменную PATH,не выидит символических ссылок вроде /bin / /usr/bin/ ,только прямой полный путь.
поменял строчку в /usr/share/polkit-1/actions/org.nemo.root.policy
 <annotate key="org.freedesktop.policykit.exec.path">/usr/bin/nemo</annotate>
на
 <annotate key="org.freedesktop.policykit.exec.path">/bin/nemo</annotate>
,в nemo пункт открвть от рута заработал.
немного сейчас занят,через полчасика попробую mousepad,думаю что тоже заработает.
почему так происходит не понимаю.
Linux Forever!
vs220
при запущенном полкит агенте и так вылазит gui окно авторизации.
У меня никакого окна с polcit не вылазит (установлен только один пакет - polkit) ... менешь команду, меняются ошибки, в общем случае примерно так
pkexec /usr/bin/pcmanfm
==== AUTHENTICATING FOR org.freedesktop.policykit.exec ====
Authentication is needed to run `/usr/bin/pcmanfm' as the super user
Authenticating as: root
Password:
polkit-agent-helper-1: error response to PolicyKit daemon: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: No session for cookie
==== AUTHENTICATION FAILED ====
Error executing command as another user: Not authorized

This incident has been reported.
А вот с описанным способом выше (в предыдущем посту), все нормально.
Ошибки не исчезают с опытом - они просто умнеют
Vadim
поменял строчку … почему так происходит не понимаю.
Согласно DOC так и должно быть
... the binary to execute (a fully-qualified path, e.g. "/usr/bin/pk-example-frobnicate") and the command-line, e.g. "pk-example-frobnicate foo bar" ...
и эта строчка так и должна выглядеть
<annotate key="org.freedesktop.policykit.exec.path">/usr/bin/pk-example-frobnicate</annotate>

PS - посмотри man - там тоже это должно быть описано (в части полного пути)
Ошибки не исчезают с опытом - они просто умнеют
vs220
Политики к авторизации собственно отношения и не имеют.
ну просто вы наверно в группе wheel, а на неё ссылается политика которая стоит по умолчанию)
а так требовались бы права root...
Ошибки в тексте-неповторимый стиль автора©
 
Зарегистрироваться или войдите чтобы оставить сообщение.