Linux dünyasına adım atanların en çok sorduğu sorulardan biri şudur:
“Windows’taki gibi neden C: ve D: yok da her şey / diye başlıyor?”
Cevap aslında Linux’un dosya sistemi mantığında gizli. Linux, farklı diskleri, aygıtları ve hatta süreçleri tek bir dosya ağacı altında toplar. Yani Linux için her şey bir dosyadır.
Bu yazıda hem sistem yöneticilerine hitap eden teknik detayları, hem de Linux’u keşfetmek isteyenlere yol gösterecek açıklamaları bulacaksınız.
Linux’ta Dosya Sistemi Mantığı
Windows gibi işletim sistemlerinde diskler ayrı ayrı harflerle gösterilir (C:, D:). Linux’ta ise tek bir kök dizin (/) vardır.
Yeni bir disk eklediğinizde,
USB taktığınızda,
Hatta ağ üzerinden bir dosya sistemi bağladığınızda,
bunların hepsi mevcut ağaç yapısına eklenir.
Linux’un felsefesi basittir:
Her şey bir dosyadır.
- Donanım bileşenleri (/dev/sda, /dev/tty)
- Çalışan süreçler (/proc)
- Konfigürasyon dosyaları (/etc)
- Kullanıcı dosyaları (/home)
Önemli Dizinler ve Görevleri
Aşağıda Linux sisteminde karşınıza çıkacak temel dizinleri açıklıyorum.
/ (Root Dizini)
Her şeyin başladığı kök dizin. Tüm dosyalar ve klasörler buradan dallanır.
/bin → Kullanıcı Komutları
Günlük kullanılan temel komutların bulunduğu yer.
Örnek: ls, cp, mv, rm
/sbin → Sistem Yöneticisi Komutları
Sistem yönetimi için gerekli araçlar.
Örnek: shutdown, reboot, mkfs
/etc → Konfigürasyon Dosyaları
Tüm sistem ayarlarının bulunduğu dizin.
/etc/passwd → Kullanıcı bilgileri
/etc/ssh/sshd_config → SSH sunucu ayarları
/var → Değişken Veriler
Sürekli değişen log, cache, mail gibi veriler burada tutulur.
/var/log → Sistem logları
/var/spool → Kuyruk işlemleri
/home → Kullanıcı Dosyaları
Her kullanıcının kişisel alanı.
Örnek: /home/aziz
/root → Root Kullanıcı Dizini
Süper kullanıcıya özel home dizini.
/usr → Yazılımlar ve Kaynaklar
/usr/bin → Uygulamalar
/usr/lib → Kütüphaneler
/usr/share → Ortak dosyalar
/lib → Çekirdek Kütüphaneleri
Sistemin çalışması için gerekli temel kütüphaneler.
/proc → Sanal Dosya Sistemi
Sistemin kalbi gibidir. Çalışan süreçler ve donanım bilgileri dosya gibi tutulur.
/proc/cpuinfo → İşlemci bilgisi
/proc/meminfo → Bellek durumu
/dev → Donanım Aygıtları
Tüm donanımlar birer dosya olarak temsil edilir.
/dev/sda → Disk
/dev/tty → Terminal
/tmp → Geçici Dosyalar
Programların çalışırken oluşturduğu geçici veriler. Sistem yeniden başlatıldığında genellikle silinir.
Örnek dosya sistemi ağacı:
/
├── bin
├── etc
├── home
│ ├── aziz
│ └── user
├── root
├── var
│ └── log
├── usr
│ ├── bin
│ ├── lib
│ └── share
└── tmp
Linux dosya sistemi, ilk bakışta karmaşık görünse de mantığı oldukça nettir:
Tek bir ağaç yapısı,
Her şey dosya olarak temsil edilir,
Dağılım yerine düzen vardır.
Bu yapıyı kavradığınızda, loglara erişmekten diskleri yönetmeye kadar birçok işi çok daha kolay yapabilirsiniz.
Linux’ta sistem yöneticisi olmak isteyen herkes için dosya sistemi yapısını anlamak ilk büyük adım diyebiliriz. Bu adımı tamamladığımıza göre diğer adımlarda görüşmek üzere 🐧
“Windows’taki gibi neden C: ve D: yok da her şey / diye başlıyor?”
Cevap aslında Linux’un dosya sistemi mantığında gizli. Linux, farklı diskleri, aygıtları ve hatta süreçleri tek bir dosya ağacı altında toplar. Yani Linux için her şey bir dosyadır.
Bu yazıda hem sistem yöneticilerine hitap eden teknik detayları, hem de Linux’u keşfetmek isteyenlere yol gösterecek açıklamaları bulacaksınız.
Linux’ta Dosya Sistemi Mantığı
Windows gibi işletim sistemlerinde diskler ayrı ayrı harflerle gösterilir (C:, D:). Linux’ta ise tek bir kök dizin (/) vardır.
Yeni bir disk eklediğinizde,
USB taktığınızda,
Hatta ağ üzerinden bir dosya sistemi bağladığınızda,
bunların hepsi mevcut ağaç yapısına eklenir.
Linux’un felsefesi basittir:
Her şey bir dosyadır.
- Donanım bileşenleri (/dev/sda, /dev/tty)
- Çalışan süreçler (/proc)
- Konfigürasyon dosyaları (/etc)
- Kullanıcı dosyaları (/home)
Önemli Dizinler ve Görevleri
Aşağıda Linux sisteminde karşınıza çıkacak temel dizinleri açıklıyorum.
/ (Root Dizini)
Her şeyin başladığı kök dizin. Tüm dosyalar ve klasörler buradan dallanır.
/bin → Kullanıcı Komutları
Günlük kullanılan temel komutların bulunduğu yer.
Örnek: ls, cp, mv, rm
/sbin → Sistem Yöneticisi Komutları
Sistem yönetimi için gerekli araçlar.
Örnek: shutdown, reboot, mkfs
/etc → Konfigürasyon Dosyaları
Tüm sistem ayarlarının bulunduğu dizin.
/etc/passwd → Kullanıcı bilgileri
/etc/ssh/sshd_config → SSH sunucu ayarları
/var → Değişken Veriler
Sürekli değişen log, cache, mail gibi veriler burada tutulur.
/var/log → Sistem logları
/var/spool → Kuyruk işlemleri
/home → Kullanıcı Dosyaları
Her kullanıcının kişisel alanı.
Örnek: /home/aziz
/root → Root Kullanıcı Dizini
Süper kullanıcıya özel home dizini.
/usr → Yazılımlar ve Kaynaklar
/usr/bin → Uygulamalar
/usr/lib → Kütüphaneler
/usr/share → Ortak dosyalar
/lib → Çekirdek Kütüphaneleri
Sistemin çalışması için gerekli temel kütüphaneler.
/proc → Sanal Dosya Sistemi
Sistemin kalbi gibidir. Çalışan süreçler ve donanım bilgileri dosya gibi tutulur.
/proc/cpuinfo → İşlemci bilgisi
/proc/meminfo → Bellek durumu
/dev → Donanım Aygıtları
Tüm donanımlar birer dosya olarak temsil edilir.
/dev/sda → Disk
/dev/tty → Terminal
/tmp → Geçici Dosyalar
Programların çalışırken oluşturduğu geçici veriler. Sistem yeniden başlatıldığında genellikle silinir.
Örnek dosya sistemi ağacı:
/
├── bin
├── etc
├── home
│ ├── aziz
│ └── user
├── root
├── var
│ └── log
├── usr
│ ├── bin
│ ├── lib
│ └── share
└── tmp
Linux dosya sistemi, ilk bakışta karmaşık görünse de mantığı oldukça nettir:
Tek bir ağaç yapısı,
Her şey dosya olarak temsil edilir,
Dağılım yerine düzen vardır.
Bu yapıyı kavradığınızda, loglara erişmekten diskleri yönetmeye kadar birçok işi çok daha kolay yapabilirsiniz.
Linux’ta sistem yöneticisi olmak isteyen herkes için dosya sistemi yapısını anlamak ilk büyük adım diyebiliriz. Bu adımı tamamladığımıza göre diğer adımlarda görüşmek üzere 🐧