1

Я использую оболочку Bash. Я хочу выполнить все команды определенного пользователя, чтобы они выполнялись как определенная групповая команда в оболочке. Как мне это сделать? Можно ли что-нибудь сделать в ~/.bashrc?

1 ответ1

1

Если пользователь хочет провести остаток своего сеанса в некоторой группе, он может запустить newgrp , например:

newgrp somegroup

Он может или не может быть запрошен пароль в зависимости от разрешений. Смотрите man newgrp для деталей.

Группа, в которой находится пользователь, когда он начинает сеанс, определяется четвертым полем его строки в /etc/passwd . Если вы не хотите использовать этот файл напрямую, существуют системные утилиты для его безопасного изменения. Одним из них является usermod:

usermod -g somegroup someuser

(somegroup должна существовать, прежде чем вы запустите это.) После выполнения выше, в следующий раз, someuser журналы в, он будет, по умолчанию, будет в somegroup

Для получения информации о том, как интерпретировать поля в /etc/passwd , смотрите man 5 passwd (важно "5"). Группы и соответствующие им номера групп определены в /etc/group . Смотрите man 5 group для получения дополнительной информации об этом.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .