Tipik bir Linux sisteminde hangi montaj noktaları var?


32

2 sorum var.

  1. Linux kurulumu sırasında 2 bağlama noktası için hafıza alanı belirledik - root ve swap. Kullanıcıların haberi olmadan oluşturulan başka bağlama noktaları var mı?
  2. Bu ifade doğru mu: "montaj sadece resme farklı bölümlerle uğraşırken gelir. Yani farklı bir bölüm olmadıkça monte edemez, söylemez / işlem yapamazsınız"?

1
Soru başlığı için +1! Tüm yeniler masumca sordularsa ...
Caleb

Haha, tam olarak benim de düşüncelerim! +1.
boehj

2
@John: Birinde iki soru sormak önerilmez. Şimdi her iki soruyu da kapsayan cevaplar olduğundan, sanırım kaymasına izin vereceğiz, ancak lütfen bir dahaki sefere ayrı ayrı sorular sorun. İyi bir başlık bulma konusundaki zorluğunuz (hayır, başlığınız sorunuzun iyi bir özeti değildi) birden fazla soruyu bir araya getirmeye çalışmaktan kaynaklanıyordu.
Gilles 'SO- kötülük olmayı'

Yanıtlar:


47

Sorularınızın arkasında yanlış anlaşılmalar var.

  1. Değiştirme takılı değil.
  2. Montaj bölümlerle sınırlı değildir.

bölmeler

Bir bölüm , belirli bir amaca ayrılmış bir dilim disk alanıdır. İşte bölümler için bazı ortak amaçlar.

  • Bir dosya sistemi , yani dizin ağacı olarak düzenlenmiş ve ext2, ext3, FFS, FAT, NTFS, ...
  • Alan değiştirme, yani disk belleği için kullanılan disk alanı (ve hazırda bekleme görüntülerini saklamak ).
  • Doğrudan uygulama erişimi. Bazı veritabanları verilerini küçük bir performans elde etmek için bir dosya sistemine değil doğrudan bir bölüme depolar. (Bir dosya sistemi zaten bir çeşit veritabanıdır.)
  • Diğer bölümler için bir kap. Örneğin, bir PC genişletilmiş bölümü veya BSD bölümlerini içeren bir disk dilimi veya bir LVM fiziksel birimi (sonunda kendileri bölüm sayılabilecek mantıksal birimleri içeren),…

Dosya sistemleri

Dosya sistemleri, bilgileri hiyerarşik bir yapıda sunar. Bazı yaygın dosya sistemi türleri şunlardır:

  • Ext2, ext3, FFS, FAT, NTFS gibi disk destekli dosya sistemleri…
    • Desteğin, yukarıda görüldüğü gibi doğrudan bir disk bölümünde olması gerekmez. Örneğin, bu bir LVM mantıksal birimi veya bir döngü montajı olabilir .
  • Solaris ve Linux'un tmpfs'leri gibi hafıza destekli dosya sistemleri .
  • Linux gibi procve çekirdekten bilgi sunan dosya sistemleri sysfs.
  • NFS , Samba gibi ağ dosya sistemleri …
  • FUSE'nin geniş bir koleksiyona sahip olduğu uygulama destekli dosya sistemleri . Uygulama destekli dosya sistemleri hemen hemen her şeyi yapabilir: bir FTP sunucusunun bir dosya sistemi gibi görünmesini sağlayın, dosya adlarının büyük / küçük harf duyarlı olduğu veya farklı bir kodlamaya dönüştürüldüğü bir dosya sisteminin alternatif görünümünü sağlayın, arşiv içeriğini dizinmiş gibi gösterin,…

Montaj

Unix, dosyaları genellikle “dosya sistemi” olarak adlandırılan tek bir hiyerarşide sunar (ancak bu cevapta “dosya sistemi” kelimesini karışıklığı önlemek için kullanmayacağım). Bireysel dosya sistemlerinin erişebilmesi için bu hiyerarşiye aşılanması gerekir.

