Sublime Text 3 - мой основной текстовый редактор. Я запускаю его как обычный пользователь, но время от времени мне нужно запускать с правами root для редактирования некоторых системных файлов. Я привык edit as root в моем контекстном меню на моей старой системе.

В моем старом Linux Mint 13 Maya я использовал gksu subl. В моем новом Linux Mint 17 Qiana это не работает. Вот что происходит:

Когда я выполняю gksu subl меня запрашивается пароль с графическим диалогом. Я ввожу пароль, который принимается, и тогда ничего не происходит. Команда возвращается. Нет сообщения об ошибке, нет других признаков сбоя, но Sublime Text не запускается.

Обратите внимание, я уверен, что gksu присутствует и работает, потому что gksu gedit работает как положено - он запрашивает пароль, а затем запускает gedit с правами root.

Также, если я открою свой файловый менеджер (Nemo) с правами суперпользователя и перейду к текстовому файлу и просто дважды нажму на него - файл откроется в Sublime Text с правами суперпользователя. Поэтому я уверен, что root может запускать Sublime Text .

Также, если я попробую sudo subl , это сработает , но я не хочу использовать это как решение по понятным причинам.

Кажется, проблема связана с запуском Sublime Text с помощью gksu в Mint 17

Любые идеи о том, почему Sublime Text не начинается с gksu и как это исправить?

Пожалуйста, не предлагайте обходных путей, таких как "Использовать другой текстовый редактор" и «запустить файловый менеджер с помощью gksu а затем просто откройте текстовый файл для редактирования», я ищу решение этой конкретной проблемы.

1 ответ1

1

Наконец-то нашел решение. По какой-то причине (возможно, из-за ошибки) Sublime Text завершает работу с кодом успеха сразу после запуска, когда он запускается с помощью gksu. Чтобы этого не произошло, я использовал аргумент -w переданный в subl при запуске

smc@smc-comp ~ $ subl --help Sublime Text build 3065

Usage: sublime_text [arguments] [files]         edit the given files
   or: sublime_text [arguments] [directories]   open the given directories

Arguments:
--project <project>: Load the given project
--command <command>: Run the given command
-n or --new-window:  Open a new window
-a or --add:         Add folders to the current window
-w or --wait:        Wait for the files to be closed before returning 
-b or --background:  Don't activate the application
-h or --help:        Show help (this message) and exit
-v or --version:     Show version and exit

Filenames may be given a :line or :line:column suffix to open at a specific location.

Итак, команда выглядит так:

gksu "subl -w %F"

Может быть, это сэкономит кому-то время, глядя на ту же проблему

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .