1 Ekim 2016 Cumartesi

Linux Dosya Sistemiyle Çalışmak Nasıl?

Merhaba

Daha önce yayınladığım GNU/Linux Dosya Sistemleri başlıklı makalede Linux Dosya Sistemleri üzerine temel kavramlara yer vermiştim, bu makalemde biraz daha içeriden bakıp Hiyerarşi, dizin, dosya yapıları ve Windows tabanlı dosya sistemleriyle farklarına kısaca değineceğim...

Linux Dosya Sistemiyle Çalışmak Nasıl?

Dosya sistemi disk üzerindeki dosyaların organize edilmesidir. Bir işletim sisteminin bir disk veya bölümleri üzerindeki dosyalarının izlerini bulmak için kullandığı yapı ve yönteme dosya sistemi (filesystem) denir. 


Kısaca Linux dosya sistemi, bilgisayarımızdaki dataların depolandığı bir ağaca benzetebiliriz. Neden ağaç kavramını kullanıyorum, çünki dosyalar bir dizin hiyerarşisi içerisinde düzenlenir. Dizinler (Klasörler) hem dosyalarımızı hemde başka dizinleri içerebilirler.

Linux dosya ve dizin hiyerarşisinden tepe noktada (/) işareti ile temsil edilen kök dizin bulunur. Kök dizin ifadesi Linux kavramlarına ve kullanımına aşina olan birçoğumuza hemen (/root) dizinini akla getirecektir. Ne varki (/root) kök dizin değildir, süper kullanıcının (yönetici) ev dizinidir.

Kök dizin altında; bin, dev, lib, home, root ve tmp gibi Linux sisteminin ortak dizinlerinin bir kümesi bulunur. Bu dizinlerde alt dizinler içerebilmektedirler. 
Linux Dosya Sistemininn hiyerarşi olarak düzenine küçük bir örnek
Linux dosya sistemi hiyerarşisi üzerine detaylı bir diyagram için bakınız...www.tuxmachine.com

Diagramımızda linux dosya sistemi hiyerarşisinin nasıl düzenlendiğini ve dizinlerin nasıl bağlandığını görmekteyiz. Örneğin; bayraktar, efe ve ege isimli üç kullanıcının home dizininde bağlandığını ve kullanıcılarında kendi alt dizinlerin sahip olduklarını görmektekteyiz.

/......: Root (Kök) dizini

Şimdi kök dizinimize bağlı bazı temel Linux dizinlerini inceleyelim.

/bin: Yaygın olarak kullanılan temel ve gerekli linux kullanıcı komutlarının saklandığı dizindir.
/boot : İşletim sisteminin diske yüklenmesi için gerekli dosyaları bulundurur.
/dev: Linux çekirdeğinde desteklenen her aygıta ait dosya bu dizinin altında saklanır. Kurulum anında bu dosyalar yerine yerleştirilir. Diğer donanımların yanı sıra taşınabilir cihazlarınız da bu listede dosya olarak saklanır.
/etc: Sistemimizdeki aygıtlara olan erişim noktalarını temsil eden yapılandırma dosyalarını içerir.  
/lib: Sistem programlarının kullandığı kütüphane dosyalarını barındır.
/home: Kullanıcılara ayrılmış dizin. Başka şekilde ayarlanmamış ise, açılan her hesaba ait kullanıcı, burayı kullanır. 
/media: Taşınabilir depolama aygıtlarının bağlandığı dizindir. CD/DVD sürücü, disket sürücü, USB bellek, USB Taşınabilir Disk vb.
/mnt: Sistem yöneticisi tarafından geçici mount edilen dosya sistemlerinin bağlandığı dizindir.
/proc: Sistem kaynakları hakkında bilgi içerir. Süreç kontrollerini ve diğer sistem bilgilerini tutar.
/root: Superuser veya root denilen yönetici hesabının ev dizinidir.
/sbin: Sistem veya sistem yöneticisi tarafından kullanılan komutların saklandığı dizindir.
/sys: Kernel ve Donanımlar hakkında bazı dosyaların yer aldığı dizin.
/tmp: Uygulamalar tarafından kullanılan geçici dosyaları içerir.
/usr: Tüm kullanıcılarca paylaşılan verileri içeren dizindir. 
/var: Log dosyaları, e-posta ve yazıcı kuyrukları gibi değişken verileri barındırır.
/sbin: Sistemi yöneticisiyle ilgili çalıştırabilir dosyaları tutar.
/opt: Üçüncü parti kullanıcı programlarının kurulması içindir.

