Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

Linux dosya sistemi, güçlü ve esnek yapısıyla sistem yöneticileri ve geliştiriciler için büyük kolaylık sağlar. Linux’ta dosya ve dizin yapısını anlamak, sistem yönetimi ve komut satırı kullanımı açısından kritik bir öneme sahiptir. Bu yazıda, Linux dosya sistemini, temel dizinleri, dosya listeleme komutlarını ve detaylarını ele alacağım.

Linux Dosya Sistemi Yapısı

Linux, Filesystem Hierarchy Standard (FHS)‘a uygun olarak organize edilmiştir. Tüm dosyalar ve dizinler, kök dizin (/) altında düzenlenmiştir.

1-1024x508 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

Linux Dizin Yapısı

Linux’ta kök dizin / ile temsil edilir dedik ve tüm dosya sisteminin başlangıç noktasıdır. Ana dizinler ve görevleri şunlardır:

Temel Dizinler ve Görevleri

DizinAçıklama
/Kök dizin, tüm sistemin başlangıç noktasıdır.
/binTemel kullanıcı komutlarının bulunduğu dizindir (örn: ls, cp, mv).
/sbinSistem yöneticisi komutları bulunur (örn: fdisk, reboot).
/bootÇekirdek (vmlinuz), bootloader dosyaları (GRUB gibi) buradadır.
/devSistem aygıt dosyaları (örn: sda, tty).
/etcKonfigürasyon dosyaları bulunur.
/homeKullanıcı dizinleri (/home/kullanici_adı).
/lib, /lib64Paylaşılan kütüphaneler ve çekirdek modülleri bulunur.
/mntGeçici olarak bağlanan dosya sistemleri için.
/mediaÇıkarılabilir aygıtlar (USB, CD/DVD) için bağlama noktaları.
/optOpsiyonel yazılımlar.
/procÇalışan süreçler ve sistem bilgileri (sanal dosya sistemi).
/rootRoot kullanıcısının ana dizini.
/runSistem ve servisler için geçici dosyalar.
/srvSunucu verileri için.
/sysDonanım ve çekirdek bilgileri içerir.
/tmpGeçici dosyalar (yeniden başlatıldığında silinir).
/usrKullanıcı uygulamaları ve kütüphaneleri içerir.
/varDeğişken veriler (loglar, kuyruklar, cache).

Linux Dosya Sistemi Türleri

Linux farklı dosya sistemlerini destekler:

  • ext4: Modern Linux sistemlerinde yaygın olarak kullanılan bir dosya sistemi.
  • xfs: Büyük ölçekli sistemler için optimize edilmiş.
  • btrfs: Anlık görüntüleme (snapshot) destekler.
  • vfat: Windows uyumlu dosya sistemleri için.
  • ntfs: Windows NTFS dosya sistemi desteği.

Linux Dosya ve Dizin İşlemleri

Aşağıda, temel dosya ve dizin işlemlerine dair komutlar bulunmaktadır.

Dizin İşlemleri

📂 Mevcut dizini öğrenme:

pwd
image-2 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

📂 Dizin listeleme:

ls -l
ls -la  # Gizli dosyalarla birlikte listeleme
ls -lh  # Boyutları okunabilir formatta gösterme
ls -lt   # Dosyaları tarihe göre sıralar
ls -lS   # Dosyaları boyutlarına göre sıralar
ls -lr   # Ters sıralama yapar
ls -lF   # Dosya türlerini gösteren semboller ekler
ls *.txt# Sadece .txt uzantılı dosyaları listeler.
ls a*   # a harfi ile başlayan dosyaları listeler.
...
2-14 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

📂 Yeni dizin oluşturma:

mkdir yeni_dizin
mkdir -p /home/kullanici/proje/logs  # Alt dizinleriyle birlikte oluşturma
image-3 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

📂 Dizin silme:

rmdir bos_dizin  # Boş dizini silme
rm -r dizin_adi  # İçinde dosya olan bir dizini silme
image-4 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

