Дело в том, что команда sudo не всегда корректно работает с графическими приложениями, поэтому рано или поздно вы можете получить сообщение Unable to read ICE authority file, после чего вообще станет невозможным запуск графических программ с правами root. Чтобы поправить это, удалите файл с именем.{ICE,X}authority из вашего домашнего каталога командой:
Таким образом, графические приложения с правами root проще запускать, используя главное меню. Но не все приложения имеются в главном меню и не все приложения вызываются с правами root. Например, в главном меню есть команда вызова текстового редактора, но нет команды для вызова текстового редактора с правами root. Поэтому намного проще нажать комбинацию клавиш
gksudo
Если вам нужно выполнить серию команд с правами root, но не хочется каждый раз вводить
sudo — i
Эта команда запустит оболочку root, т. е. вы сможете вводить любые команды, и они будут выполнены с правами root. Обратите внимание, что изменится приглашение командной строки (рис. 6.3).
До этого приглашение имело вид $, что означает работу от имени обычного пользователя, а после выполнения команды приглашение изменилось на # — это верный признак того, что каждая введенная команда будет выполнена с правами root.
Обратите также внимание на имя пользователя: до ввода команды
6.3. Переход к традиционной учетной записи root
Несмотря на то, что в дистрибутиве Ubuntu традиционная учетная запись root отключена, возможность восстановить ее имеется. После чего режим ее использования будет таким же, как и в прочих дистрибутивах, — вы сможете заходить в систему под именем root. В
Но прежде чем снять запрет на работу от имени учетной записи root, рассмотрим подробнее преимущества и недостатки ситуации, когда она отключена, а мы получаем права пользователя root с помощью команды sudo.
К преимуществам
вам не нужно помнить несколько паролей (т. е. ваш личный пароль и пароль пользователя root) — вы помните только свой пароль и вводите его, когда нужно;
с помощью
каждая команда, введенная с помощью
предположим, что некто захотел взломать вашу систему. Этот некто не знает, какие учетные записи есть в вашем компьютере, зато учетную запись root знают все. Также все знают, что, завладев паролем к этой учетной записи, можно получить неограниченный доступ к системе. Но не к вашей системе — у вас учетная запись root отключена!
вы можете разрешать и запрещать другим пользователям использовать полномочия root (позже мы разберемся, как это сделать), не предоставляя собственно пароль root — при этом практически нет риска скомпрометировать учетную запись root.
Впрочем, такой риск есть всегда — вспомните, как мы в
Но у
неудобно использовать перенаправление ввода/вывода. Так, команда:
sudo ls /etc > /root/somefile
работать не будет, вместо нее придется использовать значительно более длинную команду:
sudo bash — c "ls /etc > /root/somefile"
имеются также неудобства, связанные с технологией NSS (Network Security Services). К счастью, она используется не очень часто, поэтому основной недостаток
Итак, если вы все-таки хотите использовать обычную учетную запись root, то для этого достаточно задать пароль для пользователя root. Делается это командой:
sudo
Сначала программа запросит ваш пользовательский пароль, затем новый пароль root и его подтверждение:
Enter your existing password
Enter password for root
Confirm password for root
После этого вы сможете войти в систему под учетной записью root.