Linux Linux Dosya Sistem Yapısı

Linux'un dosya sistem yapısı, Unix tabanlı işletim sistemlerinde kullanılan hiyerarşik bir yapıdır. Bu yapı, kök dizin (/) olarak bilinen en üst seviyede başlar ve altındaki dizinler aracılığıyla tüm sistem kaynaklarına erişim sağlar. Bu hiyerarşi sayesinde kullanıcılar ve sistem süreçleri, dosyaları ve dizinleri organize bir şekilde yönetebilirler. İşte Linux dosya sistem yapısının teknik detayları:

Kök Dizin (/)

Linux dosya sisteminin en üst düzeyinde yer alan kök dizin (/), tüm diğer dizinlerin ve dosyaların bağlı olduğu temel noktadır. Sistem başladığında, her şey bu dizin altında organize edilir. Diğer tüm dizinler, bu kök dizin altında hiyerarşik bir yapı oluşturur.

file_system.webp

Temel Diziler ve Amaçları

Kök dizin altında yer alan bazı önemli dizinler ve işlevleri şunlardır:

/bin (Binary)

  • Amacı: Kullanıcı ve sistem süreçleri tarafından ihtiyaç duyulan temel yürütülebilir dosyaları içerir. Bu dizindeki komutlar, sistemin kurtarma modunda veya tek kullanıcı modunda çalışabilmesi için gereklidir.
  • Örnek Komutlar: ls, cp, mv, rm, cat.

/boot

  • Amacı: Sistemin başlatılması için gerekli çekirdek (kernel) ve önyükleyici dosyalarını içerir.
  • Önemli Dosyalar: Linux çekirdeği (vmlinuz), önyükleyici yapılandırma dosyaları (grub).
  • Not: Çoğu sistemde bu dizin, ayrı bir disk bölümünde olabilir.

/dev (Devices)

  • Amacı: Tüm cihaz dosyalarını içerir. Linux'ta cihazlar (diskler, klavyeler, USB aygıtları vb.) özel dosyalar olarak temsil edilir.
  • Örnekler:
    • /dev/sda (birinci sabit disk),
    • /dev/tty (terminal cihazları),
    • /dev/null (herhangi bir veri yazıldığında yok sayılan cihaz).

/etc

  • Amacı: Sistemin yapılandırma dosyalarını içerir. Bu dizin altındaki dosyalar, çeşitli sistem ayarlarını ve hizmet yapılandırmalarını barındırır.
  • Örnek Dosyalar:
    • /etc/passwd: Kullanıcı bilgileri,
    • /etc/fstab: Disk bölümlerinin montaj bilgileri,
    • /etc/network/interfaces: Ağ yapılandırma dosyaları.

/home

  • Amacı: Her kullanıcının kişisel dizinlerini içerir. Kullanıcıların kişisel dosyaları, ayarları ve verileri bu dizin altında depolanır.
  • Örnek: /home/okan (Okan kullanıcısının dizini).

/lib ve /lib64

  • Amacı: Sistem ve uygulamalar için gerekli olan paylaşımlı kütüphaneleri içerir. Bu kütüphaneler genellikle C ve diğer dillerle yazılmıştır ve /bin veya /sbin içindeki uygulamalarla kullanılır.
  • Örnek: libc.so, libm.so (C standart kütüphanesi ve matematik kütüphanesi).

