Bagaimana saya bisa mengganti shell di Ubuntu? [duplikat]


87

Pertanyaan ini sudah ada jawabannya di sini:

Saya memiliki VPS Server Ubuntu dan saya ingin menggunakan /bin/bash/sebagai shell saya. Bagaimana saya bisa mengganti shell saya? Saya memiliki akses root tetapi saya tidak bekerja sebagai root. Jadi dash adalah shell default saya sekarang.

Saya telah membaca Bagaimana cara membuat Bash shell default saya di Ubuntu? dan chshjahitan menjadi cara yang dipilih untuk pergi. Tetapi ketika saya mengetik chsh /bin/bashsaya mendapatkan pesan ini: chsh: unknown user /bin/bash

Dan jika saya cukup ketik /bin/bashlapisan Bash shell untuk bekerja dengan baik. Bagaimana cara mengubahnya?

Jawaban:


84

Untuk mengganti shell, gunakan chshperintah bare . Ini akan meminta Anda untuk shell baru. Anda tidak harus menjalankan apa pun sebagai root.


Ah, itu lebih baik!
Jonas

8
jangan lupa untuk keluar dan masuk kembali untuk melihat perubahannya.
driftcatcher

26
Tidak berfungsi sebagai pengguna normal: $ chsh Anda tidak boleh mengganti shell untuk 'pengguna'.
Henning

1
Bekerja untukku. Sepertinya sistem Anda sengaja dikunci.
Michael Cole

1
Saya menggunakan ssh, tetapi chsh meminta saya untuk kata sandi yang saya tidak tahu. Adakah cara untuk mengatasi ini?
Qwerty

113

Saat dijalankan sebagai root, Anda dapat menggunakan chshuntuk mengganti shell pengguna lain. Sintaks yang ingin Anda gunakan ini. Anda dapat mengubah shell Anda sendiri tanpa hak root.

chsh -s /bin/bash username


10
-1 chsh tidak perlu dijalankan sebagai root untuk mengganti shell Anda sendiri . Mengubah cangkang orang lain membutuhkan root.
Broam

2
Ini berhasil. Saya selalu mendapatkan pesan kesalahan "Anda tidak boleh mengganti shell untuk ...".
setzamora

2
Logout dan masuk kembali setelah mengamati perubahan
smac89

1
+1 Saya menemukan ini berfungsi, setelah mencoba chshperintah ketika masuk sebagai pengguna dan mendapatkan "Anda tidak dapat mengganti shell untuk ..."
therobyouknow

52

Anda dapat mengubah shell default untuk pengguna Anda dengan menggunakan perintah usermod.

sudo usermod -s <shell> <username>

ganti dengan nama shell yang ingin Anda gunakan (yaitu / bin / bash) dan dengan nama pengguna yang ingin Anda ubah.

Ini akan mengatur shell default untuk nama pengguna yang dipilih di file / etc / passwd.


8
Gunakan usermodjika Anda melihat "chsh Anda tidak dapat mengganti shell untuk ..."
Xeoncross

2
memilih, karena chsh memang tidak berhasil untuk saya. Terima kasih!
Mixaz

Penting untuk dicatat yang usermodmemerlukansudo
ARun32
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.