Разница между `sudo su` и `sudo fish` [duplicate]

На этот вопрос уже есть ответ здесь:

Я использую fish (Friendly Interactive Shell) в качестве стандартной оболочки в Ubuntu 14.04, а не bash.

Я заметил следующее поведение и не знаю, является ли какое-либо из них предпочтительным для получения root-доступа.

Я могу ввести команду sudo su или sudo fish, и обе они дадут мне права суперпользователя. (Подсказка отображается как root@ubuntu ~#)
. Есть ли разница в поведении этих команд?

Единственное, что я могу понять, это то, что sudo su использует конфигурацию fish, расположенную в /root/.config/fish/, а sudo fish использует конфигурацию fish в моем домашнем каталоге /home/uloco/.config/fish.

Есть ли возможность закриптовать мою систему с помощью sudo fish? Будут ли внесены изменения владельца в файлы в моем домашнем каталоге, если я использую это?

2
задан 30 January 2015 в 06:36

2 ответа

sudo su выполняется su, как будто Вы были пользователем root. Это означает, оболочка, которая открыта, является оболочкой, данной в записи пользователя в /etc/passwd в 6-м поле. В случае Вашего системного пользователя root это могло бы быть /bin/fish. Та оболочка выполняется как оболочка входа в систему, таким образом, емкостно-резистивные сценарии пользователя root выполняются.

, Когда Вы выполняетесь sudo fish, тогда приложение fish (оболочка) является исполняемым файлом, как будто Вы были пользователем root, , но в среде вызывающего абонента. Вот почему емкостно-резистивные сценарии fishs выполняются.

Посмотрите полное объяснение в этом ответе: 'sudo su -' по сравнению с 'sudo-i' по сравнению с 'sudo/bin/bash' - когда это имеет значение, который используется, или это имеет значение вообще?

то, Какой необходимо использовать, зависит от Вас:

  • Вы хотите среду корня, как будто Вы входите в систему к системе как корень? Тогда звоните sudo su.
  • Вы хотите сохранить свою среду как Ваши псевдонимы и такой материал, определенный в дистанционном-управлении-scritps оболочек? Тогда используйте sudo fish.

там возможность к склепу моя система при помощи рыбы sudo?

Его просто среда, Вы не делаете склепа что-то.

там будут какие-либо изменения владельца, внесенные в файлы в моем корневом каталоге, если я буду использовать это?

Не, если Вы не изменяете что-то вручную.

3
ответ дан 6 October 2019 в 02:44
sudo su

su - изменяют идентификатор пользователя или становятся суперпользователем

sudo bash

удар - Оболочка Границы Снова GNU

sudo fish

, рыба - является умной и удобной для пользователя оболочкой командной строки для OS X, Linux и остальной части семьи.

enter image description here

http://en.wikipedia.org/wiki/Unix_shell#Shell_categories

оболочка Границы Снова (удар) и Дружественная интерактивная оболочка (рыба) оба является типами оболочки.

1
ответ дан 6 October 2019 в 02:44

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

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