chsh sebenarnya mengubah baris yang berkaitan dengan pengguna di / etc / passwd, meskipun pengguna hanya bisa mengubah 'line' sendiri di / etc / passwd. Karenanya, jika Anda ingin mengganti shell untuk pengguna lain, Anda memerlukan passwd-nya.
Jika Anda benar-benar ingin melakukannya (mengingat kekhawatiran di pos Lorenzo, dan kemungkinan masalah keamanan) berikut ini cara melakukannya:
#visudo
Ini membutuhkan hak akses root.
Katakanlah Anda sedang menjalankan sebagai "alice" dan ingin mengubah "bob" shell tanpa kata sandi;
Tambahkan ke file:
Cmnd_Alias SHELL = /usr/bin/chsh
Runas_Alias SH = Bob
alice ALL = (SH) NOPASSWD: SHELL
Ini memastikan 'alice' dapat berjalan di semua host sebagai pengguna di grup SH tanpa kata sandi grup perintah di SHELL.
Mungkin agak jauh untuk melakukannya dengan cara ini, tetapi itu mungkin.
Pastikan untuk membaca "man sudoers" sebelum mengubah file sudores dengan 'visudo', terutama pesan yang berkaitan dengan keamanan!