Dosya_sistemiLinux sisteminin dosya düzeni diğer UNIX benzeri sistemlerine çok benzer.Tasarım aslında Linux Filesystem Hierarchy Standard adı altında standart bir yapıdadır.Tabi tüm linux dağılımları tam olarak standart değildir ,fakat çoğu bu standarta oldukça yakındır.

Şimdi sıra Linux dosya sistemini keşfetmeye geldi.Keşfedeceğimiz şeylerden biri de çok ilginç ve sade okunabilir text dosyaları olacak.Bu şeyleri kurcalamaktan korkmayın.Bunları kurcalayarak sistemin çalışma mantığını kavrayacaksınız.

Aşağıda bir kaç dizini açıkladık.

Dizin

Açıklama

/

Kök dizini herşey burada başlıyor.

/bin

Olması zorunlu temel komut dosyalarını içerir (cp, mv, ls gibi..). Sistemde bir sorun meydana geldiğinde /bin klasörü altındaki komutlar kullanarak sistem onarılabilmektedir.

/boot

Açılış işlemi sırasında kullanılan dosyaları (çekirdek görüntüsü, sistem haritası, önyükleyici yapılandırması gibi..) içerir.

İlginç dosyalar:

  • /boot/grub/grub.conf ya da menu.lst, önyükleyiciyi yapılandırmak için kullanılır.
  • /boot/vmlinuz, Linux çekirdeği

/dev

Bu cihaz düğümleri içeren özel bir dizindir.”Herşey bir dosyadır.” ifadesi aygıtlar için de geçerlidir.Bu dizin bilgisayarınızdaki, donanımlarla (sabit diskler, fare gibi..) iletişim kurulabilmesi için gereken özel aygıt dosyalarını içerir.

/etc

Sistem genelinde konfigurasyon dosyaları bulunur.Ayrıca önyükleme sırasında sistem servislerinin başlangıcı için shell scriptleri içerir.Bu dizinde herşey okunabilir metin olmalıdır.

İlginç dosyalar:Bu dizinde herşey ilginç olsada yine en ilginç dosyaları:

  • /etc/crontab , alistirilicak olan dosyalar ve zamanlari CRONTAB adli dosya icinde saklanir.

  • /etc/fstab , depolama aygıtlarını ve bunların bağlantı noktalarının tablosu

  • /etc/passwd , kullanıcı hesaplarının bir listesi

/home

 Normal yapılandırmada her kullanıcıya /home dizini verilmiştir.Sırada kullanıcılar sadece buradaki dosyalara yazabilirler.Bu sınırlama, hatalı kullanıcı etkinliğine karşı sistemi korur.

/lib

Çekirdek sistem programları tarafından kullanılan paylaşılan kütüphane dosyalarını içerir.Windowsdaki DLL dosyaları gibi.

/lost+found

 Ext3 gibi bir Linux dosya sistemini kullanılarak her biçimlendirilmiş bölüm veya aygıt, bu dizinde olacaktır.Bir dosya sisteminde bozulma olursa kurtarma işlemi için bu bölüm kullanılır.Sisteminizde kötü bir şey olmadığı sürece bu dizin boş kalır.

/media

Sistem açılışında otomatik olarak bağlanmayan sabit disk bölümleri ile kaldırılabilir aygıtlar (CD-Rom, USB bellek, vb.) bu dizin altında bir dizin açılarak bağlanmaktadır.

/mnt

 Sistem açılışında otomatik olarak bağlanan sabit disk bölümleri bu dizin altında bir dizin açılarak bağlanmaktadır.

 

/opt

Sistem için zorunlu olmayan 3. parti kullanıcı programları bulunur.

/proc

Süreçler, sistem belleği, bağlı aygıtlar, donanım yapılandırmalarıyla ilgili bilgileri içeren özel bir “sanal” dosya sistemidir. Fiziksel dosyalar bulunmaz. Bir bilgi alma merkezi olarak görülebilir, birçok uygulama buradaki bilgilerden yararlanmaktadır.

/root

Root(Sistem yöneticisi) hesabı için home dizinidir.

/sbin

 Sistem ikili dosyaları içerir.Bunlar genellikle süper kullanıcı için ayrılmıştır hayati sistem görevleri gerçekleştirmek için kullanılır.

/tmp

 /tmp dizini çeşitli programlar tarafından oluşturulan geçici dosyaların depolanması için tasarlanmıştır.Bazı yapılandırmalarda sistem yeniden başlatıldığında bu dizin boşalır.

