Açık Kaynak İşletim Sistemleri

3 - Linux Dosya Sistemi ve Terminale Giriş

Emre Can Yılmaz

Ondokuz Mayıs Üniversitesi

2025

Giriş

  • Linux dosya sistemi hiyerarşisi ve temel dizinler
  • Dosya ve dizin kavramları

Linux Dosya Sistemi: Temel Felsefe

Linux’ta “Her şey bir dosyadır” felsefesi vardır:

  • Donanım aygıtları → dosya olarak temsil edilir
  • Süreçler → dosya olarak temsil edilir
  • Ağ soketleri → dosya olarak temsil edilir

Bu yaklaşım, sistemi tutarlı ve yönetilmesi kolay hale getirir.

Dosya Sistemi Hiyerarşisi - Genel Bakış

Linux, tek kök dizinli (single-root) hiyerarşik bir dosya sistemi kullanır.

/
├── bin/
├── boot/
├── dev/
├── etc/
├── home/
│   ├── kullanici1/
│   └── kullanici2/
├── lib/
├── media/
├── mnt/
├── opt/
├── proc/
├── root/
├── run/
├── sbin/
├── srv/
├── sys/
├── tmp/
├── usr/
└── var/

Kök Dizin (/) ve Hiyerarşi

Bütün dosya sistemi “/” (kök dizin) altında başlar.

  • Tek bir ağaç yapısı - her şey tek bir kök noktasından dallanır
  • Farklı diskler ve bölümler bu ağaç yapısına bağlanır (mount)
  • Her dizinin belirli bir amacı vardır
  • Windows’taki C:, D: gibi sürücü harflerinin aksine, Linux’ta tüm depolama aygıtları tek bir ağaç yapısına bağlanır

Temel Dizinler ve Görevleri

/bin - Temel komut dosyaları

  • Sistemin çalışması için gereken temel uygulamalar
  • Örnek: ls, cp, mv, rm, mkdir
  • Tüm kullanıcılar tarafından erişilebilir
ls -la /bin | head -5
toplam 12M
lrwxrwxrwx  1 root   root       7 Oca 15 10:23 bash -> bash.sh
-rwxr-xr-x  1 root   root     1.2M Oca  5 09:34 bash.sh
-rwxr-xr-x  1 root   root    35K Ağu 22  2021 bunzip2
-rwxr-xr-x  1 root   root    35K Ağu 22  2021 bzcat

/sbin - Sistem yönetim komutları

  • Yetkili kullanıcı (Sistem Yöneticisi) için araçlar
  • Örnek: fdisk, mkfs, shutdown, reboot

/etc - Sistem yapılandırma dosyaları

  • Tüm sistemin yapılandırma dosyaları
  • Örnek: /etc/passwd, /etc/fstab, /etc/hostname
ls -la /etc | head -5
toplam 1.2M
drwxr-xr-x 167 root root    12K Şub 20 09:12 .
drwxr-xr-x  23 root root    4.0K Şub 15 18:22 ..
drwxr-xr-x   3 root root    4.0K Oca 10 14:35 acpi
-rw-r--r--   1 root root    3.0K Eki 20  2020 adduser.conf

/home - Kullanıcı dizinleri

  • Her kullanıcı için ayrı bir ev dizini
  • Örnek: /home/ahmet, /home/ayse
  • Kullanıcı dosyaları ve kişisel ayarlar burada saklanır
ls -la /home
toplam 12K
drwxr-xr-x   3 root   root   4.0K Şub 12 08:23 .
drwxr-xr-x  23 root   root   4.0K Şub 15 18:22 ..
drwxr-xr-x 136 ahmet  ahmet  4.0K Şub 24 21:15 ahmet

/usr - Kullanıcı programları ve veriler

  • Örnek: /usr/bin - Kullanıcı komutları
  • Örnek: /usr/lib - Kütüphaneler

/var - Değişken veriler

  • Loglar, cache, geçici dosyalar
  • Örnek: /var/log - Sistem logları
  • Örnek: /var/cache - Uygulama önbellek verileri

/tmp - Geçici dosyalar

  • Sistem yeniden başlatıldığında temizlenir
  • Herkes yazabilir, herkes okuyabilir
  • Geçici dosyaları saklamak için güvenli bir yer
