chsh фактично змінює рядок, що відноситься до користувача в / etc / passwd, хоча користувач може змінити лише свою власну 'рядок' у / etc / passwd. Отже, якщо ви хочете змінити оболонку для іншого користувача, вам потрібно його / її пароль.
Якщо ви дійсно хочете це зробити (зважаючи на занепокоєння на посаді Лоренцо та можливі проблеми безпеки), ось як це зробити:
#visudo
Для цього потрібні привілеї root.
Скажіть, ви зараз працюєте як "alice" і хочете змінити оболонку "bob" без пароля;
Додати у файл:
Cmnd_Alias SHELL = /usr/bin/chsh
Runas_Alias SH = Bob
alice ALL = (SH) NOPASSWD: SHELL
Це гарантує, що "alice" може працювати на всіх хостах як користувачі групи SH без пароля групи команд в SHELL.
Напевно, трохи далеко вдалося зробити це так, але це можливо.
Не забудьте прочитати "man sudoers" перед тим, як змінити файл sudores на "visudo", особливо повідомлення, що стосуються безпеки!