Pardus /etc/systemd/ → Servis Yönetiminin Merkezi
Linux işletim sistemlerinde servislerin (daemon) nasıl başlatılacağı, durdurulacağı, yeniden başlayacağı ve sistem açılış/kapanış süreçlerine nasıl entegre olacağı systemd tarafından kontrol edilir.
Pardus (Debian tabanlı) dağıtımlarda systemd varsayılan servis yöneticisidir.
Bu eğitim makalesi ile /etc/systemd/ dizinini, yapısını, servis dosyalarını, hedef (target) yapılarını, journal loglarını ve yönetim komutlarını detaylı şekilde öğreneceksiniz.
🔹 1. systemd Nedir?
Systemd, Linux sistemlerinde:
-
Servisleri yönetir
-
Boot (başlangıç) sırasını belirler
-
Log sistemini sağlar (journald)
-
Zamanlayıcı (timer) oluşturur
-
Bağımlılıkları çözer
-
System-wide konfigürasyonları kontrol eder
PID 1 olarak çalışan ana süreçtir.
🔹 2. /etc/systemd/ Dizini Tam Olarak Neyi Tutar?
/etc/systemd/ dizini, systemd’nin kullanıcı tarafından özelleştirilen ayarlarının bulunduğu dizindir.📁 Dizinin Alt Klasörleri
2.1 /etc/systemd/system/
➡️ En önemli klasördür.
-
Yerel servis dosyaları burada tutulur.
-
Bu klasördeki dosyalar /lib/systemd/system altındaki dosyaların üzerinde önceliklidir.
-
Yani override (üstüne yazma) buradan yapılır.
Örnekler:
-
Custom servis dosyaları/etc/systemd/system/tahta-kapat.service
-
Timer dosyaları/etc/systemd/system/backup.timer
-
Mount birimleri/etc/systemd/system/mnt-paylasim.mount
-
Otomatik çalıştırılan scriptler için unit dosyaları
2.2 /etc/systemd/user/
Kullanıcı seviyesinde (system-wide olmayan) servisler için kullanılır.
2.3 /etc/systemd/network/
Eğer systemd-networkd kullanıyorsanız network ayarları buradadır.
Dosya tipleri:
-
.network
-
.netdev
-
.link
2.4 /etc/systemd/resolved.conf.d/
DNS yapılandırması yapılır (systemd-resolved aktifse).
2.5 /etc/systemd/logind.conf.d/
Giriş/çıkış, oturum yönetimi (idle süreleri, kapanma, uyku davranışları).
🔹 3. Unit Dosyası Nedir?
Systemd’nin kullandığı yapılandırma dosyalarına unit denir.
Unit türleri:
| Unit Türü | Görevi |
|---|---|
| service | Servis yönetir |
| socket | Soket üzerinden servis tetikleme |
| device | Donanım yönetimi |
| mount | Bir dosya sistemini bağlama |
| automount | Gerekince otomatik bağlama |
| timer | Servisleri zamanlama |
| target | Boot seviyeleri |
| path | Dosya/dizin değişimini izleme |
| snapshot | Anlık sistem durumu |
🔹 4. Servis Dosyalarının Yapısı
Örnek: /etc/systemd/system/tahta-kapat.service
✔ Bölümlerin Anlamı
[Unit]
Servisin genel bilgileri:
-
Açıklama
-
Başlama sırası
-
Bağımlılıklar
[Service]
Asıl çalışacak komutlar burada.
-
ExecStart
-
ExecStop
-
ExecReload
-
Type (simple, oneshot, forking vb.)
[Install]
Servisin hangi hedef altında çalışacağı:
-
multi-user.target (genelde sunucu modunda)
-
graphical.target (masaüstü)
-
sockets.target
-
timers.target
🔹 5. systemd Yönetim Komutları
✔ Servis Başlatma/Durdurma
✔ Servisin Açılışta Çalışmasını Aç/Kapat
✔ Durum Kontrolü
🔹 6. systemctl Daemon Reload
Yeni bir servis dosyası oluşturduğunuzda zorunludur:
🔹 7. Timer Dosyaları (Cron’un Modern Hali)
Timer dosyası bir servis dosyasını zamanlamak içindir.
Örnek: Her gün 17:00’de tahtayı kapatma
Timer dosyası:
Timer’ı aktifleştirme:
🔹 8. Target (Runlevel Karşılığı)
Systemd, Runlevel yerine target kullanır:
| Target | Eski Runlevel | Anlamı |
|---|---|---|
| poweroff.target | 0 | Sistemi kapat |
| rescue.target | 1 | Kurtarma modu |
| multi-user.target | 3 | Çoklu kullanıcı (sunucu modu) |
| graphical.target | 5 | Grafik arayüz |
| reboot.target | 6 | Yeniden başlat |
🔹 9. journalctl ile Log Analizi
Systemd loglarını journalctl yönetir.
Tüm loglar:
Bir servise ait loglar:
Son 100 log:
Canlı takip:
🔹 10. Örnek: Okul İçin Profesyonel Servis Yapısı
Ek geliştirme:
-
Haftasonu çalışmasın
-
Log dosyasına gün yazsın
-
Geri sayım uyarısı çıkaran script eklenebilir
İstersen tüm dosyaları hazır kullanıma uygun olarak oluşturabilirim.
🔹 11. Servis Override (Üzerine Yazma)
Mevcut bir servisin ayarını değiştirmek için:
Açılan dosya:
Kaydet → otomatik override.conf oluşur.
🔹 12. /lib/systemd/system/ ile Farkı
| Klasör | Açıklama |
|---|---|
| /lib/systemd/system | Paket ile gelen servis dosyaları |
| /etc/systemd/system | Kullanıcının oluşturduğu/özelleştirdiği servisler |
/etc içindeki dosyalar her zaman daha öncelikli çalışır.
📌 Sonuç: /etc/systemd/ → Tam Yönetim Merkezi
Bu dizin:
-
Servis oluşturma
-
Açılışta çalışma ayarı
-
Zamanlama (timer)
-
Mount yönetimi
-
Override
-
Target yapısı
gibi systemd’nin tüm gücünü kullanmamızı sağlar.

Yorumlar