Linux/Pardus Sistemlerinde Geçici Dosya Sistemi (/tmp)

Pardus ve genel olarak Linux tabanlı işletim sistemlerinde /tmp dizini, sistemin "geçici hafızası" veya "kara tahtası" gibidir. Bu makalede, bu dizinin neden kritik olduğunu, nasıl çalıştığını ve yönetimini öğreneceğiz.


1️⃣ /tmp Dizini Nedir?

/tmp dizini, Linux sistemlerde geçici (temporary) dosyaların tutulduğu standart bir dizindir. Pardus da dâhil olmak üzere Linux Filesystem Hierarchy Standard (FHS)’e uyan tüm dağıtımlarda bulunur.

📌 Temel amaç:

  • Programların geçici olarak ihtiyaç duyduğu dosyaları saklamak

  • Sistem yeniden başlatıldığında veya belirli aralıklarla temizlenebilmek

Basitçe:

/tmp = anlık işlerin çöplüğü ama kontrollü olanı


2️⃣ /tmp Dizininin Temel Özellikleri

ÖzellikAçıklama
Evrensel erişimTüm kullanıcılar yazabilir
Kısa ömürDosyalar kalıcı değildir
Yeniden başlatmaÇoğu sistemde reboot sonrası silinir
PerformansGenellikle hızlı disk veya RAM desteklidir

🔐 Güvenlik için sticky bit ile korunur.


3️⃣ Sticky Bit Nedir? (/tmp neden güvenlidir?)

/tmp dizini şu izinlerle gelir:

ls -ld /tmp

Örnek çıktı:

drwxrwxrwt 10 root root 4096 Jan 29 10:00 /tmp

🔎 Buradaki t harfi sticky bit’i ifade eder.

📌 Sticky bit sayesinde:

  • Herkes dosya oluşturabilir

  • ❌ Ama sadece dosya sahibi veya root silebilir

Bu, çok kullanıcılı sistemlerde kritik bir güvenlik önlemidir.


4️⃣ Pardus’ta /tmp Nasıl Kullanılır?

🧩 Programlar Tarafından

  • Paket yöneticisi (apt)

  • Tarayıcılar (indirilen geçici dosyalar)

  • Ofis uygulamaları

  • Derleme araçları (gcc, make)

👤 Kullanıcı Tarafından

cd /tmp
touch deneme.txt
nano notlar.tmp

⚠️ Önemli: Buraya önemli dosya koyulmaz.


5️⃣ /tmp Dosyaları Ne Zaman Silinir?

Pardus (systemd kullanan sistemlerde):

  • 🔁 Sistem yeniden başlatıldığında

  • ⏱️ Belirli bir süre erişilmeyen dosyalar için

  • 🧹 systemd-tmpfiles servisi tarafından

Kontrol:

systemctl status systemd-tmpfiles-clean

6️⃣ /tmp ile /var/tmp Arasındaki Fark

Özellik/tmp/var/tmp
Yeniden başlatmaSilinebilirGenellikle korunur
KullanımÇok kısa süreliBiraz daha uzun süreli
TemizlikOtomatik, sıkDaha seyrek

📌 Uzun sürecek geçici dosyalar için /var/tmp tercih edilir.


7️⃣ RAM Disk (tmpfs) Olarak /tmp

Bazı Pardus sistemlerinde /tmp, RAM üzerinde (tmpfs) çalışır.

Kontrol:

mount | grep /tmp

Örnek:

tmpfs on /tmp type tmpfs (rw,nosuid,nodev)

🎯 Avantajlar:

  • Çok hızlı

  • Disk aşınmasını azaltır

⚠️ Dezavantaj:

  • RAM dolar ise sistem yavaşlar


8️⃣ Güvenlik Riskleri ve Önlemler

⚠️ Olası Riskler

  • Disk dolması (log yağmuru)

  • Zararlı script bırakılması

  • Symlink saldırıları

✅ Alınan Önlemler

  • Sticky bit

  • noexec mount seçeneği (bazı sistemlerde)

  • Otomatik temizlik