📂 Dizin değiştirme:

cd /home/kullanici
cd ..  # Bir üst dizine çık
cd ~   # Kullanıcının ana dizinine git
cd -   # Önceki dizine dön
image-5 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

Dosya İşlemleri

📄 Dosya oluşturma:

touch dosya.txt  # Boş bir dosya oluşturma
echo "Merhaba Linux" > dosya.txt  # İçerik ekleyerek dosya oluşturma
image-6 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

📄 Dosya içeriğini görüntüleme:

cat dosya.txt
less dosya.txt  # Sayfa sayfa görüntüleme
head -n 5 dosya.txt  # İlk 5 satırı göster
tail -n 5 dosya.txt  # Son 5 satırı göster
image-7 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

📄 Dosya kopyalama:

cp dosya.txt yedek.txt
cp -r dizin1 dizin2  # Dizinleri kopyalama
image-8 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

📄 Dosya taşıma ve yeniden adlandırma:

mv eski_ad.txt yeni_ad.txt  # Dosya adını değiştirme
mv dosya.txt /home/kullanici/dokumanlar/  # Başka dizine taşıma
image-9 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

📄 Dosya silme:

rm dosya.txt
rm -rf dizin_adi  # İçinde dosya olan dizini zorla silme
image-10 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

Dosya Bilgileri ve Kavramlar

Bir dosyanın türü, izinleri, sahiplikleri veya zaman damgası gibi ayrıntıları öğrenmek için ls komutuna -l seçeneğini kullanabiliriz.

image-11 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

File Type (Dosya Türü)

İlk karakter, dosyanın türünü gösterir.

  • d dizin – Diğer dosyaları depolamak için kullanılan bir dosya.
  • - normal dosya – Okunabilir dosyaları, resim dosyalarını, ikili dosyaları ve sıkıştırılmış dosyaları içerir.
  • l sembolik bağlantı – Başka bir dosyaya işaret eder.
  • c karakter dosyası – Donanımla iletişim kurmak için kullanılır.
  • b blok aygıtı – Donanımla iletişim kurmak için kullanılır.
  • s soket – İşlemler arasında iletişime izin verir.
  • p pipe – İşlemler arasında iletişime izin verir.
3-11 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

Permissions (İzinler)

Kullanıcı (u), grup (g) ve diğerleri (o) için okuma (r), yazma (w) ve çalıştırma (x) haklarını gösterir.

4-10 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

Hard Link Count (Bağlantı Sayısı)

Dosyanın sahip olduğu hard link sayısını gösterir. Bir dosyanın birden fazla adı olabilir.

5-8 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

User Owner (Kullanıcı Sahibi)

Dosyanın sahibi olan kullanıcı adıdır.

6-7 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

Group Owner (Grup Sahibi)

Dosyanın ait olduğu grup adıdır.

7-5 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

File Size (Dosya Boyutu)

Byte cinsinden dosya boyutunu gösterir.

8-5 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

Timestamp (Zaman Damgası)

Dosyanın en son değiştirildiği tarih ve saati gösterir.

9-3 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

Filename (Dosya Adı)

Dosyanın adını gösterir.

10 Linux Dosya ve Dizin Yapısı: Bilinmesi Gerekenler

Sonuç

Linux’ta dosya ve dizin yönetimi, sistem yöneticileri ve geliştiriciler için temel bir beceridir. ls komutunu etkili kullanarak dosya listelemeyi optimize edebilir, dosya izinlerini yönetebilir ve sistemde aradığınız bilgilere hızlıca ulaşabilirsiniz. Umarım bu rehber size fayda sağlamıştır.

Share this content:

Merhabalar,ben Barış.Ağ ve sistem alanlarında kendimi geliştirmekteyim.Öğrenme sürecimde edindiğim tecrübeleri sizlerle paylaşarak fayda sağlamayı amaçlıyorum.

Yorum gönder