Bir dosya sistemini kurarak erişilebilir hale getirirsiniz. Montaj, montajını yaptığınız dosya sisteminin kök dizinini dosya sıradüzenindeki mevcut bir dizinle ilişkilendirir. Böyle bir ilişkiye sahip bir dizin bir bağlantı noktası olarak bilinir.

  • Örneğin, kök dosya sistemi önyükleme sırasında (çekirdek herhangi bir işlemi başlatmadan önce) /dizine bağlanır .
  • Solaris ve Linux gibi bazı unix değişkenlerinin süreçlerle ilgili bilgileri ortaya çıkardığı proc dosya sistemi üzerine kuruludur /proc, böylece proc dosya sistemi üzerinde /proc/42/environdosyayı belirler, /42/environ(en azından Linux'ta) işlem ortamının salt okunur bir görünümünü içerir. 42 numara.
  • İçin örneğin dosya sistemi ayrı varsa /home, o zaman /home/john/myfile.txtkimin yolu dosyayı atar /john/myfile.txtev dosya sisteminin kökünden.

Linux altında, aynı dosya sistemine bağlanma bağlantıları sayesinde birden fazla yoldan erişilebilir olması mümkündür .

Tipik bir Linux dosya sistemi birçok bağlı dosya sistemine sahiptir. (Bu bir örnektir; farklı dağıtımlar, sürümler ve kurulumlar farklı dosya sistemlerinin kurulmasına yol açacaktır.)

  • /: Çekirdek ilk işlemi yapmadan önce monte edilmiş kök dosya sistemi. Bootloader, çekirdeğe kök dosya sistemi olarak ne kullanılacağını söyler (genellikle bir disk bölümüdür, ancak NFS dışa aktarması gibi başka bir şey olabilir).
  • /proc: süreç ve çekirdek bilgisine sahip proc filessytem.
  • /sys: donanım aygıtları hakkında bilgi içeren sysfs dosya sistemi.
  • /dev: udev tarafından cihaz donanımlarının mevcut donanımlara göre otomatik olarak oluşturulduğu bir bellek içi dosya sistemi .
  • /dev/pts: Terminal emülatörlerini çalıştırmak için cihaz dosyalarını içeren özel amaçlı bir dosya sistemi .
  • /dev/shm: sistemin standart kütüphanesi tarafından dahili amaçlar için kullanılan bir bellek içi dosya sistemi.
  • Hangi sistem varsa çalışıyorsa bileşenler bağlı olarak, diğer özel amaçlı böyle dosya sistemlerini görebilirsiniz binfmt_misc(kullandığı yabancı yürütülebilir dosya formatı çekirdek alt sistem ), fusectl(kullandığı FUSE ) nfsd(çekirdek NFS sunucusu tarafından kullanılan), ...
  • Açıkça belirtilen /etc/fstab(ve işaretlenmemiş noauto) herhangi bir dosya sistemi , önyükleme işleminin bir parçası olarak monte edilir.
  • USB anahtarı gibi çıkarılabilir bir aygıtın takılmasının ardından otomatik olarak HAL (veya eşdeğeri işlevsellik) tarafından monte edilen herhangi bir dosya sistemi .
  • Herhangi bir dosya sistemi açıkça mountkomut ile monte edilmiş .

¹ Gayri resmi burada konuşma.
² Initrd ve diğerleri bu cevabın kapsamı dışındadır.
³ Bu, her dosya sistemi için ayrı bir hiyerarşiye sahip olan Windows'a benzemez, örneğin c:veya \\hostname\sharename.


5
+10 Gilles Zamanın neresinde? Tek yorumum, takas konusunda insanlara biraz sıkıntı vermek zorunda kalmam gerektiği çünkü takas bölümünün /etc/fstabmonte edilmediği zaman içinde listelenmesini sağlamak oldukça kafa karıştırıcı .
Caleb

kesinlikle aptalca bir soru ... ama kendimi durduramıyorum. "Mounting, bir dizini dosya sisteminin köküyle ilişkilendirir" dedin. Öyleyse "/" dizini nerede bulunur?
John

2
@John: Aptalca bir soru değil, “dosya sistemi” ve “kök” kelimelerinin burada iki farklı anlamı var: bireysel dosya sistemleri var (her birinin kökleri var) ve tüm dizini hiyerarşisi var (kökleri, /dizini) . Cevabımın bu bölümünü yeniden değerlendirdim, umarım şimdi daha açık olmalı.
Gilles 'SO- kötülük' dur '

Bu cevap inanılmaz derecede yardımcı oldu - bu ansiklopedi. Ben de burada +10 yapabilseydim. Müthiş cevap.
boehj

13
  1. Her linux dağıtımının kendi varsayılan bölüm düzenlemesi vardır; bazıları düzinelerce bölüm kullanır, bazıları sadece bir tanesini kullanır. 3 ve 4 oldukça yaygın düzenlemelerdir (/ boot, /, swap ve / home). Bazı eski düzenlerde genellikle ayrı bir bölüm var / var ve aşırı sistemler her bölümde / var / * ve / opt / * ayrı bölümlerde var! Sorunuza cevap verebileceğim en iyi genelleme , unix dünyasındaki hiçbir şeyin, kullanıcıların bunu farketmeden veya değiştirmeden yapabilmeleri değil !
  2. Bölüm olmayan şeyleri bağlayabilirsiniz. Örneğin / proc genellikle bir bölüm değildir, çekirdek tarafından sağlanan ve çalışan işlemler hakkındaki verileri dosya gibi okuyup yazmanıza izin veren sahte bir dosya sistemidir. Dosyaları (ISO gibi) da geridönüş aygıtları kullanıyormuş gibi bağlayabilir, klasörleri başka yerlere bağlayabilir ve çeşitli diğer ninja hileleri yapabilirsiniz.

1
Açılışta otomatik olarak monte edilen bölümlerin tümü içindedir /etc/fstab. Orada bir bölüm eklerseniz, bir sonraki önyüklemede orada olur.
LawrenceC
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.