linux

Linux Shell Değiştirme

Dec 13, 2020 < 1 min

Linux Shell Değiştirme

Bu makalede, Linux’ta bir kullanıcının kabuğu (shell) nasıl değiştirileceğini açıklayacağım. 

İşletim sisteminde yüklü tüm shell’leri görüntüleme /etc/shells klasöründeki dosyaları görüntüleyebiliriz. Bunun için cat komutu ile aşağıdaki ifadeyi komut satırınıza yazınız.

cat /etc/shells

Bu komutun çıtısı aşağıdaki gibi olacaktır.

alikemal@pop-os:/bin$ cat /etc/shells 
# /etc/shells: valid login shells
/bin/sh
/bin/bash
/usr/bin/bash
/bin/rbash
/usr/bin/rbash
/bin/dash
/usr/bin/dash

Kullanıcı giriş bilgileri linux’da /etc/passwd dosyasında tutulur. Bir kullanıcının kullandığı shell’i görüntülemek için bu dosyayı kullanabiliriz. /etc/passwd dosyasının her satırı virgülle ayrılmış yedi alan içerir. Son alanda ise kullandığı login shell yer alır.

mark:x:1001:1001:mark,,,:/home/mark:/bin/bash
[--] - [--] [--] [-----] [--------] [--------]
|    |   |    |     |         |        |
|    |   |    |     |         |        +-> 7. Login shell
|    |   |    |     |         +----------> 6. Home directory
|    |   |    |     +--------------------> 5. GECOS
|    |   |    +--------------------------> 4. GID
|    |   +-------------------------------> 3. UID
|    +-----------------------------------> 2. Password
+----------------------------------------> 1. Username

Kullanmış olduğum linux pop!_os işletim sisteminde kullanıcı alikemal ‘in kullandığı default shell’e bakalım.

# cat /etc/passwd | grep alikemal
alikemal:x:1000:1000:Ali Kemal,,,:/home/alikemal:/bin/dash

Görüdüğünüz gibi son kısımda /bin/dash ifadesiyle dash shell kullandığım gözükmektedir.

Kullanıcının kullandığı shell’i değiştirmek için usermod komutu kullanılır. Usermod komutu bir kullanıcının bilgilerinde değişiklik yapmak için kullanılır.

usermod --shell /bin/sh username

İkinci bir yöntem ise chsh komutu ile yapılabilir.

chsh --shell /bin/bash username

sudo vi /etc/passwd veya sudo vipw komutları ile /etc/passwd doğrudan düzenlebiliriz. Fakat burada dikkat edilmesi gereken şey passwd dosyasıdna yacağınız en küçük hata sisteminize önemli zararlar verebilir. O nedenle bu gibi tehlike arz eden durumlarda işlevi doğrudan yapan komutlar tercih edilebilir.

Your email address will not be published. Required fields are marked *