Linux'ta Varsayılan Kabuğunuzu chsh ile Nasıl Değiştirirsiniz

Yayınlanan: 2022-01-29
Ubuntu tarzı bir Linux dizüstü bilgisayar sisteminde stilize edilmiş bir kabuk istemi.
Fatmawati Achmad Zaenuri/Shutterstock

Bash, tek Linux kabuğu değildir. Çok popüler olan Zsh gibi diğer mermileri denemek kolaydır. Beğendiğiniz birini bulduğunuzda, onu varsayılan kabuğunuz yapmak için chsh komutunu kullanın. Size nasıl olduğunu göstereceğiz.

Kabuk Neden Önemlidir?

Kabuk, sizinle işletim sistemi arasında oturur. Komutları yazmanıza ve programları çalıştırmanıza izin veren bir terminal penceresi içindeki ortamı sağlar. Kabuk, girişinizi kontrol eder ve ne istediğinizi bulur. Teklifinizi kendisi gerçekleştirebiliyorsa, bunu yapar. Dışarıdan yardıma ihtiyacı olursa, yolunu arar ve istediğiniz her şeyi yapabilecek programları bulur.

Linux'ta birçok farklı kabuk mevcuttur. Hepsi aynı temel görevleri gerçekleştirmenize izin verir: dosya sistemini keşfetme, dosyalarla çalışma, programları başlatma ve komut dosyalarını çalıştırma. Ancak, her biri bu görevleri kendi yöntemleriyle yerine getirir ve kendine özgü özellikleri ve özellikleri vardır.

Kabuklar, şeylerin belirli bir şekilde davranmasını isteyen insanlar tarafından tasarlanma eğilimindedir. Düşünceniz o tasarımcınınkiyle uyumluysa, o kabuk sizin için uygun olabilir. Ayrıca, Linux'ta yeni bir kabuk denemek kolaydır.

Ubuntu dahil çoğu Linux dağıtımında, varsayılan kabuk bash . Harika bir iş çıkarıyor ve çok yetenekli. Ancak başka bir kabuk, iş akışınız üzerinde büyük etkisi olacak, zaman kazandıran bir fark sunabilir. Bakmazsan asla bilemezsin!

İLGİLİ: ZSH Nedir ve Neden Bash Yerine Kullanmalısınız?

bir kova dolusu kabuk

Farklı Linux kabuklarını daha önce ele aldık, ancak işte en yaygın olanlara hızlı bir giriş:

  • bash: Bourne kabuğu birçok dağıtımda varsayılandır.
  • rbash: Bu Kısıtlı bash kabuğu, içinde çalışan kişi veya komut dosyasına minimum işlevsellik sağlar.
  • kül: Almquist kabuğu, bash'ın daha hafif bir versiyonudur.
  • tire: Debian Alquist Shell, Ubuntu'daki varsayılan kabuk betiğidir. bash varsayılan oturum açma ve etkileşimli kabuk olsa da, sistem işlemlerini çalıştırmak için dash kullanılır çünkü bash çok daha hafiftir.
  • zsh: Z kabuğu, kabukların bash ailesinin modern bir yorumudur. Komut yazım denetimleri ve önerilen düzeltmeler gibi düzgün iyileştirmeler sunar.
  • balık: Bu dostça etkileşimli kabuk, sıfırdan yazılmıştır ve diğer kabuk ailelerinden türetilmemiştir. Kullanıcı dostu olması amaçlanmıştır. Diğer birçok avantajının yanı sıra, balık, tahmini metne benzer şekilde geçmişinize ve geçerli klasörün içeriğine dayalı olarak komutlar için öneriler sunar.
  • ksh: KornShell, özellikle güçlü bir betik dili sağlar.

İLGİLİ: Bash, Zsh ve Diğer Linux Kabukları Arasındaki Fark Nedir?

Kurulu Kabukları Listeleyin

Bilgisayarınızda hangi kabukların kurulu olduğunu görmek için bu komutu kullanın. /etc/shells dosyasının içeriğini listeler:

 kedi /etc/kabuklar 

bash , dash ve rbash bahsettik ama sh nedir?

sh , 1971'de Bell Labs şöhretinden Ken Thompson tarafından yazılan Thompson kabuğudur. Artık korunmuyor ve uzun zamandan beri modern mermiler tarafından yerini aldı. Yalnızca, hala ilk satırları aşağıdakilere sahip olan eski komut dosyalarıyla uyumluluğu korumak için dahil edilmiştir:

 #!/bin/sh

Bu, sisteme komut dosyasını yürütmek için sh kabuğunu kullanma talimatı verir. Makinenizde gerçekten o eski kabuğa sahip misiniz ve komut dosyalarınızı çalıştırmak için kullanılıyor mu? which komut, bir komut yazdığınızda hangi programın gerçekten çalıştığını bize söyleyecektir.

sh yazdığınızda nelerin çalıştığını görelim:

 hangi sh

Bu bir ikili dosya buluyor gibi görünüyor. yine de biraz daha derine inersek, bunun aslında komut dosyalarını yürütmek için kullanılan hafif kabuk olan dash işaret eden sembolik bir bağlantı olduğunu göreceğiz:

 ls -l /bin/sh 

Bu, modern sistemlerde sh bulmayı bekleyen komut dosyaları için bir güvenlik ağı sağlamanın temiz ve hafif bir yoludur.

Başka Bir Kabuk Yükleme

