Soru Unix ve Unix benzeri sistemlerde dizinlerin anlamı


Linux'u birkaç yıldır kullanıyorum ama hala bazı dizin adlarının Unix ve Unix benzeri sistemlerde ne olduğunu veya anlamını anlayamadım. Örneğin. nedir etc ya da var? Nerede opt isim nereden geliyor?

Ve yine de konuya devam ediyoruz. Birisi hangi dizinin en iyi ne için kullanıldığını açık bir şekilde açıklayabilir. Bazı yazılımların kurulduğu veya en uygun dizinin yazılımı nasıl yükleyeceği konusunda bazen kafam karışıyor.


92
2018-06-12 05:11


Menşei


Komik şey unix, bir multics parodi olmak ve hayatta kalmak için biri olmak ... Sanırım multics, zamanın ilerisinde bir yoldu. - SparK


Cevaplar:


Linux dosya sistemlerinin yerleşimi hakkında daha fazla bilgi için, bkz. Dosya Sistemi Hiyerarşisi Standardı (şimdi 2.3 sürümü ile beta 3.0 en son dağıtımlarda dağıtılan sürüm). İsimlerin nereden geldiğini açıklıyor:

  • /çöp Kutusu - Çöp KutusuKoç.
  • /çizme - Gerekli dosyalar çizmeing.
  • / dev - devbuz dosyaları.
  • /vb - Vbctera. Ad, en eski Unix'lerden miras alınır; bu, config dosyalarını yerleştiren nokta haline geldiğinde ortaya çıkar.
  • /ev - Nerede Ev dizinler tutulur.
  • / lib - Kod nerede libyarışçılar tutulur.
  • / media - Daha modern bir dizin, ancak çıkarılabilir medya monte edilir.
  • / mnt - Geçici dosya sistemleri nerede mounted.
  • / opt - Nerede seçmekEklenti yazılımı yüklüdür. Bu ayrı /usr/local/ nedenleri için daha sonra alacağım.
  • /koşmak - Nerede koşmakZaman değişkenli veriler tutulur.
  • / sbin - Nerede super-çöp Kutusuaries mağazalardır. Bunlar genellikle sadece kök ile çalışır.
  • / usr - Eski Unix'lerden miras kalan başka bir dizin, "kullanıcı" anlamına gelir. Bu dizin ana bilgisayarlar arasında paylaşılabilir olmalı ve birden çok ana bilgisayara güvenli bir şekilde NFS bağlanabilir. Sadece salt okunur olarak monte edilebilir. Ayrıca göre Debian Wiki, / usr olduğu UNIX Sistem R,esources.
  • / var - Eski Unixlerden miras kalan başka bir dizin, "varDeğişen sistem verilerinin saklanabileceği yer burasıdır. Biriktirme ve önbellek dizinleri gibi şeyler burada bulunabilir. Bir program yerel dosya sistemine yazmalı ve bu verileri doğrudan birine sunmuyorsa, buraya gideceğim.
  • / srv - "serve ". Bu dizin, kullanıma sunulan statik dosyalar içindir. /srv/http statik web siteleri için olurdu /srv/ftp bir FTP sunucusu için.

/ opt vs / usr / local

Gördüğüm başparmak kuralı en iyi şekilde tanımlanır:

kullanım /usr/local normalde içine girecek şeyler için /usrya da zaten var olan şeyleri geçersiz kılıyor /usr. kullanım /opt Hepsi bir dizine yüklenen veya başka bir şekilde özel olan şeyler için.


111
2018-06-12 05:16



Belge sorumun ilk yarısını çok iyi cevaplıyor. Ancak, isimlerin nereden alındığı hala bir gizemdir. Bilmek istediğim nedeni, bana daha fazla bağlam sağlayacağını düşünüyorum. - Luke
Adlandırma neredeyse tüm açıklayıcıdır. Özellikle de bu linkteki açıklamaları okursanız. - Dan Carley
Hayır değil. 'Etc' nin ne için kullanıldığını açıklar, ancak isminin nereden geldiğini veya neyin geçerli olduğunu açıklamamaktadır. - Luke
@ sysadmin1138, yani /run temelde RAM referans mı? - Pacerier
@Pacerier Bir dosya sistemi, ancak bir RAM diski olarak güvenli bir şekilde monte edilebilir. Bununla birlikte, birçok program orada bir set yapısını varsayar, bu yüzden aslında ısrar gerektirir. - sysadmin1138♦


Tarihsel olarak, /etc "etcetera" anlamına gelir ve /var "değişken" için kısa. Sanırım eski, ilgisiz sistem yapılandırma dosyalarının geniş bir koleksiyonuna giriyor çünkü /etc. İkincisi, içindeki dosyalar /var değişmesi bekleniyor. Sık sık monte edebilirsiniz /usr ve / salt okunur olarak (güncellemeleri gerçekleştirirken hariç), ama asla monte edemezsiniz /var Sadece oku. Sistem günlük dosyalarını, kilit dosyalarını, biriktirme dosyalarını ve dinamik olarak değişen diğer şeyleri tutar.

Diğer insanlar, en iyi nereye gittiğini anlamanıza yardımcı olmak için size işaretçiler verdi.


