Hoşgeldiniz, Ziyaretçi.Lütfen giriş yapın veya kayıt olun.
E-posta adresinize aktivasyon iletisi gelmediyse lütfen buraya tıklayın.

Kullanıcı adınızı, parolanızı ve aktif kalma süresini giriniz

 
Gelişmiş Arama

7805 Mesaj 5477 Konu- Gönderen: 2184 Üye - Son üye: abuzer666

08 Eylül 2010, 05:05:14
Networkturk ForumResimli DerslerLINUXLinux Dosya Sistemi Yapısı
Sayfa: [1]
Yazdır
Gönderen Konu: Linux Dosya Sistemi Yapısı  (Okunma Sayısı 241 defa)
karizmatik
Yüzbaşı
*******
Çevrimdışı Çevrimdışı

Mesaj Sayısı: 1074



Üyelik Bilgileri
« : 31 Ocak 2010, 12:01:30 »






Linux'un kullandığı dosya sistemi hakkında bilgi.Dosya sistemini oluşturan dizinler,
kapsadıkları dosyalar ve bunların Linux işletim sistemindeki görevleri de kısaca
belirtilecektir.

Bir işletim sisteminin dosya sisteminin performansı, hızı ve buna benzer çeşitli
özellikleri sistemin verimli ve kararlı çalışması üzerinde doğrudan etkisi vardır.
Linux dizin yapısının geliştirilmesinde FSSTND (file system standard) grubunun
çalışmalarının payı çok büyük oldu. Programcılardan oluşan grup, standartların
belirlenmesinde ve uygulama aşamasında Linux ile ilgilenenlere yardım etti. 1993
yılında Olaf Kirsh, Linux haber grubuna yazdığı bir e-postasında Linux dosya sistemi
üzerindeki çalışmaların tamamlandığını haber verdi. O yıldan bu yana linux dosya
sistemi standardı üzerinde kayda değer değişiklik olmamıştır.

Linux dizin yapısında bazı dizinlerin işlevi birbiriyle aynıdır. Bu durum, özellikle
birbirini takip eden iki Linux sürümünde belirginleşir. Örnek olarak bir dağıtımda
/usr/bin dizini altında yeralan dosya, diğer sürümde /bin altına
yerleştirilebiliyor.

Dosya sistemleri ve dizinler paylaşımlı olarak da kullanılabilir. Birden fazla
kişisel bilgisayarın bağlandığı ağda, disk alanından yer kazanmak için bir makina
sunucu (ana makina) olarak tayin edilir. Ağ üzerindeki diğer makinalar da sunucu
üzerindeki diski paylaşır. Buna örnek olarak kullanıcı ev dizinlerinin yeraldığı
/home, çalıştırılabilir dosyaların bulunduğu /usr, e-posta ve haber grubu
bilgilerinin bulunduğu /var/spool/mail ve /var/spool/news dizinleri verilebilir.

Kök dizini, kendisine bağlı diğer tüm dizinleri de içerdiğinden, Linux dosya
sisteminde önemli bir yere sahiptir. Linux açılırken önce kök dizini /etc/fstab
dosyasına uygun şekilde bağlanır. Diğer dosya sistemlerinin onarımı ve kontrolü için
gerekli olan fsck programları bu dizinde bulunmalıdır. Benzer şekilde yedekleme için
gerekli olan tar, zip, compress gibi arşiv programlarına da kök dizin altından
erişilebilmeli, açılış esnasında hafızaya yüklenen çekirdek de kök dizininde
yeralmalıdır.

Bir programı yerine koymadan önce bazı "dengelerin" gözönünde tutulmasında yarar
vardır. Programlanan her yazılımı kök dizinine koyarsanız, bir süre sonra bu dosya
sisteminin şiştiğini görürsünüz. Kök dizinini başlangıçta küçük (20-30Mb kadar)
tutmak, geliştirilen programları daha önceden belirlenen başka bir dosya sistemi
altına koymak akıllıca olur. Bu yol, ağ üzerinden genellikle paylaşımı mümkün
olmayan kök dizininin her makinadaki sabit diskte mümkün olan en az yer işgal
etmesini sağlar.

Sistemdeki önemli dizinlere göz atarsak,

