Перезагрузка без привилегий sudoer?
Я пытался перезапустить Ubuntu без необходимости редактировать sudoers. Это было возможно раньше (я думаю, в lucid) с помощью команды dbus:
dbus-send –system –print-reply –dest=org.freedesktop.ConsoleKit /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Restart
Но это дает мне ошибку. Похоже, все изменилось.
В KDE (который я не использую) есть нечто подобное (см. Этот ответ)
Может ли кто-нибудь показать мне альтернативный способ перезагрузки моей машины из скрипта (без настройки прав)
2 ответа
Из панели запуска Вопрос № 85949:
Выйти
dbus-send --session --type=method_call --print-reply --dest=org.gnome.SessionManager /org/gnome/SessionManager org.gnome.SessionManager.Logout uint32:1
перезагружать
dbus-send --session --type=method_call --print-reply --dest=org.gnome.SessionManager /org/gnome/SessionManager org.gnome.SessionManager.RequestReboot
Неисправность
dbus-send --session --type=method_call --print-reply --dest=org.gnome.SessionManager /org/gnome/SessionManager org.gnome.SessionManager.RequestShutdown
Если какое-либо приложение блокирует выход из системы / перезагрузку / завершение работы, никакие действия не будут выполнены, и gnome-session отобразит диалоговое окно подтверждения.
Итак, добавьте команду:
dbus-send --session --type=method_call --print-reply --dest=org.gnome.SessionManager /org/gnome/SessionManager org.gnome.SessionManager.Logout uint32:1
к вашему сценарию.
ОБНОВЛЕНИЕ: Интерфейс DBus для приостановки и гибернации был удален, для приостановки и гибернации из командной строки используйте pmi.
sudo apt-get install powermanagement-interface
Приостановка:
pmi action suspend
Hibernate:
pmi action hibernate
Apt -get для pmi в 10.10, устанавливает powermanagement-interface, когда pmi action suspend
или же pmi action hibernate
вызвал, возвращает ServiceUnknown ошибку