/usr

 /usr muhtemelen bir Linux sisteminde bulunan en büyük dizin ağaçlarından biridir.Bu normal kullanıcılar tarafından kullanılan tüm programlar ve destek dosyalarını içerir.

/usr/bin

Linux dağıtımı tarafından yüklenen çalıştırılabilir programlar içerir.

/usr/lib

/usr/bin deki programlar için paylaşım kütüphaneleri.

/usr/local

/usr/sbin

 Daha çok sistem yönetim programları içerir.

/usr/share

/usr/bin deki programlar tarafından kullanılan tüm paylaşılan verileri içerir.

/usr/share/doc

Sistemde yüklü çoğu paket bir çeşit belge içerir./usr/share/doc dizininde paketler tarafından düzenlenen belge dosyaları bulunur.

/var

Şimdiye kadar /tmp ve /home dışında dizinlerin nispeten sabit kaldığını inceledik;içeriklerinin değiştirilemeyeceğini./var dizini olası değişimlerde verinin saklandığı yerdir.Çeşitli veri tabanları, rapor dosyaları, kullanıcı postaları, vb burada bulunur.

/var/log

 /var/log kayıt dosyaları, çeşitli sistem faaliyet kayıtlarını içerir.Bu çok önemlidir ve zaman zaman izlenmelidir

 Bazı sistemlerde güvenlik nedenleriyle, günlük dosyalarını görüntülemek için süper kullanıcı olmaya dikkat edilmelidir.

 Dosya ve Dizinler için Önemli Kodlar

Gerçek çalışmalar için hazırız.

  • cp – Dosya ve dizinleri kopyalama.
  • mv – Dosya ve dizinleri gtaşıma adını değiştirme
  • mkdir – Yeni dizi açar.
  • rm – Dosya ve dizinleri kaldırır
  • ln – Sabit ve sembolik bağlantılar oluşturur.

Bu beş komut Linux komutları arasında en fazla kullanılan komutlardır.Onlar dosya ve dizi manipülasyonlarında kullanılır.Samimi olmak gerekirse bu komutların yapacağı işi bir grafiksel dosya yöneticisi ile yapmak daha kolay.Sürükle bırak ile  dosyaları kopyalamak taşımak daha kolay yada silmek daha kolay.

Peki neden bu eski komut satırı programını kullanıyoruz?

Cevabı güç ve esneklik.Bir grafik dosya yöneticisi ile basit dosya manipülasyonlar yapmak kolay olsa da, karmaşık görevleri komut satırı programları ile yapmak daha kolay olabilir. Örneğin bir dizinden başka bir dizine diğer dizinde bulunmayan ve sürümleri daha yeni olan HTML dosyalarını nasıl kopyalarız?Dosya yöneticisi ile oldukca zor ve zahmetli.Ama komut satırı ile oldukca kolay:

cp -u *.html destination

Joker Karakterler

Bizim komutları kullanmaya başlamadan önce,  komutları bu kadar güçlü kılan kabuk özelliği hakkında konuşmalıyız.Kabuk çok sayıda dosya kullandığından hızlı bir şekilde dosya grupları belirlemek için özel karakterler içerir.Bu özel karakterlere joker karakterler denir.Joker karakterler kullanılaraka karakter örgülerine göre dosya adlarını seçmenizi sağlar.Aşağıdaki tabloda joker karakterler gösterilmiştir.

*    –>      Herhangi bir karakter

?     –>     Herhangi tek bir karakter

[characters] –> parantez içindeki herhangi bir karakter

[!characters]–> parantez içinde yer almayan herhangi bir karakter

[[:class:]] –>    belirtilen sınıfın üyesi olan herhangi bir karakter.

Yaygın olarak kullanılan karakter sınıfları:

[:alnum:]  –>  Herhangi bir alfasayısal karakter.
[:alpha:]   –>   Herhangi bir alfabetik karakter.
[:digit:]    –>    Herhangi bir rakam.
[:lower:]  –>   Herhangi bir küçük harf
[:upper:] –>    Herhangi bir büyük harf

Joker karakterler dosya için çok karmaşık seçim kriterleri oluşturmayı mümkü kılar.

 

Share on FacebookTweet about this on TwitterShare on LinkedInShare on Google+Share on TumblrEmail this to someone