/media

  • Amacı: Harici medya cihazlarının (USB bellekler, CD-ROM'lar) monte edildiği geçici noktaları içerir.
  • Örnek: USB belleğiniz takıldığında /media/usb altında monte edilebilir.

/mnt

  • Amacı: Geçici olarak monte edilen dosya sistemleri için kullanılan bir dizindir. Kullanıcılar, harici depolama aygıtlarını veya diğer dosya sistemlerini bu dizin altında manuel olarak monte edebilirler.
  • Örnek: Bir başka disk bölümünü veya ağ sürücüsünü geçici olarak sudo mount /dev/sdb1 /mnt komutuyla monte edebilirsin.

/opt

  • Amacı: Üçüncü parti yazılımlar ve paketler için ayrılmıştır. Genellikle manuel olarak yüklenen uygulamalar ve ek yazılımlar bu dizin altında depolanır.
  • Örnek: /opt/google dizini, Google tarafından geliştirilen yazılımları içerebilir (örneğin Google Chrome).

/proc

  • Amacı: Linux çekirdeği tarafından yönetilen sanal bir dosya sistemidir ve çalışan süreçler ve sistemle ilgili dinamik bilgileri içerir. Bu dizin aslında fiziksel bir dosya sistemi değildir, sadece sistem durumu hakkında bilgi sağlar.
  • Örnek Dosyalar:
    • /proc/cpuinfo: İşlemci hakkında bilgi,
    • /proc/meminfo: Bellek kullanımı hakkında bilgi,
    • /proc/[PID]: Çalışan her bir süreç için ilgili dizin (örn. /proc/1234, süreç ID’si 1234 olan süreç).

/root

  • Amacı: Sistem yöneticisi olan root kullanıcısına ait kişisel dizindir. Bu dizin, root kullanıcısının ayarlarını ve kişisel dosyalarını içerir.
  • Not: Normal kullanıcıların ev dizinleri /home altında bulunurken, root kullanıcısının ev dizini doğrudan kök dizin altındadır (/root).

/run

  • Amacı: Sistem başladığında dinamik olarak oluşturulan dosyaları içerir. Bu dizin, işlemler ve sistem hizmetleri tarafından kullanılan PID dosyaları, soketler gibi geçici bilgileri saklar.
  • Örnek: /run/lock, /run/shm.

/sbin (System Binary)

  • Amacı: Sistem yöneticileri tarafından kullanılan temel yönetimsel komutları içerir. Bu dizindeki komutlar, genellikle normal kullanıcılar tarafından çalıştırılamaz ve sadece root kullanıcı tarafından kullanılır.
  • Örnek Komutlar: fdisk, mkfs, shutdown.

/srv (Service)

  • Amacı: Sunucu uygulamalarının (web, FTP, veri depolama) barındırdığı verileri içerir. Bu dizin, sunucu hizmetlerinin aktif olarak sunduğu verilerin saklandığı yerdir.
  • Örnek: Web sunucuları için /srv/www dizini kullanılabilir.

/sys

  • Amacı: Linux çekirdeği tarafından yönetilen başka bir sanal dosya sistemidir ve sistem donanımına ilişkin bilgileri içerir. Bu dizin, çekirdek modülleri ve cihazlar hakkında bilgi sağlar.
  • Örnek: /sys/class/net/eth0 dizini, ağ arabirimi hakkında bilgi içerir.

/tmp

  • Amacı: Geçici dosyalar için kullanılan bir dizindir. Uygulamalar ve sistem süreçleri, kısa süreli dosyaları bu dizinde depolar. tmp dizini genellikle sistem yeniden başlatıldığında temizlenir.
  • Örnek: Bir uygulama çalışırken geçici olarak dosya oluşturabilir ve /tmp dizinine kaydedebilir.

/usr (User System Resources)

  • Amacı: Kullanıcıya yönelik sistem dosyalarını içerir. Altında alt dizinler bulunur ve genellikle sistemin çalışması için gerekli olan ikincil uygulamaları ve kütüphaneleri barındırır. /usr, kök dosya sisteminin bir uzantısı gibidir.
  • Alt Dizinler:
    • /usr/bin: Kullanıcılar tarafından kullanılabilecek uygulama dosyaları.
    • /usr/sbin: Sistem yöneticisi tarafından kullanılacak uygulama dosyaları.
    • /usr/lib: Kütüphane dosyaları.
    • /usr/local: Yerel olarak yüklenen yazılımlar ve kütüphaneler.

/var (Variable)

  • Amacı: Zamanla büyüyen veya değişen dosyaları içerir. Günlük dosyaları, kuyruklar, kilit dosyaları ve geçici veri dosyaları burada saklanır.
  • Örnek:
    • /var/log: Sistem günlük dosyaları,
    • /var/spool: Yazdırma sırası gibi kuyruklar,
    • /var/www: Web sunucularının kök dizini (bazı dağıtımlarda).

Dosya Sisteminin Yapısının Önemi

Linux dosya sistemi, sistemin esnek, güvenilir ve güvenli bir şekilde çalışmasını sağlar. Hiyerarşik yapısı sayesinde kullanıcılar, sistem kaynaklarını düzenli bir şekilde yönetebilir ve dosya izinleri, montaj işlemleri gibi konular kolaylıkla kontrol edilebilir.

Linux dosya sistemi, çeşitli dosya sistem türlerini (EXT4, XFS, BTRFS gibi) destekler ve kullanıcıların farklı depolama ihtiyaçlarına uygun yapılandırmaları mümkün kılar.
 
Geri
Üst