ls -la /tmp | head -5
toplam 56K
drwxrwxrwt  14 root   root   4.0K Şub 24 22:05 .
drwxr-xr-x  23 root   root   4.0K Şub 15 18:22 ..
drwx------   2 ahmet  ahmet  4.0K Şub 24 19:45 mozilla_ahmet0
drwx------   3 ahmet  ahmet  4.0K Şub 24 09:12 snap-private-tmp

/boot - Önyükleme dosyaları

  • Çekirdek (kernel) ve önyükleyici (bootloader)
  • Sistem açılışı için gerekli dosyalar

/dev - Aygıt dosyaları

  • Donanım ve sanal aygıtların dosya temsilleri
  • Örnek: /dev/sda (disk), /dev/tty (terminal)

/proc ve /sys - Sanal dosya sistemleri

  • Sistem ve çekirdek bilgilerine erişim
  • Gerçekte diskte değil, bellekte yer alırlar

/srv Dizini

  • Site-specific hizmetler için veri dizinidir
  • Sistemin sunduğu servisler için kullanılır
  • Örneğin:
    • /srv/www - Web sunucusu dosyaları
    • /srv/ftp - FTP sunucusu dosyaları
    • /srv/git - Git repolarını barındırmak için

/opt Dizini

  • İsteğe bağlı (optional) yazılım paketleri için kullanılır
  • Resmi paket yöneticisi dışında kurulan yazılımlar
  • Her uygulama kendi dizin yapısına sahiptir
  • Örneğin:
    • /opt/google/chrome - Google Chrome
    • /opt/sublime_text - Sublime Text Editor
    • /opt/dropbox - Dropbox uygulaması

/mnt Dizini

  • Geçici olarak bağlanan dosya sistemleri için bağlama noktasıdır
  • Harici diskler, USB bellekler, ağ paylaşımları için kullanılır
  • Manuel olarak mount edilen sistemler genelde buraya bağlanır
  • Örneğin:
    • /mnt/usb - USB disk
    • /mnt/cdrom - CD-ROM
    • /mnt/network - Ağ sürücüleri

Not: Modern sistemlerde /media dizini de benzer amaçlar için kullanılmaktadır, ancak genelde otomatik bağlanan aygıtlar için tercih edilir.

root Dizini

  • Kök kullanıcısının (root) ev dizinidir
  • Root kullanıcısının kişisel dosyaları ve ayarları burada saklanır
  • Root kullanıcısı, sistemin en yüksek yetkili kullanıcısıdır

Dosyalarla ilgili diğer bilgiler

  • Dosyaların uzantılarının olması gerekmiyor. Örnek: ornek.txt
  • Dosya isimlerinde “*, ?” gibi özel karakterlerin kullanımından kaçınılmalı.
  • Dosya adında / karakterini kullanamazsınız.
  • Dosya adına boşluk ya da özel karakter konması gerekiyorsa ilgili karakterin önüne
  • kaçış karakteri  konulmalı.
  • Dosya isimleri 255 karakteri aşamaz.
  • Dosya isimlerinde küçük ve büyük harf duyarlılığı var.
touch /tmp/foo
touch /tmp/FOO

Dizinler ve Özellikleri

Dizin (Directory/Folder) nedir?

  • Diğer dosya ve dizinleri içeren özel bir dosya türü
  • İçindeki dosyaların listesini ve referanslarını tutar
  • Her dizin, “.” (kendisi) ve “..” (üst dizin) girdilerini içerir

Dosya Sistemi Hiyerarşisi Özeti

Dizin İçerik
/bin Temel sistem komutları
/boot Önyükleme dosyaları ve çekirdek
/dev Aygıt dosyaları
/etc Sistem yapılandırma dosyaları
/home Kullanıcı ev dizinleri
/lib Sistem kütüphaneleri
/media Taşınabilir aygıtlar için bağlama noktaları
/mnt Geçici dosya sistemleri için bağlama noktaları
/opt İsteğe bağlı yazılımlar
/proc Süreç bilgileri (sanal dosya sistemi)
/root Kök kullanıcısının ev dizini
/sbin Sistem yönetim komutları
/tmp Geçici dosyalar
/usr Çoğu uygulama ve dosyalar
/var Değişken veriler (log, spool, cache)

Sorular?