Как я могу создать новую команду “gksu” на основе pkexec?

Когда я гуглю “gksu gedit” одна из главных записей (Как выполнить gedit, и наутилус как корень) советует этому gksu использование осуждено:

gksu не был обновлен с 2009 и не является recommendedany больше. На самом деле Ubuntu больше не поставлется с gksu по умолчанию (хотя это может быть установлено для многих из Вас, потому что некоторые приложения все еще зависят от него), и это может даже быть полностью удалено в какой-то момент.

Ссылка на AskUbuntu (Почему gksu больше не устанавливается по умолчанию?) предлагает pkexec должен использоваться вместо этого, но не обеспечивает ясные и краткие шаги, чтобы сделать это.

Как я могу использовать pkexec в рамках нового названного сценария оболочки обертки gsu это поддерживает обоих gedit и nautilus?

Я чувствую названный сценарий обертки gsu является самым соответствующим, потому что моя "память мышц" состоит в том, чтобы ввести gksu все время и я не хочу должным быть вводить pkexec вместо этого.

Дополнительно я хотел бы противных gtk предупреждающие сообщения для исчезновения. Также я хотел бы терминальную подсказку назад сразу же вместо того, чтобы ожидать редактора или файлового менеджера для окончания.

Дубликаты AU: я искал много Вопросов и ответов, но ни один не спрашивает (или предлагает, как к), дают полное решение для gsu сценарий обертки для вызова pkexec И установите все необходимые наборы политики И избавьтесь от противных gtk предупреждений И верните терминальную подсказку сразу же... Все в одном ответе.

1
задан 13 April 2017 в 15:24

1 ответ

Прежде чем можно будет использовать pkexec с gedit и nautilus необходимо скопировать правила polkit поддерживать их. Это будет автоматически сделано в Ubuntu 17.04, но тем временем Вы должны wget их.

Набор политики наутилуса

wget https://raw.githubusercontent.com/hotice/webupd8/master/org.gnome.nautilus.policy -O /tmp/org.gnome.nautilus.policy
sudo cp /tmp/org.gnome.nautilus.policy /usr/share/polkit-1/actions/

Набор политики Gedit

wget https://raw.githubusercontent.com/hotice/webupd8/master/org.gnome.gedit.policy -O /tmp/org.gnome.gedit.policy
sudo cp /tmp/org.gnome.gedit.policy /usr/share/polkit-1/actions/

"gsu" колотят сценарий для замены "gksu"

Создание сценария удара является одним из двух способов звонить pxexec использование несколько знакомого термина gsu. Создайте этот файл в одном из Ваших путей:

#!/bin/bash

# Usage: gsu gedit file1 file2...
#  -OR-  gsu natuilus /dirname

# & is used to spawn process and get prompt back ASAP
# > /dev/null is used to send gtk warnings into dumpster

COMMAND=$1 # extract gedit or nautilus

pkexec "$COMMAND" "${@:2}" &> /dev/null&

Сохраните файл и отметьте его как исполняемый файл с chmod +x gsu

Теперь вместо ввода gksu для редактирования конфигурации личинки, можно использовать:

gsu gedit /etc/default/grub

"gsu" как псевдоним "pkexec" для замены "gksu"

Создание псевдонима является второй опцией звонить pxexec использование несколько знакомого термина gsu. Откройте файл ~/.bashrc и поиск alias. Вы будете видеть это:

# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'

После последней строки добавляют это:

alias gsu='pkexec'

Сохраните файл и выход.

2
ответ дан 7 December 2019 в 13:40

Другие вопросы по тегам:

Похожие вопросы: