Pardus Linux’ta /etc/profile.d/ Dizini Ortam Değişkenleri ve Oturum Başlangıç Betikleri
1. /etc/profile.d/ Nedir?
/etc/profile.d/ dizini, kullanıcı oturumu açılırken otomatik çalıştırılan kabuk (shell) betiklerinin bulunduğu dizindir.
Bu dizindeki dosyalar:
-
Sistem genelidir (tüm kullanıcılar için geçerlidir)
-
Login shell açıldığında otomatik yüklenir
-
Ortam değişkenleri (environment variables) tanımlamak için kullanılır
-
Alias, PATH, LANG, EDITOR gibi ayarları merkezi olarak yönetmeyi sağlar
📌 Pardus (Debian tabanlı) sistemlerde /etc/profile dosyası çalışırken bu dizini otomatik olarak tarar.
2. /etc/profile.d/ Ne Zaman Çalışır?
Aşağıdaki durumlarda çalışır:
-
Grafik arayüzden ilk girişte
-
TTY (Ctrl+Alt+F1…) ile girişte
-
SSH ile girişte
-
bash --loginkomutu ile
❌ Çalışmaz:
-
su(login olmayan) -
bash(non-login shell)
3. Çalışma Mantığı
Yani:
-
Sadece
.shuzantılı dosyalar -
Okunabilir (
chmod +r) -
Hata içermeyen betikler
yüklenir.
4. /etc/profile.d/ ile Neler Yapılır?
✔ Ortam Değişkenleri
-
PATH
-
JAVA_HOME
-
ANDROID_HOME
-
EDITOR
-
LANG / LC_ALL
✔ Alias Tanımları
-
ll
-
cls
-
grep renkli çıktı
✔ Öğrenci–Öğretmen Ayrımı
-
Grup bazlı değişkenler
-
Zaman veya yetki kısıtları
✔ Eğitim Ortamları
-
Python / Java / Kotlin ayarları
-
SDK yolları
-
Okul projelerine özel değişkenler
5. Basit Bir Örnek
Örnek 1: Ortak PATH Tanımı
📄 /etc/profile.d/okul-path.sh
🔹 Tüm kullanıcılar için geçerli
🔹 Sistem yeniden başlatılmadan yeni girişte aktif olur
6. Alias Tanımı Örneği
📄 /etc/profile.d/aliaslar.sh
📌 Öğrenciler için terminal kullanımını kolaylaştırır.
7. Öğretmen – Öğrenci Ayrımı (TSOMTAL Örneği)
Varsayım:
-
Öğretmen grubu:
teachers -
Öğrenci grubu:
students
📄 /etc/profile.d/rol-bazli.sh
🎯 Merkezi rol yönetimi
🎯 Samba AD + Pardus entegrasyonuna uygundur
8. Ders Ortamları İçin Örnekler
Python Eğitim Ortamı
📄 /etc/profile.d/python-egitim.sh
Java / Kotlin (Mobil Uygulamalar)
9. Grafik Ortam Uyarısı (ETAP 23)
📌 /etc/profile.d/ betikleri ilk girişte çalışır.
Grafik ortamda bazen .bashrc ile karışabilir.
📌 GUI için:
-
/etc/environment -
/etc/security/pam_env.conf
ile birlikte düşünülmelidir.
10. Güvenlik ve En İyi Uygulamalar
✅ Her dosya .sh uzantılı olsun
✅ Karmaşık scriptleri burada yazmayın
✅ Root yetkisi gerektiren komutlar koymayın
❌ rm, shutdown, reboot gibi komutlar kullanmayın
📌 /etc/profile.d/ → ortam ayarları içindir, servis değildir
11. Test Etme
veya
Aktif ortam değişkenleri:
12. /etc/profile.d/ – Diğer Dizilerle Karşılaştırma
| Dizin | Amaç |
|---|---|
/etc/profile.d/ | Sistem geneli login ayarları |
~/.bashrc | Kullanıcı özel |
/etc/environment | GUI dahil sabit değişkenler |
/etc/security/ | Limitler & güvenlik |
/etc/pam.d/ | Oturum kontrolü |
13. Okul Ortamları İçin Özet
🎓 TSOMTAL / ETAP 23 için ideal kullanım:
-
Öğretmen–öğrenci farkı
-
Ders bazlı ortamlar
-
Terminal standardizasyonu
-
Merkezi ve güvenli yapı
Aşağıdaki şablon TSOMTAL için “tak-çalıştır” mantığında hazırlanmış bir /etc/profile.d/ paket taslağıdır:
-
✅ Samba AD grup bazlı (teachers / students / itadmins vb.) otomatik yükleme
-
✅ ETAP 23 grafik oturum uyumlu (GUI’da da değişkenlerin görünmesi)
-
✅ Yönetilebilir, log’lu, çakışma önleyici yapı
Not: Bu yapı SSSD veya Winbind ile domaine katılmış istemcilerde çalışır. Grup kontrolünü
id -nGile yapıyoruz (en uyumlusu).
1) Paket Dizini (Önerilen)
Makinenizde bir klasör açın:
Ağaç şöyle olacak:
2) ETAP 23 Grafik Oturum Uyumu (En kritik bölüm)
A) GUI için “kalıcı” değişkenler: /etc/environment.d/10-tsomtal.conf
📄 tsomtal-profile-pack/etc/environment.d/10-tsomtal.conf
Bu dosya GUI’da da etkilidir. (Modern Debian/Pardus’ta en temiz yöntem)
B) Xsession ile garanti yükleme: /etc/X11/Xsession.d/10tsomtal-environment
📄 tsomtal-profile-pack/etc/X11/Xsession.d/10tsomtal-environment
3) /etc/profile.d/ Dosyaları
3.1 Ortak çekirdek: 00-tsomtal-common.sh
📄 tsomtal-profile-pack/etc/profile.d/00-tsomtal-common.sh
3.2 Samba AD Grup tespiti (tek yerde): 10-tsomtal-ad-groups.sh
📄 tsomtal-profile-pack/etc/profile.d/10-tsomtal-ad-groups.sh
3.3 Öğretmen politikası: 20-tsomtal-teachers.sh
📄 tsomtal-profile-pack/etc/profile.d/20-tsomtal-teachers.sh
3.4 Öğrenci politikası: 20-tsomtal-students.sh
📄 tsomtal-profile-pack/etc/profile.d/20-tsomtal-students.sh
3.5 Hata ayıklama (opsiyonel): 90-tsomtal-debug.sh
📄 tsomtal-profile-pack/etc/profile.d/90-tsomtal-debug.sh
4) “GUI + Terminal aynı olsun” uygulama aracı (Opsiyonel ama faydalı)
📄 tsomtal-profile-pack/usr/local/sbin/tsomtal-env-apply
5) Kurulum (Hızlı Kurulum)
Bu şablonu hedef ETAP 23 istemcide kurmak için:
Çıkış-giriş yapın (veya test):
GUI test (oturum açıkken terminalde):
6) Samba AD Tarafında Grup Standardı (Öneri)
Samba AD üzerinde şu grupları standartlaştırın:
-
teachers -
students -
itadmins -
(opsiyonel)
okul_yonetim,lab11a,lab10bvb.
Linux istemcide doğrulama:
Yorumlar