Рейтинг:0

Изменить ошибку оболочки

флаг nl

Убунту 20.04

Я пытаюсь изменить оболочку для резервного копирования пользователя:

brad@ubuntu:~$ su - backuppc /usr/bin/bash
Пароль: 
/usr/bin/bash: 1: Синтаксическая ошибка: "|" непредвиденный
brad@ubuntu:~$ где bash
bash: /usr/bin/bash /etc/bash.bashrc /usr/share/man/man1/bash.1.gz

Обновление: это было решено

-, -л, --логин Запустите оболочку как оболочку входа в систему со средой, аналогичной реальному входу в систему:

             o очищает все переменные окружения, кроме TERM и переменных, указанных параметром --whitelist-environment

             o инициализирует переменные среды HOME, SHELL, USER, LOGNAME и PATH

             o переходит в домашний каталог целевого пользователя

             o устанавливает argv[0] оболочки в '-', чтобы сделать оболочку оболочкой входа в систему

задница:

brad@zika:~$ вс -
Пароль: 
su: Ошибка аутентификации

Что я здесь делаю неправильно? Спасибо!

terdon avatar
флаг cn
Что именно ты пытаешься сделать? Вы хотели запустить `sudo -u backuppc chsh` или, может быть, `su backuppc chsh`? Связаны ли первая и вторая части вашего вопроса друг с другом? Пожалуйста [отредактируйте] свой вопрос и дайте нам некоторый контекст. «Ошибка аутентификации» — это то, что вы получаете, когда вводите неправильный пароль. Если это не то, что происходит, нам нужна дополнительная информация.
Brad Thompson avatar
флаг nl
нет, это не неправильный пароль, sudo работает нормально, а su не работает
terdon avatar
флаг cn
Пожалуйста, объясните, что вы делаете. su - требует пароль пользователя root, а sudo требует пароль пользователя brad.
Рейтинг:3
флаг cn

В Ubuntu учетная запись root не активирована. Как следствие, команда су - не будет работать. Эта команда запускает оболочку входа в систему для пользователя root, которая не работает. su - резервный компьютер запускает оболочку входа для пользователя резервный компьютер. Это работает, если этот пользователь существует в системе.

Чтобы открыть интерактивную подсказку с привилегиями root, используйте судо -я . Тем не менее, для многих задач администратора редко требуется держать открытым терминал с привилегиями root. Вместо этого предваряйте команды, требующие привилегий root, с помощью судо.

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

sudo chsh backuppc -s <путь к оболочке>
Brad Thompson avatar
флаг nl
su - backuppc -s /bin/bash тоже сработало. Активирован или включен? root на моем ящике включен.
vanadium avatar
флаг cn
Семантика: пожалуйста, просветите меня о правильном термине, и я обновлю его. При установке Ubuntu по умолчанию учетная запись root отключена. su - поэтому не работает. Однако su - backuppc будет. Добавлю небольшое примечание по этому поводу.
Brad Thompson avatar
флаг nl
"отключено" не политкорректно, может быть, поэтому вы изначально использовали термин "активировано" :) :) :)

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.