Mount seçeneklerini kontrol et:

mount | grep /tmp

9️⃣ /tmp Ne Zaman Kullanılmalı?

✔ Kullan:

  • Script geçici çıktı

  • Test dosyaları

  • Kısa süreli indirmeler

❌ Kullanma:

  • Yedekler

  • Önemli belgeler

  • Uzun süre saklanacak veriler


🔟 Özet

  • /tmp, geçici ve güvenli bir çalışma alanıdır

  • Pardus’ta sistem ve kullanıcılar tarafından yoğun kullanılır

  • Veriler kalıcı değildir

  • Sticky bit sayesinde çok kullanıcılı sistemlerde güvenlidir

📌 Kural: /tmp = "kaybolursa üzülmeyeceğin dosyalar"


/tmp (Temporary), işletim sistemi ve çalışan uygulamalar tarafından geçici verileri depolamak için kullanılan standart bir dizindir. Bir program çalışırken büyük bir veri dosyasını işlemek, geçici kilit dosyaları oluşturmak veya oturum bilgilerini saklamak için burayı kullanır.

Temel Özellikleri:

  • Geçici Doğası: Genellikle sistem her yeniden başlatıldığında içeriği temizlenir.

  • Erişilebilirlik: Sistemdeki tüm kullanıcılar bu dizine dosya yazabilir, ancak güvenlik nedeniyle herkes sadece kendi dosyasını silebilir.

  • Performans: Modern Pardus sürümlerinde bu dizin genellikle fiziksel disk yerine RAM (tmpfs) üzerinde çalışır, bu da okuma/yazma hızını muazzam artırır.


2. /tmp Dizininin Çalışma Mantığı ve Güvenlik

Pardus'ta /tmp dizinine ls -ld /tmp komutuyla baktığınızda, izinlerin başında drwxrwxrwt ifadesini görürsünüz. Buradaki en sondaki "t" harfi, Sticky Bit (Yapışkan Bit) olarak adlandırılır.

  • Sticky Bit Nedir? Bu özellik, bir kullanıcının /tmp içinde başkasına ait olan dosyaları silmesini engeller. Herkes dosya oluşturabilir ama sadece kendi oluşturduğunu silebilir.


3. /tmp ile /var/tmp Arasındaki Fark

Pardus sisteminizde benzer işlev gören iki dizin bulunur. Aralarındaki fark hayati önem taşır:

Özellik/tmp/var/tmp
KalıcılıkYeniden başlatmada silinir.Yeniden başlatmada silinmez.
DepolamaGenelde RAM (tmpfs) üzerindedir.Fiziksel disk üzerindedir.
Kullanım AmacıAnlık, kısa süreli veriler.Uzun süreli ama geçici veriler (örn. büyük yedekleme parçaları).

4. Pardus’ta /tmp Dizini Yönetimi

Doluluk Kontrolü

Eğer /tmp dizini dolarsa, Pardus sisteminizde kararsızlıklar başlayabilir (örneğin grafik arayüz açılmayabilir). Doluluk oranını şu komutla kontrol edebilirsiniz:

df -h /tmp

Manuel Temizleme

Normal şartlarda Pardus bu dizini kendisi yönetir. Ancak manuel müdahale gerekirse, aktif kullanılan dosyaları silmemeye dikkat etmelisiniz. Genellikle 10 günden eski dosyaları silmek için şu komut kullanılır:

find /tmp -type f -atime +10 -delete

Not: Sistem çalışırken /tmp içindeki her şeyi körü körüne silmek, çalışan uygulamaların (X11, veritabanları vb.) çökmesine neden olabilir.


5. Özet: Dikkat Edilmesi Gerekenler

  1. Hassas Veri Saklamayın: Bilgisayar kapandığında bu veriler uçar.

  2. Güvenlik: /tmp dizini herkese açık olduğu için, buraya yazdığınız dosyaların izinlerini kısıtlı tutmak (chmod 600 gibi) iyi bir alışkanlıktır.

  3. RAM Kullanımı: Eğer /tmp dizininiz RAM üzerinde (tmpfs) ise, buraya çok büyük dosyalar kopyalamak sisteminizin donmasına neden olabilir.


