Bir AWS örneğindeki varsayılan kabuğumu nasıl değiştiririm?


121

Amazon EC2 örneklerinde kabuğumu varsayılan bash kabuğundan zsh olarak değiştirmek istiyorum. Bunu nasıl yapacağım? Teşekkürler!

Yanıtlar:


159

chshKomutu kullanmayı deneyin .

Örneğin

chsh -s / bin / zsh

Zsh'nin konumunu çalıştırarak whereis zshveya alternatif olarak yalnızca çalıştırarak onaylayabilirsiniz.

chsh -s $ (hangi zsh)

Giriş yaptığınızdan farklı bir kullanıcı hesabının kabuğunu değiştirmek istiyorsanız, root olarak çalıştırmanız gerekir, böylece john'un kabuğunu değiştirmek için şunları yapın:

sudo chsh -s $ (hangisi zsh) john

Değişikliğin yürürlüğe girmesi için oturumu kapatıp tekrar açmanız gerekeceğini unutmayın. Gnome veya başka bir pencere yöneticisi kullanıyorsanız, o oturumdan tamamen çıkmanız gerekir - terminalinizi kapatmak ve açmak yeterli değildir.


Bunu denedim ama kök kullanıcı ile !! AMI Resmimde kök yerine ubuntu var. Kabuğu değiştirmek için ubuntu kullanıcısına geçmek zorunda kaldım! Ipucu için teşekkürler :)
Shripad Krishna

3
@Paddy root iseniz çalıştırarak başka bir kullanıcı için değiştirebilirsiniz chsh -s /bin/zsh username.
John T.

Müthiş :) Çok daha kolay. Bu bilgi için de teşekkürler.
Shripad Krishna

3
@Biz Dünyayız: / usr / local / bin / zsh komutunu / etc / shells dizinine yeni bir satır olarak eklemeniz gerekir
Nate Parsons

5
Hafifçe farklı bir versiyon kullanıyorumsudo chsh -s $(which zsh) $(whoami)
SergioAraujo

20

/ Etc / passwd dosyasını açın:

sudo vi /etc/passwd

Kullanıcı adınızı içeren satırı bulun:

username:x:1634231:100:Your Name:/home/username:/bin/bash

ve bash'ı zsh ile değiştirin:

username:x:1634231:100:Your Name:/home/username:/bin/zsh

Değişikliklerin geçerli olması için oturumu kapatıp tekrar oturum açın.


6
Kullanması daha iyi chsh, ancak gerçekten/etc/passwd el ile düzenleme yapacaksanız , en azından vipwkomutu kullanın.
Valmiky Arquissandas,

Makinemde chsh yok. Ayrıca, tuhaf bir nedenden dolayı / etc / passwd dosyam varsayılan dosya tarafından düzenli olarak değiştiriliyor. Bunun neden olabileceğini biliyor musun?
Georgii Oleinikov 14:14

/ Etc / passwd 'a dokunmayın. Passwd aracıyla uğraşmayı gerektirmeyen bunu yapmanın daha iyi yolları var!
Andrew,

5

Ubuntu'da, GNOME terminalinin içinde, chsh ile değişiklik yapmak beklenen etkiyi yaratmayacak ...

Bu sorunu aşmak için şunu yapın:

  • Terminalde sağ tıklayın
  • Profiller -> Profil Tercihleri
  • "Başlık ve Komut" sekmesi altındaki "Kabuğum yerine özel bir komut çalıştır" seçeneğini işaretleyin ve zsh çalıştırılabilirinin yolunu belirtin.
  • Terminali yeniden başlatın.

Barış.

Not: Mesaj göndermek için 10 itibara sahip değilsiniz, bu yüzden tüm mesaj talimatları. :)


Artık ihtiyacın olan temsilcin var. : P
pradyunsg

5

Buraya daha fazla bilgi eklemek için geldim. Eğer sorun varsa ne zaman yüklemek zsh içinde Amazon Linux AMI çalıştırdığınızda gibi Amazon tarafından:

sudo chsh $(which zsh) : // chsh command not found

O zaman util-linux kullanıcısını kurmalısınız :

sudo yum install util-linux-user

(varsayılan olarak Amazon Linux AMI'de sadece lchsh bulunur , ancak nasıl çalıştığını çözemiyorum ).

Sonra aşağıdaki komutu çalıştırın, çalışması gerekir:

sudo chsh -s $(which zsh) $(whoami)

0

Tek çizgi

sudo chsh -s $(which zsh) $(whoami)

Ekstra Bilgi: Bundan sonra muhtemelen bu olanları yapmak isteyeceksiniz

git clone https://github.com/zdharma/fast-syntax-highlighting.git \
  ~/.oh-my-zsh/custom/plugins/fast-syntax-highlighting

git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

nano ~/.zshrc 

plugins = (git) plug-in'e () şöyle zsh-autosuggestions & zsh-syntax-vurgulayarak ekle

eklentileri = (git zsh-autosuggestions hızlı sözdizimi vurgulaması)

source ~/.zshrc
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.