В основном я ищу способ прикрепить приложение к панели запуска Unity и запустить его от имени пользователя root.
В настоящее время, даже если я запускаю приложение с помощью sudo и прикалываю его после запуска, оно в следующий раз запустится как текущий пользователь.
Грустно, но нет опции контекстного меню «запускать как ...».
Обновление : я перешел на gnome3 и теперь я счастлив, мне не хватает только поиска.
Если вы хотите, чтобы приложение всегда запускалось от имени пользователя root
Закрепите приложение на панели запуска как обычно.
Найдите файл приложений .desktop, который находится в одном из следующих мест:
/ usr / share / applications / APPNAME.desktop
~ / .local / share / applications / APPNAME.desktop
locate .desktop | grep APPAME
Откройте с помощью gedit:
gksudo gedit / usr / поделиться / приложения / APPNAME.desktop
Затем измените строку
Exec = APP_COMMAND
-
Exec = gksudo -k -u root APP_COMMAND
Сохранить
Эта команда также сохранит вашу среду, что очень полезно, если вам нужно подключиться к другим серверам и использовать свой закрытый ключ.
Чтобы добавить опцию быстрого списка в «Запуск от имени root»
Следуйте шаги 1, 2 и 3 выше
Если в настоящее время программа запуска не имеет других параметров быстрого списка, просто добавьте это в конец документа
X-Ayatana-Desktop-Shortcuts=Runroot
[Runroot Shortcut Group]
Name=Run as root
Exec=gksudo -k -u root APP_COMMAND
TargetEnvironment=Unity
Возможно, это должен быть комментарий к решению Даниила. Это работает на меня, даже в Ubuntu 15.04. Из-за дополнительного аргумента мне пришлось поставить команду между кавычками Exec=gksu "nautilus --new-window"
. Также, почему-то, не знаю почему, мне пришлось напрямую редактировать пусковую установку, чтобы сохранить оригинальное меню (вместе с новой опцией). Если вы перетащите вашу собственную пусковую установку, она будет зарегистрирована, но у вас не будет того же самого меню.
В Ubuntu 15.04 пусковая установка для nautilus - это usr/share/applications/org.gnome.Nautilus.desktop
. Вы должны использовать командную строку, чтобы увидеть реальное имя файла.
Дальнейшие исследования привели меня к тому, что я считаю лучшим вариантом : http://ubuntuhandbook.org/index.php/2014/04/ubuntu-14-04-add-open-as-rootadministrator-to-context-menu/ . Вместо того, чтобы открывать "Наутилус" полностью как Корень, это позволит Вам открыть выбранные каталоги как Корень внутри "Наутилуса". В любом случае, я установил флажок, и эти две опции совместимы. Если Вы открываете Nautilus как корень, а затем используете вторую опцию, чтобы открыть каталог как корень, то он просто открывает его, не спрашивая пароля.
Я отправляю этот ответ на вопрос @ Крис , заданный в комментариях:
Предположим, вы хотите создать программу запуска, которая откроет "файловый менеджер (nautilus)" "как корень. Тогда вы можете сделать это:
Открыть терминал. Тип:
sudo -H gedit /usr/share/applications/nautilus_root.desktop
Нажмите ввод. При появлении запроса введите пароль для входа и нажмите Enter. Откроется gedit (текстовый редактор). Теперь вставьте туда следующее:
[DesktopEntry]
Encoding=UTF-8
Name=Nautilus(Root)
Comment=FileManager
Exec=gksu nautilus
Icon=file-manager
Categories=System;
Type=Application
Terminal=0
Теперь просто сохраните его и выйдите. Вы сделали. Теперь, если вы выполните поиск на тире, вы найдете новую пусковую установку «Nautilus (Root)». При нажатии на нее будет запрошен пароль, и после аутентификации наутилус будет открыт как root.
Примечание: будьте осторожны при запуске «Nautilus (Root)». В этом режиме вы можете удалить практически все из /
и сломать систему.
Următorul pare să facă același lucru , fără a avea nevoie de atribute private:
Actions=Runroot;Another
[Desktop Action Runroot]
Name=Run as root
Exec=gksudo -k -u root APP_COMMAND
[Desktop Action Another]
Name=Another action
Exec=whatever
Как быстрая и простая альтернатива громоздким требованиям, описанным здесь в ответах, я вошла в привычку делать следующее. ...
Введите gksu nautilus
(sudo -i nautilus
тоже работает)
Результирующее окно попадает под зонт sudo, так что вы можете использовать его для доступа и запуска файлов с привилегиями sudo-root к содержимому вашего сердца до тех пор, пока оно не закроется. Это удобно в преходящих ситуациях, когда вам не нужно более постоянное решение. Я использую его регулярно для извлечения сжатых файлов в защищенные системные папки, например.
በዋናው ምናሌ ውስጥ በስርዓት ፣ ምርጫዎች ፣ዓይነት gksudo
በመነሻ ባህሪዎች ትዕዛዝ መስክ ውስጥ ለምሳሌ-
/usr/bin/gksudo /usr/bin/yourapplication
የስምዎ መስክ እንዲህ ሊል ይችላል-
sudo yourapplication
ስለዚህ ተጠቃሚዎች የይለፍ ቃል ብቅ ማለት ማየት እንደሚችሉ ያውቃሉ እና ለምን ...
ስለ አንድነት ማስጀመሪያ እና ስለ ዋናው ምናሌ እርግጠኛ አይደለሁም ፡፡ ምናልባት ይህ ይረዳል?
መልካም ዕድል
Поскольку это старый вопрос со старым ответом; В дополнение к удивительному объяснению @edm
Начиная с Ubuntu 18.04 и более поздних версий, gksudo ( gksu
) устарел, и поэтому у него нет кандидата на установку в официальных репозиториях. Альтернативой является использование pkexec.
Отредактируйте файл /usr/share/applications/APPNAME.desktop
и измените строку
Exec=APP_COMMAND
на
Exec=pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY APP_COMMAND
Подробнее о pkexec здесь .
Чтобы создать ярлык, который запускает сценарий с правами root в Ubuntu 20.04
, вы можете использовать:
Добавьте следующую строку в / etc / sudoers
( sudo gedit / etc / sudoers
)
ВАШЕ ИМЯ ПОЛЬЗОВАТЕЛЯ ALL = NOPASSWD: / script / path
Создайте ярлык на рабочем столе:
gedit ~ / Desktop / mysho rtcut.desktop
Добавьте следующий контент:
#! / usr / bin / env xdg-open
[Desktop Entry]
Версия = 1.0
Тип = Приложение
Терминал = ложь
Exec = sudo / script / путь myarg
Name = Название ярлыка
Комментарий = Быстрый комментарий
Значок = / usr / share / icons / Humanity / actions / 16 / media -play-start.svg
Щелкните правой кнопкой мыши и ярлык и выберите Разрешить запуск
:
По состоянию на Ubuntu 18.04 GKSU
амортизируется, PKEExec
требует установки и не всегда работает. Вот еще один способ:
на Ответ EDM , отредактируйте строку .desktop
. Строка Exec, но предписание только с помощью «sudo», например, / USR / BIN / NVIDIA-НАСТРОЙКИ
становится SUDO / USR / BIN / NVIDIA-НАСТРОЙКИ
. Пользователи Menulibre (и, возможно, другие редакторы меню GUI): команда
строка в меню отправляется в строку
в файле .desktop
, поэтому вы не Т надо мешать копать .desktop
файл.
Если вы попробуете это из меню сейчас, ничего не произойдет. Sudo называется без графического интерфейса, поэтому ничего не происходит, и он не проходит молча. Это ожидается.
В терминале: Sudo Visudo
Затем добавьте в нижней части (вставку правой кнопкой мыши):
YOURUSERNAME ALL=(ALL) NOPASSWD: /usr/bin/nvidia-settings
Ctrl + O для сохранения, ввода, Ctrl + X, чтобы закрыть файл. Должен работать сейчас.