Bir etki alanı hesabındaki varsayılan kabuğumu nasıl değiştiririm


13

Dizüstü bilgisayarımda oturum açmak için bir samba4 etki alanı hesabı kullanıyorum. Denemek istediğim zshdışarı ama benim kullanıcı ikamet etmediğinden /etc/passwdbunu buldum chshbenim kullanıcıyı bulamıyorum. Herkes benim nasıl değiştirebilir tavsiye edebilir login_shellmisiniz?

İçimde hiçbir şey göremedim ldap.conf, nssswitch.confya /etc/pam.dda yardım eden hiçbir şey ...

Etki alanı denetleyicisine baktığımda belki samba aracını kullanabileceğimi düşündüm, ama bana doğru yönde işaret eden hiçbir şey görmedim ...

Yanıtlar:


24

Bu konuda Freenode # suse kanalında sordum ve Miuku Arul ile aynı önerdi, ancak iki şeyden bahsetti, eğer bir Windows etki alanı kullanıyor olsaydım loginShell özniteliğini ayarlayabilirdim.

Ne yazık ki, samba alan adındayım, bu yüzden yardımcı olmadı. Ancak son önerisi mükemmeldi, çıktısını alın:

getent passwd USERNAME

Bu, / etc / passwd içindeki kullanıcınız için geçerli giriş eşdeğerine sahip olacak, bunu alacak, / etc / passwd dosyasına yapıştıracak ve kullanmak istediğiniz kabuğun geçerli yolu için kabuğu güncelleyecektir. Bu şekilde tüm kullanıcılar için değişmez ve değişikliği yapmadan önce kabuğun bunu yapılandırdığınız makinede olduğundan emin olabilirsiniz.


Kopyalayıp yapıştırmak istemiyorsanız, şunları kullanabilirsiniz: getent passwd `id -un` | sudo tee -a /etc/passwd. Tüm kabuklarda çalışıp çalışmadığından emin değilim ama en azından bash ve tcsh tamam.
Tom Saleeba

Bunu bir Windows AD etki alanına bağlı bir RHEL 7 kutusunda yapmak, satır / etc / passwd dosyasından kaldırılana kadar sunucudan kilitlenmeme neden oldu ...
Taegost

@Taegost bilgi için teşekkürler, RHEL
Rumbles

5

Ben de aynı sorunu yaşadım. Etki alanımdaki tüm makinelerde zsh yüklü olmadığından ve tüm kullanıcıları etkilemek istemediğim için, .bashrc'yi ekledim:

if [ -x /usr/bin/zsh ]; then
  echo 'starting zsh'
  # export SHELL=/bin/zsh #edit: this is probably not what you want, see the comment.
  exec /usr/bin/zsh
fi

Bu yetersiz olabilir, ama en azından işi hallediyor.


İşimde biri yakın zamanda benzer bir şey yapıyordu. Metodunuzun bu açıdan işe yarayıp yaramayacağını bilmiyorum, denediniz mi? Ayrıca, SHELL değişkeniniz zsh bininize giden yolla aynı değildir, doğru mu?
Yapılarını

İlginç - .zshrc dosyam doğru okundu. ikinci noktanız hakkında, onu büyüttüğünüz için teşekkürler, bu benim tarafımdan bir hataydı. Yanıt için buraya bakın: unix.stackexchange.com/questions/330233/…
Matteo Giani

Peki bunu yapmanın kesinlikle bir yolu, hala bash'ı çağırmamanız gibi kabul edilen cevabımda olduğu gibi / etc / passwd dosyasında ayarlamayı tercih ediyorum, sonra bash ile zsh yükleyin (artı sanırım ctrl-D'ye basarsanız kurulumunuz bir bash kabuğuna düşüyor musunuz?) - Kullanıcının
zsh'ın

Kabuk işlemini kabuk işlemi ile değiştirmek /usr/bin/zshyerine kullanmak yerine daha iyi olmaz mıydı ? exec /usr/bin/zshbashzsh
Tripp Kinetics

Bence @TrippKinetics haklı olabilirsin.
Matteo Giani

2

Samba etki alanı denetleyicisi yapılandırmasını düzenleme erişiminiz varsa, smb.conf dosyasında kabuğu ayarlamanıza izin veren aşağıdaki özelliği ayarlayabilirsiniz

template shell    = /bin/zsh

Zsh yüklü olmayan bir makinede oturum açarsanız ne olacağından emin değilim (tüm dağıtımların varsayılan olarak zsh yüklü olmaması gerekir), ancak tahminim distro varsayılan kabuğunu çağırmasıdır.

Sadece denemek istiyorsanız, sadece zaten bildiğinizden emin olduğum bir alt kabuk almak için zsh yazın.


Teşekkürler, ancak bu sadece benim değil tüm kullanıcıları etkilemez mi?
gürlüyor

Evet, tüm kullanıcıları etkileyen global bir parametredir. Bu durumda, zshyüklemiş olan tüm kullanıcılar . Bunu belirli bir kullanıcıyla sınırlayabileceğinizden emin değilim, ancak bunu idmap uidyapmanıza izin verebilecek parametreyi kontrol ederim.
Arul Selvan

Teşekkürler, ama peşinde olduğum şey bu değil. Herkesin kabuğunu değiştirmek istemiyorum, sadece kabuğumu değiştirmek istiyorum. Bu ayarı yerel smb.conf
dosyamda
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.