Bagaimana mungkin mengganti shell standar? The env
perintah saat mengatakan:
SHELL=/bin/tcsh
dan saya ingin mengubahnya ke Bash.
Bagaimana mungkin mengganti shell standar? The env
perintah saat mengatakan:
SHELL=/bin/tcsh
dan saya ingin mengubahnya ke Bash.
Jawaban:
Coba perintah linux chsh
.
Perintah terperinci adalah chsh -s /bin/bash
. Ini akan meminta Anda memasukkan kata sandi. Shell login default Anda /bin/bash
sekarang. Anda harus keluar dan masuk kembali untuk melihat perubahan ini.
Berikut ini dikutip dari halaman manual:
Perintah chsh mengubah shell login pengguna. Ini menentukan nama perintah login awal pengguna. Pengguna normal hanya dapat mengubah shell login untuk akunnya sendiri, superuser dapat mengubah shell login untuk akun apa pun
Perintah ini akan mengubah shell login default secara permanen.
Catatan: Jika akun pengguna Anda jauh seperti pada otentikasi Kerberos (mis. Perusahaan RHEL) maka Anda tidak akan dapat menggunakannya chsh
.
chsh: can only change local entries; use ypchsh instead
. Maka ypchsh tidak punya -s
pilihan
/etc/passwd
, tapi saya tidak mengeceknya.
exec /bin/bash
untuk ~/.profile
dan ini memungkinkan saya untuk login langsung ke pesta tanpa membuat perubahan ke server. (Kerang default asli hanya /bin/sh
)
exit
bash? Apakah Anda akan logout server secara langsung atau hanya keluar dari bash dan ke sh dan yang lain exit
diperlukan untuk logout server?
Anda dapat mengubah file passwd secara langsung untuk pengguna tertentu atau menggunakan perintah di bawah ini
chsh -s /usr/local/bin/bash username
Kemudian keluar dan masuk
which bash
sebelum menjalankan perintah di atas; jarak tempuh Anda mungkin berbeda di setiap lokasi. Dalam kasus saya, ditemukan di/bin/bash
chsh
perintah adalah bagian dari util-linux
paket; dan chsh -s $(which bash) $USER
harus menghasilkan yang sama seperti di atas.
-l
opsi: "cetak daftar kerang".
chsh -s /bin/bash username
untukku
Anda harus memiliki 'kerangka' di suatu tempat di /etc
, mungkin /etc/skeleton
, atau periksa pengaturan default, mungkin /etc/default
atau sesuatu. Itu adalah skrip yang mendefinisikan variabel lingkungan standar yang ditetapkan selama login.
Jika itu hanya untuk akun Anda sendiri: periksa file (tersembunyi) ~/.profile
dan ~/.login
. Atau hasilkan mereka, jika tidak ada. Ini juga dievaluasi oleh proses login.
/etc/default/useradd