Temel bash Kabuk Komutları-1
- Huseyin Şahan
- 2 Mar
- 4 dakikada okunur
Bu blogumuzda popüler bir kabuk türü kullanacağız.Bu blogumuzda GNU bash kabuğunu kullanarak komutlarımızı çalıştıracağız.Benim kullanacağım linux dağıtımı ise Debian olacaktır.Uzatmadan ilk konumuza giriş yapalım.
Linux Kabuk Başlatma
GNU Bash kabuğu linux sistemine etkileşimli erişim sağlayan bir programdır.Bir kullanıcı terminalde oturum açtığında başlatılır.Ancak başlattığınız kabuk türü bazı yapılandırmalara bağlıdır.Kabuk bu yapılandırmalara bağlıdır.Örneğin /etc/passwd dosyasını inceleyelim.Şimdilik buradaki değerlerin ne anlama geldiğini anlamaya çalışmayın.Bunları Linux güvenliği kısmında detaylı olarak ele alacağız.Şimdilik hangi kabuk türü ile başlatıldığına bakın.Şu komutu girin:
darkside@debian:~$ cat /etc/passwd
Aşağıda örnek bir ekran çıktısı yer alıyor:

Sondaki değerlere bakın.Bunlar hangi kullanıcının hangi kabuğu kullandığını gösteriyor.Eğer bir kullanıcının kabuğu /usr/sbin/nologin veya /bin/false olarak ayarlanmışsa, bu kullanıcının normal bir terminal oturumu açması engellenmiştir.
Gördüğünüz gibi root kullanıcı bash kabuğunu kullanıyor.Yani kabuğu root olarak giriş yaparsanız kabuk türünüz bash olarak belirlenmiş.
Eğer sanal konsol(TTY)dan giriş yaparsanız doğrudan komut ekranı karşınıza çıkacaktır.Bu yöntemin herhangi bir grafik arayüzüne ihtiyacı yoktur.Ancak GNOME yada KDE gibi bir grafik arayüzü kullanıyorsanız ve buradan konsola erişmek istiyorsanız.Sisteminizdeki konsol emulatörünü başlatmanız gereklidir.
Zaten grafik arayüzündeki terminali nasıl kullanacağınız biliyorsunuzdur.Ancak sanal konsol ile başlatma yapmak için iki yöntem uygulayabilirsiniz. init komutunu kullanarak bu işlemi yapabilirsiniz.Eğer komutu nasıl kullanacağınızı bilmiyorsanız:
yazımızı inceleyin.
Diğer bir yöntem ise CTRL + ALT + F1-F6 kombinasyonudur.Bu şekilde farklı başlatma seviyelerinde TTY oturumunu başlatarak kendinizi grafik arayüzünden soyutlayabilirsiniz.
Man Komutu kullanımı
Man komutu linux komutları hakkında bilgi almak için yazılmış referanslardır.Burada komutlar detaylı anlatımla verilmez.Teknik terimleri fazlaca içerir.Bu biraz kafa karıştırıcı olabilir.Örneğin:
darkside@debian:~$ man ls
Bu komut ls komutunun man sayfalarını gösterecektir.Ancak burada man komutu less sayfa görüntüleme aracı kullanacaktır.Ama biz bunu değiştirebiliriz.Burada less aracı hem aşağı hemde yukarı gidilmesini sağlarken more görüntüleme aracı ise sadece aşağı gitmenize olanak sağlar.İşte terminalde şu komutu yazarak geçici olarak more ile man komutunu başlatabilirsiniz:
darkside@debian:~$ export PAGER=more
Burada artık sayfa görüntüleme aracı olarak more kullandık.Terminalinizde şu komutu girerek hangi görüntüleme aracınızı kullandığınızı görebilirsiniz:
darkside@debian:~$ echo $PAGER
Tamam artık istediğiniz gibi terminalde PAGER değişkenini ayarlayarak terminalin sayfa görüntüleme aracını değiştirmiş olduk.Terminal değişkenlerine daha sonra değineceğiz ve detaylıca açıklayacağız.Şimdilik sadece man aracının görüntüleme tarzını değiştirmeyi öğrendik.
Eğer bir komutun ismini hatırlamıyorsanız bir anahtar kelime ile arama yapabilirsiniz.Örnek bir komut işte:
darkside@debian:~$ man -k terminal
Bu komut size terminal anahtar kelimesi ile alakalı komutları verecektir.
Man sayfaları Bölüm Alanları
Man sayfalarında her bölüm belirli bir içeriği temsil eder ve bu bölümlerin her birinin bir numarası vardır.Man komutlarında bu bölümleri belirterek o bölüm içinde yer alan man sayfasını elde edebiliriz.İşte bölüm tablosu:
Bölüm Numarası | Alan İçeriği |
1 | Çalıştırılabilir programlar veya kabuk komutları |
2 | Sistem çağrıları (system calls) |
3 | Kütüphane çağrıları (library calls) |
4 | Özel dosyalar (special files) |
5 | Dosya formatları ve konvansiyonlar (file formats and conventions) |
6 | Oyunlar (games) |
7 | Genel bakışlar, konvansiyonlar ve çeşitli bilgiler (overviews, conventions, and miscellaneous) |
8 | Süper kullanıcı ve sistem yönetimi komutları (super user and system administration commands) |
9 | Kernel rutinleri (kernel routines) |
man komutu varsayılan olarak bölüm 1'i hedef alır ve çalıştırılabilir dosyaları ve bölümler için man sayfasını gösterir.Ancak her zaman bu sayfalar bölüm 1 'de bulunmayabilir yada bulunsa bile diğer bölümlerde de bulunuyor olabilir.Bunu örnek bir komut ile anlatalım.Örneğin chmod komutunu ele alalım.
Örneğin kullanıcı komutu olarak kullandığımız chmod komutunun man sayfasını okumak için:
darkside@debian:~$ man 1 chmod
Komutunu görebilirsiniz.Ancak chmod komutunun C programlama dili ile nasıl çekirdek ile etkileşime geçtiğini ve komutlarını bu komut ile:
darkside@debian:~$ man 2 chmod
görebilirsiniz.
Şimdi blogumuzda linux dosya yapısını anlatalım ve blogumuzu bitirelim.
Linux Dosya ve Dizinleri
Burada dosya ve dizinleri temel olarak açıklamak gerekirse:
Dizin | Kullanım Amacı | Açıklama |
/root | Root kullanıcısının ev dizini | Sistem yöneticisinin (root) kişisel dosyalarını saklamak için kullanılır. Diğer kullanıcılar bu dizine erişemez. |
/bin | İkili dosyalar (binary files) ve temel sistem komutları | Günlük kullanımda ihtiyaç duyulan komutlar burada bulunur. Örneğin: ls, cp, mv. Sistem başlatıldığında gerekli olan komutlar burada saklanır. |
/boot | Önyükleme (boot) dosyaları | Sistem başlatıldığında kullanılan çekirdek (kernel) ve başlangıç dosyaları burada yer alır. |
/dev | Cihaz dosyaları (device files) | Linux, tüm donanım cihazlarını burada dosya olarak temsil eder. Örneğin, diskler, klavye, yazıcılar ve ağ cihazları burada bulunur. |
/etc | Sistem yapılandırma dosyaları (configuration files) | Sistem ayarları ve yapılandırma dosyaları burada yer alır. Örneğin: kullanıcı bilgileri, ağ ayarları, uygulama yapılandırmaları vb. |
/home | Kullanıcı dizinleri (home directories) | Her kullanıcının kişisel dosyalarını sakladığı dizindir. Örneğin: /home/username. |
/lib | Sistem ve uygulama kütüphaneleri (system and application libraries) | Burada, sistemin çalışabilmesi için gerekli olan dinamik kütüphaneler ve uygulama kütüphaneleri bulunur. |
/media | Çıkarılabilir medya (removable media) bağlama noktası | USB bellekler, CD'ler, DVD'ler ve diğer çıkarılabilir medya cihazlarının takıldığı yerdir. |
/mnt | Geçici bağlama noktaları (mount points) | Geçici olarak bağlanmış dosya sistemlerinin noktalarıdır. Genellikle çıkarılabilir medya veya ağ üzerinden bağlanan dosya sistemleri için kullanılır. |
/opt | Seçenekli yazılımlar ve üçüncü parti yazılım paketleri | Üçüncü parti yazılımlarının ve uygulamalarının kurulumları için kullanılır. Bu dizin genellikle sistem dışında olan yazılımları barındırır. |
/proc | İşlem bilgileri ve donanım verisi | Çalışan süreçler ve donanım hakkında bilgi içeren sanal bir dosya sistemidir. Örneğin, işlem bilgileri, bellek kullanımı gibi sistem verileri burada bulunur. |
/sbin | Yönetici seviyesindeki ikili dosyalar (admin-level binaries) | Sistem yönetimi için kullanılan komut dosyaları ve araçlar burada bulunur. Örneğin: ifconfig, fdisk, reboot. |
/run | Sistem çalışırken kullanılan geçici veriler | Sistemin çalışması sırasında tutulan geçici veriler burada saklanır. Örneğin, çalışan süreçler hakkında bilgi veya sistemin başlatılmasından sonra geçici dosyalar. |
/srv | Yerel hizmetlerin verilerini saklamak için kullanılan dizin | Web servisleri veya veritabanı servisleri gibi, sistemdeki yerel hizmetlerin verileri burada yer alır. |
/sys | Sistem donanımıyla ilgili dosyalar | Sistem donanım bilgileri, çekirdek tarafından sağlanan veriler ve donanım aygıtları hakkında bilgiler burada bulunur. |
/tmp | Geçici dosyalar için dizin | Geçici dosyaların oluşturulup silindiği alandır. Örneğin, uygulamalar geçici dosyaları burada oluşturur ve işlem tamamlandıktan sonra siler. |
/usr | Kullanıcı seviyesindeki ikili dosyalar ve veri dosyaları | Çoğu kullanıcı uygulamasının, kitaplığın ve yardımcı programın bulunduğu dizindir. Çoğu zaman kullanıcı seviyesindeki uygulamalar ve sistem araçları burada yer alır. |
/var | Değişken veriler için dizin, sık sık değişen dosyalar | Sistemde sık sık değişen dosyalar burada yer alır. Örneğin: log dosyaları, posta, gecikmeli kuyruklar ve veritabanı dosyaları burada saklanır. |
Hiç merka etmeyin diğer blog yazılarımızda gerekli oldukça zaten bunlara değineceğiz.
Bu blogumuz biraz kısa olmuş olabilir.Ancak temel olarak kabuk başlatma, man komutunun kullanımı ve linuxdaki dizinleri ve açıklamalarını verdik.Devam eden blog yazımızda yani bir sonraki blog yazımızda linuxda dosya işlemlerini detaylıca ele alacağız.
Şimdilik görüşmek üzere blog yazılarımızı okuyup anlamadığınız yada hatalı gördüğünüz kısımları yorumlar kısmında bildirin.
Comments