Pardus Etap ve Pardus Server Arasında Otomatik NFS Paylaşımı ve Masaüstü Kısayolu Yapılandırması
Okullarda kullanılan Pardus ETAP etkileşimli tahtalarında, merkezi bir dosya sunucusuna (Pardus Server) sorunsuz erişim sağlamak, öğretmenlerin USB bellek taşıma zorunluluğunu ortadan kaldıran çok verimli bir yöntemdir.
İstediğiniz senaryo için (Her öğretmenin kendi kullanıcısı olması ve otomatik bağlantı) en sağlıklı yöntem NFS (Network File System) protokolünü /etc/fstab üzerinden bağlamak ve /etc/profile.d altına yazılacak ufak bir script ile her girişte kısayolu kontrol etmektir.
Okullardaki Pardus ETAP yüklü etkileşimli tahtaların, Pardus Server üzerinde barındırılan "ogretmen" klasörüne ağ üzerinden otomatik olarak bağlanmasını ve her öğretmenin masaüstüne bu klasörün kısayolunun otomatik eklenmesini sağlamak amacıyla hazırlanmıştır.
Ön Hazırlık ve Gereksinimler
Sunucu: Pardus Server 23.4 (Sabit IP adresi tanımlanmış olmalı, örn:
192.168.1.100).İstemci: Pardus ETAP 23 (Etkileşimli Tahta).
Yetki: Her iki tarafta da
sudoyetkisi.
BÖLÜM 1: Pardus Server Tarafı (NFS Sunucu Kurulumu)
Eğer sunucunuzda NFS paylaşımı zaten hazırsa bu adımı atlayabilirsiniz.
NFS Servisini Kurun:
Bash:sudo apt update sudo apt install nfs-kernel-serverPaylaşılacak Klasörü Oluşturun ve İzinleri Ayarlayın: Öğretmenlerin dosya yazabilmesi için izinlerin doğru yapılandırılması gerekir.
Bash:sudo mkdir -p /srv/nfs/ogretmen # Herkesin yazabilmesi için (veya sunucu yapınıza göre sahiplik verin): sudo chmod 777 /srv/nfs/ogretmenDışa Aktarma Ayarlarını Yapın (
/etc/exports): Dosyayı açın:Bash:sudo nano /etc/exportsDosyanın en altına şu satırı ekleyin (IP bloğunu okul ağınıza göre düzenleyin, örn:
192.168.1.0/24):Plaintext:/srv/nfs/ogretmen 192.168.1.0/24(rw,sync,no_subtree_check,no_root_squash)Not:
rwokuma-yazma izni verir.Servisi Yeniden Başlatın:
Bash:sudo exportfs -a sudo systemctl restart nfs-kernel-server
BÖLÜM 2: Pardus ETAP Tarafı (İstemci Ayarları)
Bu işlemler etkileşimli tahtada (veya imaj hazırlanmadan önce ana makinede) yapılmalıdır.
Adım 1: NFS İstemci Paketini Kurun
Tahtanın NFS protokolünü anlayabilmesi için gerekli paketi yükleyin:
sudo apt update
sudo apt install nfs-common
Adım 2: Bağlantı Noktasını (Mount Point) Oluşturun
Sunucudaki dosyaların tahtada nereye bağlanacağını belirleyin. Genellikle /media altı uygundur.
sudo mkdir -p /media/ogretmen_paylasim
(İsterseniz klasör izinlerini sudo chmod 777 /media/ogretmen_paylasim ile gevşetebilirsiniz, ancak asıl izin sunucudan gelir.)
Adım 3: Otomatik Bağlanma Ayarı (/etc/fstab)
Tahta her açıldığında bağlantının otomatik kurulması için fstab dosyasını düzenleyeceğiz.
Dosyayı açın:
Bash:sudo nano /etc/fstabDosyanın en altına şu satırı ekleyin (Sunucu IP adresini kendinize göre düzenleyin):
Plaintext:192.168.1.100:/srv/nfs/ogretmen /media/ogretmen_paylasim nfs defaults,_netdev,nofail 0 0Parametrelerin Anlamı:
_netdev: Ağ bağlantısı kurulmadan bu diski bağlamaya çalışma (Sistemin açılışta donmasını engeller).nofail: Sunucu kapalıysa veya hata verirse tahtanın açılışını durdurma, devam et.
Kaydedip çıkın (
Ctrl+O,Enter,Ctrl+X) ve testi yapın:Bash:sudo mount -aHata almazsanız bağlantı başarılıdır.
/media/ogretmen_paylasimiçine bakarak sunucu dosyalarını görebilirsiniz.
BÖLÜM 3: Otomatik Masaüstü Kısayolu Oluşturma
Pardus ETAP'ta birden fazla öğretmen kullanıcısı olduğu için, kısayolu tek tek elle oluşturmak yerine, her kullanıcı giriş yaptığında çalışan bir script hazırlamak en kesin çözümdür.
Profil Scripti Oluşturun:
/etc/profile.d/dizinine eklenen scriptler, sisteme giren her kullanıcı için çalıştırılır.Bash:sudo nano /etc/profile.d/ogretmen-kisayol.shScript İçeriğini Yazın: Aşağıdaki kodları dosyaya yapıştırın. Bu kod, masaüstünde kısayol yoksa otomatik oluşturur:
Bash:#!/bin/bash # Hedeflenen kısayolun adı ve yolu KISAYOL_ADI="Öğretmen Paylaşımı" HEDEF_KLASOR="/media/ogretmen_paylasim" MASAUSTU_YOLU="$HOME/Masaüstü" # Eğer masaüstü klasörü varsa (Bazen Desktop olabilir, ETAP'ta genelde Masaüstü'dür) if [ -d "$MASAUSTU_YOLU" ]; then # Kısayol zaten yoksa oluştur if [ ! -e "$MASAUSTU_YOLU/$KISAYOL_ADI" ]; then ln -s "$HEDEF_KLASOR" "$MASAUSTU_YOLU/$KISAYOL_ADI" fi fiKaydedin ve İzin Verin: Dosyayı kaydedip çıkın, ardından çalıştırılabilir yapın:
Bash:sudo chmod +x /etc/profile.d/ogretmen-kisayol.sh
Sonuç ve Test
Etkileşimli Tahtayı Yeniden Başlatın.
Herhangi bir öğretmen kullanıcısı (veya kendi kullanıcınız) ile giriş yapın.
Kontrol Edin:
Masaüstünde "Öğretmen Paylaşımı" simgesi geldi mi?
Simgeye tıkladığınızda sunucu içindeki dosyalar açılıyor mu?
Dosya oluşturup silebiliyor musunuz? (Yazma izni testi).
Bu yapılandırma ile tahtaya yeni bir öğretmen atansa ve yeni bir kullanıcı açılsa bile, ilk girişinde masaüstünde paylaşım klasörünü otomatik olarak görecektir.
Sunucu IP Adresi Değişirse Ne Olur?
Eğer Pardus Server'ın IP adresi değişirse, tüm tahtalardaki /etc/fstab dosyasını güncellemeniz gerekir. Bu yüzden sunucuya statik (sabit) IP vermeniz hayati önem taşır.
Bununla ilgili ek bir yapılandırmaya (örneğin yazma izinlerinde sorun yaşarsanız chmod veya uid eşitleme konularına) ihtiyacınız olursa yardımcı olabilirim.
Pardus üzerinde sistem araçları geliştirmek için en standart ve kararlı yöntem Python ve GTK3 (PyGObject) kullanmaktır.
Aşağıda, bir önceki adımda anlattığım tüm terminal işlemlerini (paket kurma, fstab düzenleme, kısayol scripti oluşturma) tek bir arayüz üzerinden yapan, yönetici dostu bir uygulama.
Uygulama Özellikleri:
Arayüz: Sade bir GTK penceresi.
İşlev: Sunucu IP'sini ve paylaşım yollarını girip "Kurulumu Tamamla" dediğinizde gerekli tüm konfigürasyonu otomatik yapar.
Güvenlik:
/etc/fstabdosyasını değiştirmeden önce yedeğini alır.
1. Gereksinimler
Bu kodun çalışması için Pardus üzerinde geliştirme paketlerinin yüklü olması gerekir (Genelde yüklü gelir ama garanti olsun):
sudo apt install python3-gi python3-gi-cairo gir1.2-gtk-3.0 nfs-common -y2. Python Kodu (nfs_baglayici.py)
https://github.com/nuritiras/etap_haftalik_duvar_nfs
3. Nasıl Çalıştırılır?
Bu uygulama sistem dosyalarına (/etc/fstab, /etc/profile.d) müdahale edeceği için root yetkisiyle çalıştırılmalıdır.
Dosyayı kaydettiğiniz dizinde terminal açın.
Dosyaya çalıştırma izni verin:
Bash:chmod +x nfs_baglayici.pyUygulamayı çalıştırın:
Bash:sudo ./nfs_baglayici.py
Kodun Yaptığı Önemli İşlemler:
Gtk.Grid: Görsel elemanları (Etiketler ve Giriş Kutuları) düzenli bir tablo halinde sıralar.os.geteuid() != 0: Kullanıcınınsudoile çalıştırıp çalıştırmadığını kontrol eder, aksi halde uyarı verir.subprocess.run:apt-getvemountgibi terminal komutlarını Python içinden çalıştırır.Dinamik Script Yazma:
/etc/profile.d/içine yazılacak olan scripti, arayüzden girilen yollara (path) göre anlık olarak oluşturur.
Bu betiği bir USB belleğe atıp tüm tahtalarda hızlıca çalıştırabilir, saniyeler içinde kurulumu tamamlayabilirsiniz.
Yorumlar