Linux `mount` Komutu: VPS ve Sistem Yöneticileri için Kapsamlı Rehber
Depolama cihazlarını verimli bir şekilde yönetmek, herhangi bir Linux sistem yöneticisinin en kritik becerilerinden biridir. Yüksek trafikli bir web uygulaması çalıştırıyor olsanız, yedeklemeleri koruyorsanız veya ağa bağlı depolamayı entegre ediyorsanız, mount komutu her depolama işleminin merkezinde yer alır. VPS Hosting ortamını yönetmek — özellikle Ubuntu veya Debian tabanlı dağıtımlar çalıştıranlar — mount hakkında derin bir anlayış, doğrudan daha iyi çalışma süresi, daha hızlı sorun giderme ve daha güvenilir veri erişimine dönüşür.
Bu kapsamlı rehber, Linux mount komutu hakkında bilmeniz gereken her şeyi kapsar: söz dizimi, seçenekler, gerçek dünya kullanım örnekleri, /etc/fstab aracılığıyla kalıcı yapılandırma ve pratik sorun giderme teknikleri.
Linux’te mount Komutu Nedir?
Linux’te, her depolama cihazı — fiziksel bir sabit sürücü, bir USB bellek, bir NFS ağ paylaşımı veya sanal bir disk olsun — içeriğine erişilebilmesi için dosya sistemi hiyerarşisine bağlanmalıdır. Bu işleme bağlama denir ve mount komutu bunu gerçekleştirmek için birincil araçtır.
Bir cihazı bağladığınızda, onu bir bağlama noktası ile ilişkilendirirsiniz: mevcut dosya sistemi ağacında bir dizin (örneğin, /mnt/data). Bağlandıktan sonra, o cihazda bulunan tüm dosyalara, sanki sistemin yerel parçaları gibi, o dizin aracılığıyla erişilebilir hale gelir.
Bu model, Windows sürücü harfleri (C:, D:, vb.) ile temel olarak farklıdır ve Linux’un depolama üzerinde bu kadar ayrıntılı, esnek kontrol sunmasının nedenlerinden biridir.
Temel Sözdizimi
mount [options] <device> <mount_point>| Parametre | Açıklama |
|---|---|
<device> | Bağlanacak blok cihazı (örn. /dev/sda1, /dev/sdb1) |
<mount_point> | Cihazın erişilebilir olacağı hedef dizin |
Örnek:
sudo mount /dev/sda1 /mnt/mydriveBu, /dev/sda1 bölümünü /mnt/mydrive dizinine bağlar.
Yaygın Olarak Kullanılan Seçenekler
mount komutu, bir dosya sisteminin nasıl bağlanacağını ve erişileceğini kontrol eden zengin bir seçenek seti destekler:
Seçenek
Açıklama
-t <type>
Dosya sistemi türünü belirtin (örn. ext4, ntfs, vfat, nfs, xfs)
-o <options>
Bağlama seçeneklerini geçin (örn. ro, rw, noexec, nosuid, user)
-a
/etc/fstab içinde listelenen tüm dosya sistemlerini bağla
-r
Dosya sistemini salt okunur olarak bağla (-o ro ile eşdeğer)
-v
Ayrıntılı mod — bağlama işlemi hakkında ayrıntılı bilgi çıktısı verir
--bind
Bir dizini dosya sisteminde başka bir konuma bağla
-l
Tüm bağlı dosya sistemlerini etiketleriyle listele
Yaygın -o Bağlama Seçenekleri
Seçenek
Anlamı
ro
Salt okunur olarak bağla
rw
Okuma-yazma olarak bağla (varsayılan)
noexec
Bu dosya sisteminde ikili dosyaların yürütülmesini engelle
nosuid
setuid ve setgid bitlerini yoksay
user
Root olmayan kullanıcıların bu dosya sistemini bağlamasına izin ver
defaults
Varsayılan seçenekleri kullan: rw, suid, dev, exec, auto, nouser, async
noatime
Erişim zamanlarını güncelleme (performansı artırır)
Adım Adım: Dosya Sistemi Bağlama
Adım 1: Cihazı Tanımla
Bağlamadan önce, cihaz adını bilmeniz gerekir. Tüm blok cihazlarını listelemek için lsblk kullanın:
lsblk
Örnek çıktı:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 50G 0 disk
├─sda1 8:1 0 49G 0 part /
└─sda2 8:2 0 1G 0 part [SWAP]
sdb 8:16 0 20G 0 disk
└─sdb1 8:17 0 20G 0 part
Bu örnekte, /dev/sdb1 bağlanmaya hazır bağlanmamış 20 GB bölümüdür.
Alternatif olarak, daha ayrıntılı bölüm bilgileri için fdisk -l kullanın:
sudo fdisk -l
Adım 2: Bağlama Noktası Dizini Oluştur
Herhangi bir şeyi bağlamadan önce bağlama noktası var olmalıdır. mkdir ile oluşturun:
sudo mkdir -p /mnt/mydrive
-p bayrağı, ara dizinler mevcut olmasa bile tam yolun oluşturulmasını sağlar.
Adım 3: Dosya Sistemini Bağla
Şimdi cihazı dizine bağlayın:
sudo mount -t ext4 /dev/sda1 /mnt/mydrive
-t belirtmezseniz, Linux dosya sistemi türünü otomatik olarak algılamaya çalışacaktır — bu, çoğu yaygın format için güvenilir bir şekilde çalışır.
Adım 4: Bağlamayı Doğrula
Dosya sisteminin başarıyla bağlandığını doğrulayın:
mount | grep mydrive
Veya tüm bağlı dosya sistemlerinin ve disk kullanımlarının insan tarafından okunabilir bir genel görünümü için df kullanın:
df -h
Ayrıca bağlama noktasının içeriğini doğrudan listeleyebilirsiniz:
ls /mnt/mydrive
Adım 5: Başarısız Bağlamaları Giderme
Bağlama başarısız olursa, ayrıntılı hata mesajları için kernel ring buffer’ını kontrol edin:
dmesg | tail -20
Bu, donanım hataları, bozuk dosya sistemleri veya eksik kernel modülleri tanılamak için özellikle yararlıdır.
Pratik Montaj Örnekleri
Örnek 1: Yerel ext4 Bölümünü Montajlamak
sudo mount -t ext4 /dev/sda1 /mnt/mydrive
Bu en yaygın senaryo — ext4 dosya sistemiyle biçimlendirilmiş yerel bir Linux bölümünü montajlamak.
Örnek 2: USB Sürücüsünü Montajlamak (FAT32)
USB sürücüler genellikle platformlar arası uyumluluk için FAT32 (vfat) ile biçimlendirilir.
Önce cihazı tanımlayın:
lsblk
Ardından montajlayın:
sudo mkdir -p /mnt/usb
sudo mount -t vfat /dev/sdb1 /mnt/usb
UTF-8 karakter desteğiyle montajlamak için (özel karakterli dosya adları için önerilir):
sudo mount -t vfat -o utf8 /dev/sdb1 /mnt/usb
Örnek 3: NTFS Sürücüsünü Montajlamak (Windows Bölümü)
sudo mount -t ntfs-3g /dev/sdc1 /mnt/windows
> Not: Önce ntfs-3g yüklemeniz gerekebilir: sudo apt install ntfs-3gÖrnek 4: NFS Ağ Paylaşımını Montajlamak
NFS (Network File System) uzak dizinleri ağ üzerinden montajlamanıza olanak tanır — VPS ortamları ve kümelenmiş altyapı için yaygın bir gereksinimdir.
sudo mount -t nfs 192.168.1.100:/exports/data /mnt/nfs192.168.1.100 yerine NFS sunucunuzun IP adresini ve /exports/data yerine dışa aktarılan yolu yazın.
> Ön Koşul: NFS istemci araçlarını yükleyin: sudo apt install nfs-commonÖrnek 5: Dosya Sistemini Salt Okunur Olarak Montajlamak
Potansiyel olarak bozuk bir diski daha fazla hasar riskine girmeden güvenli bir şekilde incelemek için yararlıdır:
sudo mount -o ro /dev/sda1 /mnt/readonlyÖrnek 6: Dizini Bağlama Montajı Yapmak
Bağlama montajları bir dizini ikinci bir konumdan erişilebilir hale getirir — chroot ortamları, konteynerler veya karmaşık web sunucusu kurulumlarında yararlıdır:
sudo mount --bind /var/www/html /mnt/webroot
Şu Anda Bağlı Tüm Dosya Sistemlerini Görüntüleme
Tüm aktif bağlantıları görüntülemek için:
mountDisk kullanımı ile daha okunabilir, tablo biçiminde çıktı için:
df -hYalnızca belirli dosya sistemi türlerini görüntülemek için (örneğin, tüm ext4 bağlantıları):
mount -t ext4Dosya Sistemini Çıkarma
Bağlı bir cihazla işiniz bittiğinde, umount kullanarak çıkarın (not: umount içinde ‘n’ yok):
sudo umount /mnt/mydriveVeya cihaz adına göre:
sudo umount /dev/sda1“Cihaz Meşgul” Hatalarını Yönetme
Bir işlem dosya sistemini aktif olarak kullanıyorsa, umount “hedef meşgul” hatası ile başarısız olur. Sorunlu işlemleri lsof ile tanımlayın:
lsof +D /mnt/mydriveVeya fuser kullanın:
fuser -m /mnt/mydriveİşlemleri tanımladıktan ve durdurduktan sonra, çıkarmayı yeniden deneyin. İnatçı durumlar için, tembel çıkarma (dosya sistemi artık kullanılmadığında ayırır) kullanabilirsiniz:
sudo umount -l /mnt/mydrive/etc/fstab ile Bağlamaları Otomatikleştirme
Her yeniden başlatmadan sonra dosya sistemlerini manuel olarak bağlamak, üretim ortamlarında pratik değildir. /etc/fstab dosyası, önyükleme sırasında otomatik olarak bağlanması gereken dosya sistemlerini tanımlar — herhangi bir ciddi VPS Hosting veya Dedicated Servers dağıtımı için gerekli bir yapılandırmadır.
/etc/fstab Giriş Biçimi
/etc/fstab içindeki her satır şu biçimi izler:
<device> <mount_point> <type> <options> <dump> <pass>| Alan | Açıklama |
|---|---|
<device> | Cihaz yolu veya UUID (örn. /dev/sda1 veya UUID=xxxx) |
<mount_point> | Cihazın bağlanacağı dizin |
<type> | Dosya sistemi türü (örn. ext4, vfat, nfs) |
<options> | Bağlama seçenekleri (örn. defaults, ro, noatime) |
<dump> | Yedekleme bayrağı — 0 devre dışı bırakır, 1 dump yedeklemesini etkinleştirir |
<pass> | fsck sırası — 0 atlar, 1 kök için, 2 diğerleri için |
Adım Adım: Kalıcı Bir Bağlama Ekleme
Adım 1: Cihaz UUID’sini Bulun
Cihaz adları (/dev/sda1 gibi) yerine UUID’ler kullanmak, cihaz adları yeniden başlatmadan veya donanım değişikliklerinden sonra değişebileceğinden, kesinlikle önerilir:
sudo blkidÖrnek çıktı:
/dev/sda1: UUID="a1b2c3d4-e5f6-7890-abcd-ef1234567890" TYPE="ext4"Adım 2: Bağlama Noktasını Oluşturun
sudo mkdir -p /mnt/mydriveAdım 3: /etc/fstab Dosyasını Düzenleyin
Dosyayı bir metin editörü ile açın:
sudo nano /etc/fstabAdım 4: Girişi Ekleyin
UUID=a1b2c3d4-e5f6-7890-abcd-ef1234567890 /mnt/mydrive ext4 defaults,noatime 0 2Bir NFS paylaşımı için:
192.168.1.100:/exports/data /mnt/nfs nfs defaults,_netdev 0 0> Önemli: _netdev seçeneği, sistemin ağ kullanılabilirliğini beklemesini söyler — NFS ve diğer ağ tabanlı dosya sistemleri için kritiktir.
Adım 5: Kaydedin ve Çıkın
nano içinde: kaydetmek için Ctrl + O tuşuna basın, onaylamak için Enter tuşuna basın, ardından çıkmak için Ctrl + X tuşuna basın.
Adım 6: Yapılandırmayı Test Edin
Yeniden başlatmadan önce, dosyada tanımlanan her şeyi bağlayarak /etc/fstab girişlerinizi test edin:
sudo mount -aHiçbir hata görünmezse, yapılandırmanız doğrudur. Yanlış yapılandırılmış bir /etc/fstab sisteminizin önyüklenmesini engelleyebilir, bu nedenle yeniden başlatmadan önce her zaman test edin.
Adım 7: Doğrulayın
df -h
ls /mnt/mydriveYaygın Mount Hatalarını Giderme
| Hata | Olası Neden | Çözüm |
|---|---|---|
Permission denied | Yetersiz ayrıcalıklar | sudo ile çalıştırın |
No such file or directory | Mount noktası veya cihaz mevcut değil | Yolları lsblk ve ls ile doğrulayın |
wrong fs type, bad option, bad superblock | Yanlış dosya sistemi türü veya bozuk disk | Türü blkid ile doğrulayın; cihazda fsck çalıştırın |
Filesystem type not recognized | Eksik kernel modülü veya araçlar | Gerekli paketleri yükleyin (örn. ntfs-3g, nfs-common) |
Device is busy | Mount’u kullanan etkin işlemler | Bunları tanımlamak ve durdurmak için lsof +D <mount_point> kullanın |
Mount point does not exist | Dizin oluşturulmadı | sudo mkdir -p <mount_point> çalıştırın |
Bozuk Dosya Sisteminde fsck Çalıştırma
Dosya sistemi bozulmasından şüpheleniyorsanız, önce cihazı unmount edin, ardından şunu çalıştırın:
sudo fsck /dev/sdb1Asla fsck öğesini bağlı bir dosya sisteminde çalıştırmayın — veri kaybına neden olabilir.
VPS ve Server Ortamları için Performans İpuçları
VPS Hosting veya Dedicated Servers ortamlarını yöneten yöneticiler için, bu mount seçenekleri I/O performansını anlamlı şekilde iyileştirebilir:
noatime— Dosya okumalarında erişim zamanı güncellemelerini devre dışı bırakır, gereksiz disk yazışlarını azaltır. Meşgul web sunucuları ve veritabanları için oldukça önerilir.nodiratime—noatimeile benzerdir, ancak özellikle dizin erişim zamanları için.relatime—noatimeiçin dengeli bir alternatif, erişim zamanlarını yalnızca değişiklik zamanı daha yeni olduğunda günceller.data=writeback(ext4) — Veri journaling garantilerini gevşeterek yazma performansını iyileştirir. Yalnızca veri bütünlüğü uygulama düzeyinde yönetildiğinde kullanın.
Bir veri bölümü için örnek yüksek performanslı /etc/fstab girişi:
UUID=xxxx /var/www ext4 defaults,noatime,nodiratime 0 2Bağlı Dosya Sistemlerinin Güvenliği
Güvenlik bilincine sahip yöneticiler — özellikle Paylaşılan Web Hosting platformları veya çok kiracılı ortamlar çalıştıranlar — bu koruyucu bağlama seçeneklerini göz önünde bulundurmalıdır:
noexec— Bağlı dosya sisteminden ikili dosyaların yürütülmesini engeller./tmpve kullanıcı yükleme dizinleri için idealdir.nosuid— setuid/setgid bitlerini yoksayar, ayrıcalık yükseltme saldırılarını engeller.nodev— karakter veya blok özel cihazların yorumlanmasını engeller.
Sertleştirilmiş bir /tmp bağlama girişi:
tmpfs /tmp tmpfs defaults,noatime,nosuid,nodev,noexec,size=2G 0 0İlgili Komutlar Hızlı Referansı
| Komut | Amaç |
|---|---|
lsblk | Tüm blok cihazları ve bağlama noktalarını listele |
blkid | Blok cihazların UUID’lerini ve dosya sistemi türlerini göster |
df -h | Tüm bağlı dosya sistemleri için disk alanı kullanımını göster |
du -sh <dir> | Belirli bir dizinin disk kullanımını göster |
fdisk -l | Bölüm tablolarını listele |
fsck <device> | Dosya sistemini kontrol et ve onar |
umount <mount_point> | Dosya sistemini ayır |
lsof +D <path> | Bir dizin altındaki açık dosyaları listele |
fuser -m <path> | Bir bağlama noktasını kullanan işlemleri göster |
Doğru Hosting Ortamını Seçmek
mount anlamak, sunucu ortamı üzerinde tam kontrole sahip olduğunuzda en değerlidir. İşte farklı hosting türlerinin depolama yönetimi yeteneklerinizi nasıl etkilediği:
- VPS Hosting — Tam root erişimi, mount noktaları,
/etc/fstabve özel depolama konfigürasyonları üzerinde tam kontrol anlamına gelir. Esnekliğe ihtiyaç duyan geliştiriciler ve sistem yöneticileri için idealdir. - Dedicated Servers — Fiziksel donanım, RAID konfigürasyonları ve gelişmiş depolama kurulumları üzerinde maksimum kontrol. Yüksek performanslı veya uyum gereksinimleri olan iş yükleri için en iyisidir.
- Shared Web Hosting — Depolama sağlayıcı tarafından yönetilir; doğrudan
mounterişimi mevcut değildir. Özel depolama konfigürasyonları gerektirmeyen basit web siteleri için uygundur. - cPanel ile VPS — VPS’nin esnekliğini kullanıcı dostu bir kontrol paneli ile birleştirir ve depolama ile dosya yönetimini derin komut satırı uzmanlığı olmadan erişilebilir kılar.
Sonuç
mount komutu, Linux yöneticisinin araç setindeki en temel ve güçlü araçlardan biridir. Basit bir USB sürücüsü bağlamaktan dağıtılmış bir altyapı genelinde karmaşık NFS paylaşımlarını entegre etmeye kadar, mount konusunda uzmanlaşmak, sisteminizin depolama alanına nasıl eriştiğini ve yönettiğini kontrol etmek için kesin ve güvenilir bir yol sağlar.
Bu kılavuzdan önemli çıkarımlar:
- Bağlamadan önce cihazları ve UUID’lerini tanımlamak için
lsblkveblkidkullanın - Bağlamaya çalışmadan önce her zaman bağlama noktası dizinini oluşturun
- Stabilite için
/etc/fstabiçinde cihaz adları yerine UUID’ler kullanın - Yeniden başlatmadan önce
/etc/fstabdeğişikliklerini her zamansudo mount -aile test edin noatimegibi performans seçeneklerini venoexecgibi güvenlik seçeneklerini uygun yerlerde uygulayın- Etkili sorun giderme için
dmesg,lsofvefsckkullanın
Yeni bir Dedicated Servers dağıtımı sağlıyor olsanız, bir VPS Hosting planında kalıcı depolama yapılandırıyor olsanız veya bir üretim web sunucusunu güçlendiriyor olsanız, bu beceriler karşılaşacağınız hemen hemen her Linux yönetim senaryosunda size hizmet edecektir.
tasarruf edin