Linux Dosya Sisteminin Windows tabanlı dosya sistemleriyle farkları Nelerdir?

Bir çok yönden benzer olmalarına karşın Linux dosya sistemini Windows tabanlı dosya sistemlerinden ayıran önemli farkları bulunur:

Bir Linux sisteminde her dosyanın veya dizinin izinleri bulunduğu gibi bununla beraber dosya sahipliği bulunur. Bunun başlıca nedeni Windows  işletim sistemlerinin başlangıçta tek kullanıcılı yapılarak olarak tasarlanması ve dosya sahipliğine yer verilmemesidir. Fakat günümüzde dosya, klasör nitelikleri ve güvenlik sekmesiyle Permissions denetimi getirilmiştir ki zaten artık çok kullanıcılı bir yapıda çalışmaktadırlar.

Linux dosya sistemi yapısının Unix geleneğinden klonlanması nedeniyle dosya sistemi yapısında küçük büyük harf ayrımı sözkonusudur. Mesela Windows'ta bayraktar klasörü ile BAYRAKTAR aynı şeydir. Fakat Linux'ta iki ayrı klasörden bahsediyor oluruz.

(/) işareti Linux dosya sisteminde dizin adlarını ayırmak için kullanılır. Windows  işletim sistemlerinde ise c:\home\bayraktar şeklinde olan dizin adresi Linux dosya sisteminde /home/bayraktar şeklinde olur.

Windows işletim sistemlerinde bir program yüklediğinizde, programa ait dosyaların büyük çoğunluğu kendi klasörüne yüklenir. Örneğin Adobe Photoshop'u, C:\Program Files\Adobe adresine kurduğunuzda, ona ait tüm dosyalar, bu klasörün altında saklanmaktadır. Fakat Linux dosya sisteminde program dökümanlarını /usr/share/doc/program_adi/ altına koyarken, yardım dosyaları, /usr/share/man/ altına eklenir.. Eğer mevcutsa info dosyaları da /usr/share/info altına atılır. Kısacası, sistem hiyerarşisine gömülen bir yapı söz konusudur. Yüklenen herhangi bir program, işletim sisteminin muhtelif yerlerine yerleşmektedir. 

Windows işletim sistemlerinde dosya adları her zaman son ekler alır. Bu ekler dosyaların tanımlayıcı kimliği niteliğindedir. Örneğin MS Office Word programına ait dökümanlar için .doc veya .docx dosyaları gibi. Linux yapısında ise bir dosyanın içeriğini ve kimliğini belirlemek için dosya son ekleri kullanılarak izin işaretleri ile dosyanın çalıştırılabilir hale gelmesi sağlanır..

Linux bir Unix klonu olması nedeniyle "Tekil Hiyerarşik Klasör Yapısı"nı benimsemiştir. Bütün herşey (/) işareti ile ifade edilen kök dizinde başlar ve bir ağaç yapısı gibi dallara ayrılır. Bu yapı kullanıcılara başta karmaşık gibi görünsede Windows yapısından gelen alışkanlıklar nedeniyle karmaşık görünmektedir. Örneğin C: D: şeklinde sürücüler bulunmaz. Windows ortamında, dosyalarımızı C sürücüsü, D veya E sürücüsü gibi her yere koyabilirsiniz. Bu tarz dosya sistemlerine ise "Hiyerarşik Yapı"lı denmektedir.

1 yorum:

Copyright 2013-2017 | İbrahim BAYRAKTAR /dev/null Web Günlüğü