В чем разница между «gksudo nautilus» и «sudo nautilus»?

93

Я использовал gksudo nautilus и sudo nautilus через Alt + F2 .

В чем разница? Они очень похожи!

    
задан DrKenobi 06.11.2010 в 15:48
источник

6 ответов

106

Взято из здесь :

  

Вы должны никогда использовать обычный sudo для запуска графических приложений как   корень. Вы должны использовать gksudo ( kdesudo на Kubuntu) для запуска таких программ.    gksudo устанавливает HOME=/root и копирует .Xauthority в каталог tmp .   Это предотвращает доступ к файлам в вашем домашнем каталоге root.

Обратите внимание, что это прежде всего файлы конфигурации . Если вы запускаете Nautilus в root , даже с gksu / gksudo , и вы создаете файл или папку в любом месте (в том числе в вашем домашнем каталоге), этот файл или папка будет принадлежать root . Но если вы запускаете Nautilus (или большинство других графических приложений) как root с sudo , они могут сохранить свои файлы конфигурации в вашем домашнем каталоге (а не в домашнем каталоге root ). Эти файлы конфигурации могут принадлежать root и недоступны, если вы не работаете как root, что может серьезно испортить ваши настройки и даже может заставить некоторые приложения работать вообще.

Решение, как только вы допустили эту ошибку, должно найти файлы конфигурации и удалить их или chown обратно, чтобы принадлежать вашему пользователю% root . Многие такие файлы начинаются с . или содержатся в каталоге, который начинается с . . Некоторые из них находятся внутри папки .config в вашем домашнем каталоге. Чтобы просмотреть файлы и папки, начинающиеся с . в Nautilus, нажмите Ctrl + H (этот показывает скрытые файлы .) Чтобы увидеть их ls , используйте -a (или -A ), флаг.

Чтобы найти файлы, не принадлежащие вам в вашем домашнем каталоге, вы можете использовать следующую команду в терминале:

find $HOME -not -user $USER -exec ls -lad {} \;

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

ответ дан Chris Wilson 06.11.2010 в 16:01
источник
8

Знаете ли вы, что Nautilus add on называется nautilus-gksu , который добавляет« открыть как администратора »в меню правой кнопки мыши nautilus?

Примечание: недоступно в Ubuntu 12.04 и далее.

    
ответ дан robin0800 06.11.2010 в 17:16
4

Если вы начинаете графическое приложение с помощью sudo, вы можете испортить права собственности на свои файлы, что может привести к разрыву приложений. Никогда не делай этого. Ознакомьтесь с Справка сообщества :

  

Вы никогда не должны использовать обычное sudo для   запускать графические приложения как Root .   Вы должны использовать gksudo (kdesudo on   Kubuntu) для запуска таких программ. gksudo   устанавливает HOME = ~ root и копирует   .Xauthority в каталог tmp. Эта   предотвращает файлы в вашем домашнем каталоге   став собственностью Root. (AFAICT, это   все это особенное в   среда запущенного процесса   с gksudo vs. sudo).

    
ответ дан desgua 29.04.2011 в 03:38
2

sudo по умолчанию сохраняет вашу переменную $ HOME. Например, если вы запустите sudo firefox , вы будете запускать с правами root, но ваша конфигурация. Если вы измените настройки в этой ситуации, вы получите части своей конфигурации, принадлежащие root, а не ваш идентификатор пользователя.

    
ответ дан Mark Russell 29.04.2011 в 03:42
-2

Найдено в файле, создаваемом командой терминала «info gksudo»:

  

gksu является интерфейсом к su и gksudo является интерфейсом к sudo. Их основная цель - запустить графические команды, которые нуждаются в корне, без необходимости запуска эмулятора X-терминала и непосредственного использования su.

Я обнаружил, что во многих случаях файлы «info» имеют полезные описания, а также полезную информацию об опциях. Я бы настоятельно сказал, что сначала узнаем о какой-либо команде, получив доступ к файлу «info» этой команды.

Для новичков в терминале введите или вставьте информацию о команде с именем команды, в котором вы заинтересованы в качестве параметра. Формат - info [command_name] (не забудьте включить командную строку или скобки). Рекомендуемые терминальные записи для новичков:

$ info
$ info info
    
ответ дан James 04.08.2012 в 18:24
-3

Если вы выберете gksudo nautilus, вы спросите свой пароль графически. С помощью sudo вы запрашиваете его в терминале

    
ответ дан winniemiel05 06.11.2010 в 15:58