Я установил Ubuntu 12.04 LTS (Precise Pangolin), 64 бит. Нигде меня не попросили установить пароль для root.
Я только что установил программное обеспечение AccuRev SCM . Он был установлен в папку /root
по умолчанию. Теперь я пытаюсь что-то сделать в этой папке. Я попытался с su переключиться на root, но я не знаю его пароль.
Должен ли я всегда использовать sudo или получить пароль по умолчанию root , если есть?
Как создать средство запуска ] для программного обеспечения, установленного в каталоге /root
?
По умолчанию доступ к учетной записи root осуществляется с помощью sudo.
Для полного обсуждения в теме и информации о том, как установить пароль root, смотрите: RootSudo - Документация сообщества Ubuntu
С учетом вышесказанного, крайне маловероятно, что вам нужно чтобы установить пароль root, я советую вам использовать
sudo -i
. Или для графических приложений используйте gksu
gksu nautilus
. По умолчанию Ubuntu не устанавливает пароль пользователя root, и поэтому вы не можете войти в систему как пользователь root. Вместо этого вам предоставляется возможность выполнять задачи с привилегиями суперпользователя с помощью sudo.
Ранее я отвечал на аналогичный вопрос .
В то время как вы можете создать пароль для учетной записи root, позволяя вам войти в систему как root с su
, это не типичный способ работы с Ubuntu. Вместо этого Ubuntu ожидает, что вы будете использовать sudo
.
Использование sudo
Sudo - это альтернатива предоставлению людям root-пароля для выполнения обязанностей суперпользователя. При установке Ubuntu по умолчанию человеку, который установил ОС, по умолчанию предоставляется разрешение «sudo».
Любой, имеющий разрешение «sudo», может выполнить что-то «как суперпользователь», предварительно ожидая sudo
своей команды. Например, чтобы запустить apt-get dist-upgrade
в качестве суперпользователя, вы можете использовать:
sudo apt-get dist-upgrade
По умолчанию sudo будет запрашивать пароль вашей учетной записи при выполнении этого. Это помогает безопасности. Это запоминается на несколько минут, поэтому, если у вас есть несколько задач, связанных с sudo, он запросит ваш пароль только в первый раз.
Вы увидите вышеописанное использование sudo практически везде, где читаете учебник по Ubuntu в Интернете. Это альтернатива этому.
su
apt-get dist-upgrade
exit
Преимущества
С помощью sudo вы заранее выбираете, какие пользователи имеют доступ к sudo. Им не нужно запоминать пароль root, так как они используют свой собственный пароль. Если у вас несколько пользователей, вы можете отозвать права суперпользователя, просто удалив их разрешение sudo, без необходимости изменять пароль root и уведомлять всех о новом пароле. Вы даже можете выбрать, какие команды пользователю разрешено выполнять с помощью sudo, а какие команды запрещены для этого пользователя. И, наконец, в случае нарушения безопасности в некоторых случаях можно оставить лучший контрольный журнал, показывающий, какая учетная запись пользователя была взломана.
Отсутствие пароля root делает невозможным атаку методом подбора на учетную запись root: это актуально, если вы разрешаете вход по SSH. Вместо этого злоумышленнику нужно знать имя локальной учетной записи.
Sudo упрощает выполнение одной команды с привилегиями суперпользователя. С su
вы навсегда переключаетесь на суперпользовательскую оболочку, которую необходимо закрыть с помощью exit
или logout
. Это может привести к тому, что люди будут оставаться в оболочке суперпользователя дольше, чем необходимо, только потому, что это удобнее, чем выход из системы и повторный вход позже.
Получение корневой оболочки
С помощью sudo у вас все еще есть возможность открыть постоянную (интерактивную) оболочку суперпользователя с помощью команды:
sudo su
. ... и это все еще можно сделать без пароля root, поскольку sudo
дает привилегии суперпользователя для команды su
.
И аналогично, вместо su -
для оболочки входа в систему вы можете использовать sudo su -
или даже sudo -i
.
Однако при этом вам просто нужно знать, что вы действуете как суперпользователь для каждой команды. Это хороший принцип безопасности - не оставаться суперпользователем дольше, чем это необходимо, просто чтобы уменьшить вероятность случайного повреждения системы (без него вы можете повредить только файлы, которыми владеет ваш пользователь).
Просто для пояснения, вы можете , если вы выберете, дать пользователю root пароль, позволяющий входить в систему как root, если вы специально захотите сделать это таким образом. Я просто хотел сообщить вам о соглашении Ubuntu о предпочтении sudo
вместо этого и сообщить, что есть альтернатива.
Пока мы это делаем, если вы пытаетесь войти через ssh в корневую учетную запись и она возвращает вам «Отказано в доступе» , посмотрите , даже после того, как вы несколько раз обновили пароль root более того, помните, что помимо обновления пароля root, как уже упоминали другие, вы также должны включить root ssh login в конфигурации сервера ssh.
sudo vi /etc/ssh/sshd_config
установить
PermitRootLogin yes
сделать танец перезапуска
service ssh restart
Бамм !!! Вы в игре!
PSst: Кстати, это для Ubuntu, YMMV.