NASIL:Dosyalar ve dizinler
PardusWiki sitesinden
Bu maddede, Pardus ve diğer Linux dağıtımlarının kullandığı ortak dosya sistemi yapısı, dizinlerin ne anlama geldikleri ve Windows'taki bazı dosya ve dizinlerin Linux'taki karşılıkları hakkında bilgi verilmektedir.
Konu başlıkları |
Temel Prensipler
Kök dizin altındaki dizinler, geçmişte Linux Dosya Sistem Hiyerarşisi (kısaca FSSTND) denilen bir standart ile belirlenmiş klasörlerdir. Günümüzde Linux dağıtımlarının büyük çoğunluğunun FSSTND tarafından belirlenmiş klasörlerin dışında kök dizine bir iki klasör daha ekledikleri ya da nadiren bu yapıdan bir klasörü çıkardıkları görülmektedir.
Her şey bir dosya
Sistemdeki her şey bir dosyadır, Buna sistemdeki aygıtlar, donanım kaynakları hatta hafızada çalışan programlar da dahildir. Bu durum Windows kullanıcılarının anlamakta en çok zorlandıkları konudur, nasıl olur da bir ethernet kartı veya bir hard disk bir dosya olarak tanımlanabilir?
Ancak şöyle düşünün Windows'ta bir ethernet kartı sadece ekrandaki bir pencerede gördüğünüz bir yazıdan ibarettir, ancak Linux'ta gerçek bir dosyadır. Bu programcıların işini çok kolaylaştırır, Linux çekirdeği örneğin bir ethernet kartına ulaşmak istediğinde /dev/eth0 dosyasına okuma yazma yapar veya bir sabit disk bölümü için /dev/sda1 dosyasını kullanır.
Ancak bu tür dosyalar sistem açıldığında oluşturulan ve kapandığında kaybolan dosyalardır ve sadece sistem programları tarafından erişilebilir.
Tek Kök dizin
Sistemde sadece bir tane Kök dizin vardır diğer tüm dosya ve dizinler "/" işaretiyle gösterilen kök dizinden (root dizini) başlayarak ağaç yapısında dallanır.
Windows'ta her disk bölümünün bir kök dizini varken Linux'ta bir tane kök dizini vardır ve her şeyi içine alır; tüm sabit disk bölümleri, aygıtlar, ağ kaynakları, hafızada çalışan programlar, aklınıza gelebilecek her şey bu tek kök dizininin altında bir yerlerde bir klasör veya dosya olarak bulunabilir.
Hemen akla "peki C: D: gibi disk bölümleri nerede?" sorusu gelir. Linux'ta bu aygıtlar da diğerleri gibi /dev dizini altındaki bir dosyadır ve bağlama yöntemiyle ulaşılabilir.
Bir dizin ya da dosyanın, sistemdeki konumu, o dosya/dizinin “yol”'uyla belirtilir. Yol, kök dizininden itibaren, o dosya/dizine ulaşmak için geçilmesi gereken dizinlerin “/” işaretiyle birleştirilerek ardışık bir şekilde yazılmasıyla elde edilen ifadedir. Örneğin “/home/uludag” yolu, kök dizinindeki, home isimli dizin içindeki uludag dizininin konumunu belirtir. Bu ifadede en baştaki “/” kök dizinini belirtmektedir.
Bağlama (Mount)
Bağlama kısaca /dev dizinindeki depolama aygıtının uygun bir sürücü ve erişim izinleri ile başka bir dizinde kullanılmasını sağlamaktır. Bu güvenliği ve denetimi sağlayan, dağıtık çalışmayı kolaylaştıran bir yöntemdir.
Eğer /dev altındaki bu disk bölümlerine NTFS veya ext gibi bir aygıt sürücüsü ile ulaşılırsa içindeki dosyalar görünecektir, sistem de bu dosyalara kullanıcının erişimi için /dev/ haricindeki başka bir dizini kullanır. Bu işleme bağlama denir.
Örneğin /dev/sda1 dosyasındaki disk bölümü /mnt/sda1 dizinine NTFS sürücüsü ve uygun erişim izinleri ile bağlanırsa bu dizinden dosyalara ulaşılabilir olur, bağlama işlemi yapılmadığı sürece /mnt/sda1 dizini boş olacaktır.
Otomatik Bağlama
Sabit sürücülerin veya istenilen ağ sürücülerinin Linux açılışı sırasında bağlanabilmesi için /etc/fstab dosyası kullanılır. Açılışta otomatik bağlama ayarlarını değiştirmek için Tasma'dan Disk Yöneticisi uygulamasını kullanabilirsiniz, bu uygulama bir Pardus Projesidir.
Çıkarılabilir aygıtlara medya takıldığında da sistemde sürekli çalışan HAL servisi tarafından takip edilir. Kullanıcı bu medyalara erişmek istediğinde bağlama /media dizinine otomatik olarak yapılır.
Tüm bunların amacı nedir?
Tüm bu tek kök dosya sistemi ve bağlama özelliklerinin amacı çok kullanıcılı ve dağıtık bir sistemi güvenli ve kolay bir şekilde kurup yönetebilmektir. Örneğin birden çok bilgisayarın olduğu bir ağda bilgisayarlardan birisindeki bir ağ dizinine /home dizini bağlanır, bir diğerine /var dizini içerisindeki e-posta sunucusunun dosyalarının olduğu dizin, bir diğerine de Web sunucusunun dosyalarının olduğu dizin bağlanabilir. Bu sayede fiziksel olarak pek çok bilgisayara dağılmış olan bir sunucu tek bir kök dosya sisteminden sanki tek bir bilgisayrmış gibi yönetilerek kullanılabilir.
Her ne kadar bu durum tek kullanıcı ve tek bilgisayardan olaşan Masaüstü kullanımı için gereksiz gibi görünse de Linux ile bir sunucunun sağladığı güvenlik özellikleri masaüstünde de kullanılabilir olmuştur.
Erişim izinleri
Linux sistemlerde her dizin ve dosyanın bir Sahip Kullanıcısı ve bir de Sahip Grubu vardır. Erişim izinleri de sahibi, grubu ve diğerler kullanıcıların izinleri olarak üç kategoride ayarlanabilir. Bunlardan her birisine okuma, yazma ve çalıştırma yetkileri verilebilir veya kısıtlanabilir.
Örneğin; /root dizininin sahip kullanıcısı "root", sahip grubu yine "root" olarak ayarlanmıştır. Erişim izinleri de Sahibi:Okuma-Yazma, Grubu:İzin yok, Diğerleri:İzin yok olarak ayarlanmıştır. Böylece bu dizine sadece "root" kullanıcısı erişebilmektedir.
Erişim izinlerini ayarlamak için Dosya ve dizinlerin erişim izinlerini ayarlamak maddesine bakınız.
Hangi dizin ne işe yarar
Kök dizininde bulunan dizinlerin görevleri kısaca şöyledir:
| /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. |
| /dev | Bilgisayarınızdaki, donanımlarla (sabit diskler, fare gibi..) iletişim kurulabilmesi için gereken özel aygıt dosyalarını içerir. |
| /etc | Sistem ayarlarını barındırır, bulunduğu bilgisayara özel birçok yapılandırma bilgisini içerir. Durağandır ve çalıştırılmak için değildir. Bu dizinde çalıştırılabilir dosyalar bulunmamalıdır. |
| /home | Bu dizin altında, kullanıcıların kişisel verilerini, yapılandırmalarını kaydettikleri çalışma alanları olan ev dizinleri bulunur. /home dizini altında her kullanıcı için ayrı ayrı tahsis edilmiş kullanıcı (ev) dizinleri mevcuttur.(/home/ftpadm , /home/ogrenci gibi). |
| /lib | Çekirdek modülleri ve paylaşılan kod kütüphanelerini içerir. MS Windows'ta dll uzantısına sahip olan paylaşılan kütüphane dosyaları, Linux'ta so uzantısına sahiptir. |
| /media | Kaldırılabilir aygıtların (CD-Rom, USB bellek, vs.) sisteme bağlandığı klasördür. |
| /mnt | Çeşitli dosya sistemlerinin bağlandığı klasördür. Sabit disk bölümlerine bu dizin üzerinden ulaşabilirsiniz. |
| /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 | Sistem yöneticisinin (yani “root” kullanıcısının) ev dizinidir. |
| /usr | Tüm kullanıcılarca paylaşılan verileri (örneğin programlar, komutlar, kütüphaneler, dokümanlar gibi) içeren dizindir. |
| /var | Değişken verileri içerir (örneğin rapor dosyaları, veritabanları, kuyrukta bekleyen yazdırılacak dokümanlar gibi) |
| /tmp | Geçici dosyaları içerir. Yalnız geçici olduğu için bu dosyaları silmek tehlikeli olabilir. Ama yine de belirli zaman aralıklarında temizlenmelidir. |
Şunu özellikle belirtmek gerekir. Linux, Windows'tan farklı bir dizin hiyerarşisi izler. Windows'ta genellikle yüklenen programlar Program Files klasörü altında saklanırken Pardus'ta durum size çok daha farklı gözükecektir. Pardus'ta bir programın dosyaları aynı türdeki dosyaları saklayan gerekli klasörlere dağıtılır. Bu şekilde aradığınız bir yerelleştirme dosyasını yani programın Türkçe çalışması için yapılmış çeviri dosyasını, programın kullandığı kütüphane dosyasını yani Windows'taki (.dll) Pardus'taki (.so) dosyası ve bunun gibi belirli bir amaç için kullanılan dosyaları yerleştirilmiş oldukları kendine özgü klasörün içinde bulabilirsiniz.
Depolama aygıtları
Sabit depolama aygıtları /mnt altına, çıkarılabilir depolama aygıtları da /media dizinine bağlanır. Bununla ilgili yandaki açıklayıcı grafiği inceleyebilirsiniz. Grafikte örnek bir sistemde depolama aygıtlarının hem Windows hem de Pardus altında nasıl ve nereye bağlandığını görebilirsiniz.
İpuçları
- Sabit disk bölümlerine /mnt dizini üzerinden ulaşılabilir. Ayrıca mevcut tüm diskleri ve bölümlerini konsolda sorgulamak için yönetici olarak fdisk -l (küçük L) komutu verilir.
- /home dizini altındaki kullanıcı ev dizinlerine erişim için bir kısayol vardır, şöyle ki; bir kullanıcı, kendi ev dizinindeki metin.txt adındaki bir dosyaya “~/metin.txt” yolunu kullanarak erişebilir. Yani “~” işareti her kullanıcı için, o kullanıcının ev dizinini belirtir.
- Windows'ta kullanıcıların çeşitli programlarda yaptığı değişiklik ve ayarlamaların tutulduğu Documents and Settings klasörünün yerini Pardus'ta büyük oranda Ev Dizini almaktadır. Yönetici (root) kullanıcısının dosyaları ayrıcalıklı olarak root isimli dizinde yer alır.
- Programların dil dosyaları /usr/share/locale dizininde saklanır.
- Pardus'ta (.so) yani kütüphane dosyaları diğer bir değişle Windows'ta bulunan (.dll) dosyalarının benzerleri lib ve usr/lib dizinlerinde yer alır.
- Windows’taki Program Files klasörü Pardus'ta yaklaşık olarak /usr klasörüne benzemektedir.
- Windows'ta bulunan CONFIG.SYS ve AUTOEXEC.BAT gibi sistem açılışı ve pencere sisteminin düzenini etkileyen dosyaların yer aldığı dizin /etc dizinidir.
- Geçici dosyaların yer aldığı dizinler /tmp ve /var/tmp dizinleridir.
- Windows'ta olduğu gibi Pardus'da da normal ayarlar ile göremediğimiz gizli dosyalar vardır. Pardus'da gizli dosyaları görüntülemek Konqueror dosya yöneticisinde Görünüm > Gizli dosyaları göster yolu izlenir. Ayrıca Pardus'da gizli dosyaların isimlerinin başında nokta bulunmaktadır. Örneğin .Notlarım isimli dosya gizli bir dosyadır.
- Sabit disk bölümülerine /mnt dizini üzerinden ulaşılabilir.
İlgili maddeler
Dış bağlantılar
- Linux Dosya Sistemi Yapısı (belgeler.org)
Kaynaklar
- hakanarin.blogspot.com
- PLO e-dergi (Çağatay ÇEBİ)
- Linux İlk Sorulan Sorular

