Cara Mengubah Shell Default Anda di Linux dengan chsh
Diterbitkan: 2022-01-29 Bash bukan satu-satunya shell Linux. Sangat mudah untuk mencoba shell lain, seperti Zsh, yang sangat populer. Ketika Anda telah menemukan yang Anda sukai, gunakan perintah chsh
untuk menjadikannya sebagai shell default Anda. Kami akan menunjukkan caranya.
Mengapa Shell Itu Penting
Shell berada di antara Anda dan sistem operasi. Ini menyediakan lingkungan di dalam jendela terminal yang memungkinkan Anda mengetik perintah dan menjalankan program. Shell memeriksa input Anda dan mencari tahu apa yang Anda inginkan. Jika ia dapat melakukan penawaran Anda sendiri, ia melakukannya. Jika membutuhkan bantuan dari luar, ia mencari jalan dan menemukan program yang dapat melakukan apa pun yang Anda minta.
Ada banyak shell berbeda yang tersedia di Linux. Semuanya memungkinkan Anda melakukan tugas inti yang sama: menjelajahi sistem file, bekerja dengan file, meluncurkan program, dan menjalankan skrip. Namun, mereka masing-masing melakukan tugas-tugas ini dengan cara mereka sendiri, dan memiliki fitur dan keistimewaan khusus mereka sendiri.
Kerang cenderung dirancang oleh orang-orang yang menginginkan sesuatu berperilaku dengan cara tertentu. Jika pemikiran Anda sejalan dengan desainer itu, cangkang itu mungkin cocok untuk Anda. Plus, mencoba shell baru di Linux itu mudah.
Di sebagian besar distribusi Linux, termasuk Ubuntu, shell default adalah bash
. Ia melakukan pekerjaan yang hebat dan sangat mampu. Namun, shell lain mungkin menawarkan perbedaan penghematan waktu yang akan berdampak besar pada alur kerja Anda. Anda tidak akan pernah tahu jika Anda tidak melihat!
TERKAIT: Apa itu ZSH, dan Mengapa Anda Harus Menggunakannya Daripada Bash?
Ember Penuh Kerang
Kami telah membahas shell Linux yang berbeda sebelumnya, tetapi inilah pengantar singkat untuk yang paling umum:
- bash: Bourne lagi shell adalah default di banyak distribusi.
- rbash: Shell
bash
terbatas ini menyediakan fungsionalitas minimal untuk orang atau skrip yang berjalan di dalamnya. - ash: Shell Almquist adalah versi bash yang lebih ringan.
- dash: Debian Alquist Shell adalah skrip shell default di Ubuntu. Sementara
bash
adalah login default dan shell interaktif,dash
digunakan untuk menjalankan proses sistem karena jauh lebih ringan daripadabash
. - zsh: Shell Z adalah versi modern dari keluarga
bash
shell. Ini menawarkan peningkatan yang rapi, seperti pemeriksaan ejaan perintah dan koreksi yang disarankan. - ikan: Cangkang interaktif yang ramah ini ditulis dari awal dan tidak diturunkan dari keluarga cangkang lainnya. Ini dimaksudkan agar mudah digunakan. Di antara banyak keuntungan lainnya, ikan menawarkan saran untuk perintah berdasarkan riwayat Anda dan isi folder saat ini, mirip dengan teks prediktif.
- ksh: KornShell menyediakan bahasa skrip yang sangat kuat.
TERKAIT: Apa Perbedaan Antara Bash, Zsh, dan Shell Linux Lainnya?
Daftar Kerang yang Dipasang
Untuk melihat shell mana yang diinstal di komputer Anda, gunakan perintah ini. Ini hanya mencantumkan konten file /etc/shells
:
cat /etc/shells
Kami telah menyebutkan bash
, dash
, dan rbash
, tapi apa itu sh
?
sh
adalah cangkang Thompson, yang ditulis pada tahun 1971 oleh Ken Thompson dari Bell Labs yang terkenal. Itu tidak lagi dipertahankan dan telah lama digantikan oleh kerang modern. Ini disertakan murni untuk menjaga kompatibilitas dengan skrip lama yang masih memiliki yang berikut sebagai baris pertama:
#!/bin/sh
Ini menginstruksikan sistem untuk menggunakan shell sh
untuk mengeksekusi skrip. Apakah Anda benar-benar memiliki cangkang kuno itu di mesin Anda, dan apakah cangkang itu digunakan untuk menjalankan skrip Anda? Perintah which
akan memberi tahu kami program mana yang benar-benar berjalan saat Anda mengetikkan perintah.
Mari kita lihat apa yang berjalan saat Anda mengetik sh
:
yang mana
Ini tampaknya menemukan biner. jika kita menggali sedikit lebih dalam, kita akan melihat bahwa itu adalah tautan simbolis yang sebenarnya menunjuk ke dash
, shell ringan yang digunakan untuk mengeksekusi skrip:
ls -l /bin/sh
Itu cara yang rapi dan ringan untuk menyediakan jaring pengaman bagi skrip yang berharap menemukan sh
pada sistem modern.
Memasang Shell Lain
Mari instal cangkang fish
dan atur sebagai default untuk dave
. Di Ubuntu, kita ketik perintah berikut:
sudo apt-get install ikan
Di Manjaro, gunakan pacman
:
sudo pacman -Sy ikan
Di Fedora, ketik berikut ini:
sudo dnf instal ikan
Ketika instalasi selesai, Anda dapat memeriksa shell yang diinstal sekali lagi:
cat /etc/shells
Shell baru kami muncul sebagai /usr/bin/fish
. Catat jalur itu—Anda akan membutuhkannya segera.
Variabel Lingkungan $SHELL
Variabel lingkungan $SHELL
menyimpan nama shell Anda saat ini. Kami dapat memeriksa yang mana yang disetel dengan echo
:
gema $SHELL
Mari kita mulai cangkang fish
:
ikan
Sekarang, mari kita periksa lagi apa yang dikatakan variabel lingkungan $SHELL
:
gema $SHELL
Pertama kali kita menggunakan echo $SHELL
, kita berada di bash
shell. Variabel lingkungan menyimpan path ke bash
yang dapat dieksekusi, /bin/bash
.
Saat kami meluncurkan cangkang fish
, kami mendapatkan pesan selamat datang yang ramah dan command prompt berubah. Yang mungkin mengejutkan adalah lingkungan $SHELL
masih menyimpan jalur ke bash
yang dapat dieksekusi, /bin/bash
. Tidak apa-apa—ini normal.
Saat Anda meluncurkan shell baru (atau program lain), shell tersebut mewarisi lingkungan shell induk. Jadi, cangkang fish
mewarisi variabel lingkungan global dan yang diekspor dari cangkang bash
. Karena nilai dalam variabel lingkungan $SHELL
belum diubah, ia memiliki nilai yang sama di kulit fish
seperti di bash
shell.
Kami menjalankan fish
seperti program lainnya. Kita juga bisa menggunakan exit
untuk keluar dari cangkang fish
. Itu menutup seperti program lain, dan kami kembali ke bash
shell.
Itu bagus untuk mencoba cangkang baru, melihat apa yang bisa mereka lakukan, dan apakah Anda cocok dengan mereka. Anda dapat menjelajah sebelum melakukan lompatan dan mengadopsinya sebagai cangkang pilihan Anda.
Jika Anda memutuskan untuk menjadikan fish
—atau cangkang lainnya—sebagai default, Anda harus menggunakan perintah chsh
.
Perintah chsh
Perintah chsh
memungkinkan Anda untuk mengubah shell default Anda. Triknya adalah menyadari bahwa ini memungkinkan Anda untuk mengubah login default dan shell interaktif default. Anda mungkin ingin mengubah satu atau yang lain, atau keduanya.
Setiap kali Anda masuk untuk mendapatkan prompt perintah, Anda menggunakan shell yang dikonfigurasi untuk menjadi shell login Anda. Ketika Anda sudah masuk dan membuka jendela terminal, Anda menggunakan shell yang dikonfigurasi untuk menjadi shell interaktif Anda. Ini bisa berupa cangkang yang sama atau berbeda.
Untuk mengatur shell login Anda, gunakan chsh
tanpa parameter:
chsh
Anda dimintai kata sandi. Kemudian, Anda harus mengetikkan path ke shell baru dan tekan Enter.
Jika kita membuat koneksi jarak jauh ke komputer uji ini dari komputer lain, kita akan menemukan diri kita berada dalam cangkang fish
setelah kita masuk.
Untuk mengubah shell interaktif Anda, gunakan chsh
dengan opsi -s
(shell). Lewati jalur ke shell baru di baris perintah:
chsh -s /usr/bin/fish
Anda dimintai kata sandi dan kembali ke prompt perintah shell Anda saat ini. Anda harus keluar dan masuk kembali agar perubahan diterapkan. Ketika Anda melakukannya, Anda akan melihat salam dan prompt perintah cangkang fish
.
Variabel lingkungan $SHELL
sekarang menyimpan jalur ke shell default baru Anda:
gema $SHELL
Mengubah Shell Akun Pengguna Lain
Jika Anda memiliki hak akses root dan dapat menggunakan sudo
, Anda dapat mengubah shell akun pengguna lain. Perintahnya sama seperti sebelumnya, dengan penambahan nama pengguna orang itu ditambahkan ke baris perintah:
sudo chsh -s /usr/bin/fish mary
Ketika mary
selanjutnya masuk, dia akan melihat shell baru ketika dia membuka jendela terminal.
Semua Orang Punya Favorit
Selama Anda merasa nyaman dengan cangkang pilihan Anda, dan itu cocok untuk Anda, itu bagus! Ingat saja, itu harus dapat menjalankan skrip umum, seperti rutinitas instalasi. Untuk cangkang yang disebutkan di sini, ini seharusnya tidak menjadi masalah.
Tentu saja, Anda juga dapat mengunduh dan memasang shell baru, dan membawanya untuk uji coba tanpa membuat perubahan konfigurasi apa pun pada komputer Anda. Saat Anda siap untuk mengikat simpul, chsh
akan melakukan upacara untuk Anda.
Perintah Linux | ||
File | tar · pv · cat · tac · chmod · grep · diff · sed · ar · man · pushd · popd · fsck · testdisk · seq · fd · pandoc · cd · $PATH · awk · join · jq · fold · uniq · journalctl · tail · stat · ls · fstab · echo · less · chgrp · chown · rev · look · strings · ketik · ganti nama · zip · unzip · mount · umount · install · fdisk · mkfs · rm · rmdir · rsync · df · gpg · vi · nano · mkdir · du · ln · patch · konversi · rclone · rusak · srm | |
Proses | alias · layar · atas · bagus · renice · kemajuan · strace · systemd · tmux · chsh · sejarah · di · batch · gratis · yang · dmesg · chfn · usermod · ps · chroot · xargs · tty · pinky · lsof · vmstat · batas waktu · dinding · ya · bunuh · tidur · sudo · su · waktu · groupadd · usermod · grup · lshw · shutdown · reboot · hentikan · matikan · passwd · lscpu · crontab · tanggal · bg · fg | |
Jaringan | netstat · ping · traceroute · ip · ss · whois · fail2ban · bmon · dig · finger · nmap · ftp · curl · wget · who · whoami · w · iptables · ssh-keygen · ufw |
TERKAIT: Laptop Linux Terbaik untuk Pengembang dan Penggemar