20
2018-06-12 05:29





Eski bir parçacığı diriltmediğim için üzgünüm, fakat bu detayın bu bilginin gelecekteki tüm arayıcıları için önemli bir açıklama olduğunu düşünüyorum:

  • / opt İsteğe bağlı (isteğe bağlı eklenti paketlerinde olduğu gibi) anlamına gelir.
  • /çöp Kutusu ikili anlamına gelir (işletim sistemi tarafından kullanılan yürütülebilir dosyaları içerir).
  • / lib kütüphane anlamına gelir (dosya sistemi ve önyükleme için kullanılan paylaşılan kütüphaneleri içerir, büyük olasılıkla yürütülebilir dosyalar tarafından depoda kullanılır)
  • / proc süreçleri temsil eder.
  • /kök kök kullanıcı demektir.
  • /ev root olmayan kullanıcılar için ana alt dizinleri tutar.
  • / dev Cihaz için duruyor (özel ve cihaz dosyalarını tutar).
  • / tmp geçici olarak duruyor.
  • / srv hizmet için duruyor.
  • / mnt bağlama noktası anlamına gelir (burada geçici bir dosya sistemi monte edin).
  • /Dahil etmek #include dosyaları, yani başlık dosyalarını (ör. stdio.h) içerir.
  • / var değişken anlamına gelir
  • /vb vb için duruyor

  • / usr Unix Sistem Kaynakları anlamına gelirKaynak)


19
2018-06-05 17:13



Güzel cevap: kısa, soru seviyesine yöneltilmiş ve diğer bağlantılara bakmaya gerek yok. +1 - Scott Biggs
Daha önce srv görmedim. Mantıklı olduğu ve zorlandığı sürece, yapılandırma üzerinde sözleşmeyi tercih ederim. Açıkçası, Apache her zaman / srv dizinindeki dosyaları sunmaz. - user148298


Bunu dene:

$ man hier

15
2018-06-23 18:18



Güzel. Ancak, diğer cevaplarda bahsedilen belgede olduğu gibi, bu adam sayfası sadece dizinlerin ne için kullanıldığı hakkında konuşuyor. Ayrıca neden seçildiği gibi belirli isimlerle de ilgileniyorum, örneğin / etc eg.g. - Luke
/ Etc ile ilgili sorunuzun cevabı burada: en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard - Anonymous


Bunun için en iyi yer Dosya Sistemi Hiyerarşi Standardı'dır (FHS). En son sürüm şu adreste mevcuttur: 2.3 http://www.pathname.com/fhs/pub/fhs-2.3.html.


5
2018-06-12 05:16





/usr aslında demek Unix Sistem Kaynakları

kaynak:: https://wiki.debian.org/FilesystemHierarchyStandard


2
2018-05-17 17:58





Unix işletim sisteminin birkaç çeşidini gözlemlerseniz, dizin isimlerindeki farklılıkları bulacağınızdan çok daha fazlasını aşağıda bulabilirsiniz.

/ bin ikili dosyaları (ikili dosyaları içerir ve ayrıca çoğunlukla kullanıcılar tarafından kullanılan komutları içerir. Ayrıca komut yürütme için varsayılan yoldur).

/ sbin (bu genellikle süper kullanıcı tarafından tetiklenen özel komutları içerir)

/ lib kütüphane anlamına gelir (dosya sisteminde ve önyüklemede kullanılan, muhtemelen yürütülebilir dosyalar tarafından kullanılan, paylaşılan kütüphaneleri içerir) / proc süreçleri temsil eder (eğer bu direktörü kontrol etmeyi doğrulamak isterseniz, rasgele sayılarda isimlendirilmiş birden fazla dizin içerecektir, bu süreçler, ps - ef ile kontrol edilebilecek bir işlem numarası değildir)

/ root root kullanıcısıdır (root kullanıcısı için varsayılan dizin) / home (tüm kök olmayan kullanıcılar bu dizinin altında ana dizin var) / dev aygıt için duruyor (özel ve aygıt dosyalarını saklar, eğer bu dizine ls - l komutuyla bakarsanız ve minör sayılar da bu dizinde ls - l sonuçlarında her satırın başlangıcında gösterilen cihaz tipini gösterir. özel aygıtı bloke eder, c karakter özel cihazı anlamına gelir). / tmp geçici olarak duruyor (geçici olarak burada geçici olarak saklanan bazı işlemler için gerekli kaynak) / mnt bağlama noktası anlamına gelir (burada geçici bir dosya sistemi kurun). / var değişken anlamına gelir (değişken veri tutar, içerdiği dizin her seferinde boyut değiştirir) / opt isteğe bağlı olarak duruyor (genellikle bu dizinin üçüncü şahıs Yazılımları yüklenir). / usr Unix Sistem Kaynakları anlamına gelir. (tüm sistem gerekli kaynaklar buraya yerleştirilir) / etc etcetera (aynı zamanda önemli olan, yapılandırma dosyalarının çoğu, kullanıcı yönetim dosyaları, güvenlik dosyaları ve diğer şeyler bunun altında tutulur)


1
2017-11-21 06:57