/bin : Sistemin açılışı ve kontrolü için gerekli komutlar. Hem
kullanıcıların, hem de sistem görevlisinin kullanabileceği dosyalar (kök dizinde ise
fazla şişmemesi koşuluyla) buraya atılabilir. Sadece root kullanıcının ihtiyaç
duyacağı init, getty, updatedb gibi programlar /sbin veya /usr/sbin'de durabilir. Bu
dizinde bulunan dosyalara örnek olarak cat, chgrp, chown, date, dd, df, ln , mkdir,
mount, ps, rm, sh, su, sync ve umount'u sayabiliriz. /dev : G/Ç dosyaları. Linux
çekirdeğinde desteklenen her aygıta ait dosya /dev dizini altında bulunur. Kurulum
anında bu dosyalar yerine yerleştirilir, bu dosyaların silinmesi durumunda
/dev/MAKEDEV ile tekrar yaratılabilirler.

/etc : Sistem konfigürasyon dosyaları. Bu dizinde çalıştırılabilir dosyalar
bulunmamalıdır.

•   skel : Buradaki dosyalar, kullanıcı hesabı açıldığında kullanıcının ev
dizinine kopyalanır.
•   rc.d : Bu dizinin içinde, init sürecinin başvurduğu konfigürasyon dosyaları
vardır.
•   passwd : Kullanıcı şifre veritabanı
•   fstab : Linux'un açılışı esnasında bindirilecek dosya sistemleri burada
listelenir.
•   group : passwd'e benzer şekilde kullanıcıların gruplarını tutar.
•   inittab : init daemon için konfigürasyon dosyası
•   motd : Kullanıcı sisteme girdikten sonra ekranına basılması istenen mesaj
burada tutulur.
•   profile : Kullanıcı sisteme girdiği zaman çalıştırılan dosya (csh ve sh
türevi kabuklar için)
•   shells : Sistemde kullanılabilecek kabuk isimleri burada tutulur.
•   login.access : login komutu için konfigürasyon dosyası. Sisteme girişi
kullanıcı bazında sınırlamak için kullanılır.
•   limits : İşlemci performansının kullanıcı bazında kısıtlanmasını sağlar

 /home : Kullanıcılara ayrılmış dizin. Başka şekilde ayarlanmamış ise, açılan her
hesaba ait kullanıcı, burayı kullanacaktır. Büyük sistemlerde, bu kısım alt
parçalara ayrılabilir (/home/ftpadm , /home/ogrenci gibi)
/lib : Kütüphane dosyaları.
/mnt : Geçici bağlanan dosya sistemleri. Sadece bu iş için kullanıldığından sistem
görevlisine zaman kazandırır.
/proc : Süreç kontrollerini ve diğer sistem bilgilerini tutan dosya sistemi. Bu
dosya sistemi aslında disk üzerinde yer kaplamaz, tüm dosyalar çekirdeğin bir
uzantısı sayılabilir.

•   cpuinfo : işlemci modeli, tipi ve performansını bildirir.
•   devices : Halihazırda çalışan çekirdek içinde desteği bulunan aygıt sürücülerini listeler.
•   dma : Hangi dma kanallarının kullanıldığını belirtir.
•   filesystems : Halihazırda çalışan çekirdek içinde desteği bulunan dosya sistemlerini listeler.
•   interrupts : Hangi kesintilerin kullanımda olduğunu söyler.
•   iports : Halen hangi giriş/çıkış iskelelerinin kullanıldığını belirtir.
•   kcore : Sistem hafızasının görüntüsü

/root : Sistem görevlisinin ev dizini. Mümkünse bu dizini sistemdeki diğer
kullanıcıların görmeyeceği şekilde ayarlayın.
/sbin : Hayati sistem komutları. Bir zamanlar bu dosyalar /etc dizini altında
yeralıyorlardı. Sadece sistem görevlisinin ihtiyacı olan komutlar, /sbin veya
/usr/sbin içinde bulunur.
/tmp : Geçici dosyaların koyulduğu dizin. Belirli zaman aralıklarında
temizlenmelidir.
/usr : Diğer önemli sistem dosyalarını tutar. Bu bölüm genelde en kalabalık
dizindir, zira yeni kurulan tüm programlar buraya konulur.