fish kabuğunu kuralım ve dave için varsayılan olarak ayarlayalım. Ubuntu'da aşağıdaki komutu yazıyoruz:

 sudo apt-get install balık 

Manjaro'da pacman kullanın:

 sudo pacman -Sy balığı 

Fedora'da aşağıdakini yazın:

 sudo dnf balık yükle 

Reklamcılık

Kurulum tamamlandığında, kurulu kabukları bir kez daha kontrol edebilirsiniz:

 kedi /etc/kabuklar 

Yeni kabuğumuz /usr/bin/fish olarak görünüyor. Bu yola dikkat edin; kısa süre içinde buna ihtiyacınız olacak.

$SHELL Ortam Değişkeni

$SHELL ortam değişkeni, mevcut kabuğunuzun adını tutar. Hangisine ayarlandığını echo ile kontrol edebiliriz:

 yankı $ KABUK

fish kabuğuna başlayalım:

 balık

Şimdi $SHELL ortam değişkeninin ne dediğini tekrar kontrol edelim:

 yankı $ KABUK 

echo $SHELL ilk kullandığımızda, bash kabuğundayız. Ortam değişkeni, /bin/bash bash yürütülebilir dosyasının yolunu tutar.

Reklamcılık

fish kabuğunu başlattığımızda, samimi bir karşılama mesajı alıyoruz ve komut istemi değişiyor. Şaşırtıcı olabilecek şey, $SHELL ortamının hala yürütülebilir bash /bin/bash yolunu tutmasıdır. Sorun değil - bu normal.

Yeni bir kabuk (veya başka bir program) başlattığınızda, ana kabuğun ortamını devralır. Bu nedenle, fish kabuğu, bash kabuğundan global ve dışa aktarılan ortam değişkenlerini devralır. $SHELL ortam değişkenindeki değer değiştirilmediğinden, fish kabuğunda bash kabuğunda yaptığı değerle aynı değere sahiptir.

Diğer programlar gibi fish çalıştırıyoruz. fish kabuğundan exit için de çıkış kullanabiliriz. Diğer herhangi bir program gibi kapanır ve bash kabuğuna geri döneriz.

Bu, yeni mermileri denemek, ne yapabildiklerini ve onlarla iyi geçinip geçinemediğinizi görmek için harika. Atlamayı yapmadan önce keşfedebilir ve birini merminiz olarak kabul edebilirsiniz.

fish - veya başka bir kabuğu - varsayılanınız yapmaya karar verirseniz, chsh komutunu kullanmanız gerekir.

chsh Komutu

chsh komutu, varsayılan kabuğunuzu değiştirmenize izin verir. İşin püf noktası, hem varsayılan oturum açma hem de varsayılan etkileşimli kabukları değiştirmenize izin verdiğini bilmektir. Birini veya diğerini veya her ikisini de değiştirmek isteyebilirsiniz.

Reklamcılık

Bir komut istemi almak için her oturum açtığınızda, oturum açma kabuğunuz olarak yapılandırılmış kabuğu kullanırsınız. Halihazırda oturum açtığınızda ve bir terminal penceresi açtığınızda, etkileşimli kabuğunuz olarak yapılandırılmış kabuğu kullanırsınız. Bunlar aynı veya farklı kabuklar olabilir.

Giriş kabuğunuzu ayarlamak için parametresiz chsh kullanın:

 chsh 

Parolanız istenir. Ardından, yeni kabuğun yolunu yazmalı ve Enter tuşuna basmalısınız.

Bu test bilgisayarına başka bir bilgisayardan uzaktan bağlantı yaparsak, giriş yaptıktan sonra kendimizi fish kabuğunda buluruz.

Etkileşimli kabuğunuzu değiştirmek için -s (kabuk) seçeneğiyle chsh kullanın. Komut satırında yeni kabuğa giden yolu iletin:

 chsh -s /usr/bin/balık 

Parolanız istenir ve mevcut kabuğunuzun komut istemine dönersiniz. Değişikliğin geçerli olması için oturumu kapatıp tekrar açmanız gerekir. Bunu yaptığınızda, selamlamayı ve fish kabuğu komut istemini göreceksiniz.

Reklamcılık

$SHELL ortam değişkeni artık yeni varsayılan kabuğunuzun yolunu tutar:

 yankı $ KABUK 

Başka Bir Kullanıcı Hesabının Kabuğunu Değiştirme

Kök ayrıcalıklarınız varsa ve sudo kullanabiliyorsanız, diğer kullanıcı hesaplarının kabuklarını değiştirebilirsiniz. Komut, o kişinin kullanıcı adının komut satırına eklenmesiyle öncekiyle aynıdır:

 sudo chsh -s /usr/bin/fish mary 

mary bir sonraki oturum açtığında, bir terminal penceresi açtığında yeni kabuğu görecek.

Herkesin Sevdiği Vardır

Kabuk seçiminiz konusunda rahat olduğunuz ve işinize yaradığı sürece, bu harika! Unutmayın, kurulum rutinleri gibi genel komut dosyalarını çalıştırabilmelidir. Burada bahsedilen mermiler için bu bir sorun olmamalı.

Tabii ki, ayrıca yeni bir kabuk indirip kurabilir ve bilgisayarınızda herhangi bir yapılandırma değişikliği yapmadan bir test sürüşüne çıkabilirsiniz. Düğümü atmaya hazır olduğunuzda, chsh töreni sizin için yapacak.

İLGİLİ: Geliştiriciler ve Meraklılar için En İyi Linux Dizüstü Bilgisayarlar