Modern sistem yönetimi, uzaktan dosya sistemlerinin etkili bir şekilde yönetilmesini gerektirir. RHEL 9 tabanlı sistemlerde, automount kullanılarak bu işlem daha dinamik ve talebe dayalı bir hale getirilebilir. Bu makalede, hem geleneksel autofs hizmeti hem de modern systemd automount çözümü detaylandırılmıştır.
Automount Nedir?
Automount, paylaşımların yalnızca erişim yapıldığında otomatik olarak bağlanmasını sağlayan bir yöntemdir. Geleneksel /etc/fstab dosyası kullanılarak yapılan sabit bağlantılardan farklı olarak, automount ile yalnızca gerek duyulan dosya sistemleri etkinleştirilir. Bu yöntem hem NFS hem de SMB paylaşımları için kullanılabilir.
RHEL 9’da Automount Çözümleri
RHEL 9 sistemlerinde automount için iki temel seçenek vardır:
- Autofs Hizmeti: Uzun yıllardır kullanılan ve güçlü özelliklere sahip bir sistemdir. Autofs, wildcards (joker karakterler) gibi özellikleri destekler.
- Systemd Automount: Daha modern bir yaklaşım sunar ve mount unit dosyalarıyla çalışır. Ancak, joker karakter desteği olmadığından dolayı RHCSA sınavında yer almaz.
Autofs ile Automountın Avantajları
- Kullanıcı alanında çalışır ve root yetkileri gerektirmez.
- Dosya sistemleri talep üzerine bağlanır ve işlem sona erdiğinde otomatik olarak bağlantıyı sonlandırır.
- Wildcard desteği sayesinde dinamik bağlantıları kolayca yapılandırabilir.
- Düşük sistem kaynak kullanımı
Autofs ile Automount Yapılandırması
1- Autofs ve nfs hem Server tarafı hem de Client tarafında kuralım.
dnf -y install autofs nfs-utils
2- Autofs vs nfs servisleri çalıştıralım, ardından firewall ayarlarını yapalım.
systemctl enable --now autofs.service
systemctl enable --now nfs-server.service
firewall-cmd --add-service={nfs3,mountd,rpc-bind,nfs} --permanent
firewall-cmd --reload
3- Paylaşmak istediğimiz dizi Server tarafında oluşturalım ve gerekli izinleri verelim.
mkdir -p /sharedfolder
chmod 777 /sharedfolder
4 – exports dosyasında paylaşmak istediğimiz dizin konumu ve Client bilgilerini girelim, ardından aktifleştirelim.
vim /etc/exports
/sharedfolder Client'in ip adresi veya hostname:/paylaştığınız/dosyanın/yerleşeceği/konum(rw,sync)
:wq
Not: Eğer DNS hizmeti aktif değilse sadece ip adresi girin, hostname kullanmayın.
exportfs -rav
5- Client tarafında Autofs ana dosyasını yapılandıralım.
vim /etc/auto.master
# şu satırı dosyaya ekleyelim
/paylaşılan/dosyanın/yerleşeceği/yer* /etc/auto.yapilandirma --timeout=10**
:wq
* dosya mevcut değilse otomatik olarak oluşturulacaktır.
** eğer 10 saniye içinde bağlanmaz ise iletişim kesilsin.
6- Yapılandırma dosyasını oluşturalım.
vim /etc/auto.yapilandirma
# şu satırı dosyaya ekleyelim
access* -fstype=nfs** ip adresi veya hostname:/sharedfolder
:wq
* Bu giriş noktasıdır. istediğimiz metni yazabiliriz
** dosya tipi
7- Autofs servisini baştan çalıştıralım.
systemctl restart autofs.service
8- Bağlanmaya test edelim.
cd /paylaştığınız/dosyanın/yerleşeceği/konum/access
NOT : Yapılandırma dosyasındaki yazdığımız giriş noktasını (access) yazmamız gerekiyor, aksi takdirde paylaşılan dosyalar görünemez.
WildCards Karakterlerle Automount
Wildcards, otomatik bağlantıları daha dinamik hale getirir. Bu, özellikle kullanıcı ana dizinlerini bağlamak için faydalıdır.
WildCards (Joker Karakterler):
*
: Sıfır veya daha fazla karakteri temsil eder?
: Tek bir karakteri temsil eder[]
: Karakter aralığını veya kümesini belirtir
Avantajları:
- Dinamik mount
- Esnek konfigürasyon
- Otomatik algılama
autofs Konfigürasyonu için WildCards Kullanımı:
/etc/auto.master
dosyasında:
/mnt/auto /etc/auto.misc --timeout=10
2. /etc/auto.yapilandirma
dosyasında:
# Tüm USB cihazları otomatik mount
usb* -fstype=auto :/dev/sd[b-z]
# Belirli disk bölümleri
disk? -fstype=ext4 :/dev/sda[1-5]
usb*
tüm USB cihazlarınıdisk?
tek karakterli disk mount noktalarını[a-c]
a, b, c karakterlerini kapsar
Systemd Automount ile Automount
Systemd automount, mount unit ve automount unit dosyaları ile çalışir. Bu yöntem, sabit bağlantı ihtiyacı duyulan sistemler için uygundur, ancak joker karakter desteği sunmaz.
Systemd ile Automountın Avantajları
- Systemd üniteleri ile entegre mount yönetimi
- Daha modern ve bütünleşik sistem yaklaşımı
- Gelişmiş bağımlılık yönetimi
Systemd ile Automount Yapılandırması
1- Server Tarafındaki Yapılandırmalar
- Paylaşmak istediğimiz dizi Server tarafında oluşturalım ve gerekli izinleri verelim.
mkdir -p /sharedfolder
chmod 777 /sharedfolder
- exports dosyasında paylaşmak istediğimiz dizin konumu ve Client bilgilerini girelim, ardından aktifleştirelim.
vim /etc/exports
/sharedfolder Client'in ip adresi veya hostname:/paylaştığınız/dosyanın/yerleşeceği/konum(rw,sync)
:wq
Not: Eğer DNS hizmeti aktif değilse sadece ip adresi girin, hostname kullanmayın.
exportfs -rav
sudo systemctl enable --now nfs-server
sudo firewall-cmd --permanent --add-service=nfs
sudo firewall-cmd --reload
2- Client Tarafındaki Yapılandırmalar
- Mount için dizin oluşturalım.
sudo mkdir -p /mnt/share
- .mount Birim dosyasını şu konumda /etc/systemd/system/share.mount oluşturalım.
[Unit]
Description=Mount NFS Share from Server
[Mount]
What=Server'in IP adresi:/sharedfolder
Where=/mnt/share
Type=nfs
Options=defaults
[Install]
WantedBy=multi-user.target
- .automount Birim dosyasını şu konumda /etc/systemd/system/share.automount oluşturalım.
[Unit]
Description=Automount NFS Share from Server
[Automount]
Where=/mnt/share
[Install]
WantedBy=multi-user.target
- systemd’yi yeniden başlatıp otomatik bağlamayı etkinleştirelim.
sudo systemctl daemon-reload
sudo systemctl enable share.automount
sudo systemctl start share.automount
- Yapılandırmayı test edelim.
ls /mnt/share
mount | grep /mnt/share
Peki akıllara şu soru gelir!
Neden İki Ayrı Dosya Gerekli?
Systemd, mount ve automount işlemlerini ayrı görevler olarak ele alır. Bu nedenle iki farklı dosya gereklidir:
1. .mount
Ünitesi: Mount Yapılandırmasını Tanımlar
- Neyin mount edileceğini belirler (NFS paylaşımı, disk bölümü)
- Nereye mount edileceğini gösterir
- Dosya sistemi türünü tanımlar
- Mount seçeneklerini yapılandırır
2. .automount
Ünitesi: İstek Üzerine Mount Tetikler
- Belirli dizine erişimi izler
- Dizin kullanıldığında mount işlemini başlatır
- Talep üzerine mount sağlar
- Boşta kalma durumunda otomatik unmount imkanı sağlar
Neden İki Dosya?
Avantajları
- Modülerlik: Her dosya farklı bir sorumluluğu üstlenir
- Yeniden Kullanılabilirlik: Statik ve dinamik mountlar için esneklik
- Bağımsız Kontrol: Automount ve mount işlemleri ayrı ayrı yönetilebilir
Çalışma Mantığı Analojisi
- Automount ünitesi: Hareket sensörü gibi
- Mount ünitesi: Kapı açma mekanizması gibi
Temel Kural
Systemd automount için mutlaka iki dosyaya ihtiyaç duyar.
Örnek Konfigürasyon
# .mount dosyası
[Mount]
What=//sunucu/paylasim
Where=/mnt/paylasim
Type=cifs
# .automount dosyası
[Automount]
Where=/mnt/paylasim
Options=timeout=60
Bu yapı, sistemin kaynak kullanımını optimize ederken esnek mount mekanizması sağlar.
Sonuç
Linux ortamlarında mount teknolojileri sürekli evrim geçirmektedir. Systemd automount, geleneksel autofs’un yerini giderek almakla birlikte, her iki teknoloji de farklı sistem gereksinimlerinde hala kullanılmaktadır.
Öneriler:
- Sistemin ihtiyaçlarına göre doğru mount teknolojisini seçin
- Performans ve güvenlik gereksinimlerini dikkate alın
- Düzenli olarak mount konfigürasyonlarınızı gözden geçirin
Teknolojinin sürekli gelişimi, Linux depolama yönetiminin daha verimli ve esnek hale geleceğini göstermektedir.
Leave a Reply