•   X11R6: X Window sistemi bilgileri tutulur.
•   doc: Belge ve dokümanlar, genellikle HOWTO ve FAQ dosyaları.
•   lib: Bazı kütüphaneler
•   man: Man dosyaları
•   src: Bazı kaynak dosyaları ve linux çekirdeğini oluşturan kodları (/usr/src/linux) içeren dizin.
•   sbin : Kök dosya sisteminde yeralması gerekmeyen çalıştırılabilir sistem görevlisi dosyaları

/var : Sürekli değişen sistem bilgileri burada tutulur. İstisnalar dışında
diğer makinalarla paylaştırılmaz.

•   adm: Sistem yönetimini ilgilendiren kayıtlar
•   preserve : Sistemin göçmesinden sonra zarar görmesi mümkün dosyaların kaydedildiği yer.
•   spool : Sonra işlenecek olan veriler buraya atılır (e-posta gibi)

Eğer sistem yöneticisi iseniz düzenli olarak dosya ve dizin yapısını kontrol
etmelisiniz. Örneğinn /tmp dizini normal kullanıcıların kullanımına açık olduğu için
çok kısa bir sürede dolabilir. Burayı periyodik olarak silmek için find komutu işe
yarayabilir :
# find /tmp -atime +7 -exec rm -rf {} \;
Yukarıdaki komut, tmp dizini altında yeralan tüm dosyaları kontrol edecek ve 7
günden daha eski dosyaları silecektir. Benzer şekilde, kullanıcıların dosyalarının
yer aldığı /home dizini de çok kısa bir sürede dolmaya mahkumdur. Sistemde ne kadar
büyük sabit disk olursa olsun bir gün gelecek burası dolacaktır. Periyodik olarak
buraya da göz gezdirmek gerekir. Aşağıda yeralan kısa program, /home dizininde
yeralan kullanıcı dizinlerideki disk kullanımını büyükten küçüğe doğru disk isimli
dosyaya yollayacaktır. Bu dosyanın incelenmesiyle hangi kullanıcıları
"cezalandıracağınızı" görebilirsiniz 
# du -skx /home/* | sort -rn > disk
du (disk usage), sistem kullanıcılarının sıkça başvurduğu bir komuttur.
Kullanılabilecek parametreler için du(1) kılavuz sayfasına bakın.
UNIX, (ve dolayısıyla Linux) iki tip aygıt tanır. Bunlardan ilki karakter aygıtları,
başka bir deyişle veri alışverişini bayt bazında yapan cihazlar, diğeri de blok
aygıtları, yani veri alışverişini blok cinsinden yapan cihazlardır. Karakter
aygıtlarına örnek olarak seri bağlanan cihazlar ve teypler, disk aygıtlarına örnek
olarak da diskler verilebilir. Bu cihazlardan bir bilgi yazılıp okunduğunda dosya
sistemi altında bunları tanımlayan dosyalar (/dev/*) kullanılmış olur. Örnek olarak
bir yazıcıya bilgi göndermek için,
$ cat dosya > /dev/lp1
komutunu kullanabilirsiniz. Dosya, düz metin gibi, yazıcının anlayabileceği bir
yapıda olmalıdır.

Her aygıt, bir dosya olarak dosya sisteminde kendine yer bulduğuna göre hangi aygıt
dosyalarının (düğüm ) bulunduğunu görmek mümkün olabilir.
$ ls -l /dev/cua0
crw-rw-rw- 1 root uucp 5, 64 Nov 30 1993 /dev/cua0
İlk kolondaki ilk karakter (c), bu dosyanın bir karakter aygıtına ait olduğunu
belirtiyor. Normal dosyalar için buradaki karakter '-' olmalıydı. Benzer şekilde
blok aygıtlar için ise 'b' kullanılr.

Aygıt sürücü desteği çekirdekte olmasa bile /dev dizini altında genellikle tüm aygıt
dosyaları (düğümler) bulunur. Bu demektir ki /dev/sda dosyasına sahip olduğunuz
halde bir SCSI sabit diski sistemde takılı olmayabilir. Tüm aygıt sürücülerinin
bulunması, programların kurulumunu ve yeni donanımın eklenmesini kolaylaştırır


Logged

Sеnin İçin Döktüğüm Gözyaşım Ahirette Sana Sorulacak Olan Kul Hakkım Olsun ...
Sayfa: [1]
Yazdır
Gitmek istediğiniz yer:  

Shimaria @ BLACKWHITE