Pardus sisteminizde /tmp dizininin nerede (RAM mi yoksa disk mi) barındırıldığını anlamak için terminale şu komutu yazabilirsiniz:

df -h /tmp

Bu komutun çıktısını beraber yorumlayalım:

  • Eğer "Filesystem" kısmında tmpfs yazıyorsa: Dizininiz RAM üzerinde çalışıyor demektir. Bu çok hızlıdır ancak sistem kapandığında her şey silinir.

  • Eğer /dev/sda1 veya /dev/nvme... gibi bir ifade görüyorsanız: Dizin fiziksel diskiniz üzerindedir. Sistem kapansa da yapılandırmaya göre dosyalar kalabilir (Pardus genellikle başlangıçta bunları yine de temizler).

RAM (tmpfs) Boyutunu Değiştirmek

Eğer /tmp alanınız RAM üzerindeyse ve dolup sisteminizi yavaşlatıyorsa, geçici olarak boyutunu artırmak için şu komutu kullanabilirsiniz:

sudo mount -o remount,size=2G /tmp

(Bu örnekte alanı 2 GB'a yükselttik.)


Pardus sisteminizde /tmp dizininin dolması nedeniyle sistemin (grafik arayüzün) açılmaması sık karşılaşılan bir durumdur. Bu sorunu çözmek ve bu dizinin otomatik temizleme ayarlarını yapılandırmak için şu adımları izleyebilirsiniz:


1. Dolu Bir /tmp Diziniyle Açılmayan Sistemi Kurtarma

Eğer Pardus kullanıcı giriş ekranında kalıyor veya masaüstü yüklenmiyorsa, muhtemelen /tmp dizini dolduğu için sistem geçici oturum dosyası oluşturamıyordur.

  1. TTY Ekranına Geçin: Giriş ekranındayken Ctrl + Alt + F2 tuşlarına basın.

  2. Giriş Yapın: Kullanıcı adınızı ve parolanızı yazın.

  3. Dizini Temizleyin: Aşağıdaki komutla güvenli bir şekilde temizlik yapın:

    sudo find /tmp -type f -atime +1 -delete

    (Bu komut 1 günden eski dosyaları siler).

  4. Sistemi Yeniden Başlatın: sudo reboot


2. Pardus'ta Otomatik Temizleme Ayarları

Pardus (Debian tabanlı olduğu için), /tmp temizliği için genellikle systemd-tmpfiles servisini kullanır.

Temizleme Periyodunu Değiştirmek

Eğer sistemin dosyaları daha sık (örneğin her gün) temizlemesini istiyorsanız şu dosyayı düzenleyebilirsiniz:

  1. sudo nano /usr/lib/tmpfiles.d/tmp.conf komutunu çalıştırın.

  2. Dosya içerisinde şu satırı bulun veya düzenleyin:

    q /tmp 1777 root root 1d

    (Buradaki 1d ifadesi, 1 günden eski dosyaların silineceği anlamına gelir. İhtiyacınıza göre 12h veya 2d yapabilirsiniz.)


3. Güvenlik Notu: /tmp Üzerinde Dosya İzinleri

/tmp dizini "herkese açık" olduğu için kötü niyetli yazılımların buraya dosya bırakıp çalıştırmasını engellemek isteyebilirsiniz. Eğer /tmp ayrı bir disk bölümü (partition) ise, /etc/fstab dosyasında şu parametreleri eklemek güvenliği artırır:

  • noexec: Bu dizinde hiçbir dosyanın çalıştırılmasına izin vermez.

  • nosuid: Kullanıcı yetkilerinin yükseltilmesini engeller.



Yorumlar

Bu blogdaki popüler yayınlar

Android Telefon/Tablet Ekranını Pardus ETAP 23 Yüklü Akıllı Tahtaya Yansıtma

Pardus Etap 23’de Unutulmuş Etap Yetkili Parolasını Sıfırlama

Pardus Etap 23 Yazıcı Kurulumu