Próbuję nauczyć się standardu POSIX. W przypadku korzystania z systemów z rodziny Unix, I /bin
, /etc
, /dev
, /media
, i zwykle /opt
, ale jest to znormalizowane lub do swojej specyfikacji realizacji? Czy może być wiele katalogów w katalogu głównym, czy też jest ograniczony standardem?
filesystems
posix
root-filesystem
Niklas
źródło
źródło
Odpowiedzi:
Zgodnie z opublikowanym standardem The Open Group , jedynymi wymaganymi katalogami są:
/
/dev
, Zawierającaconsole
,null
itty
/tmp
, gwarantowane do zapisu, ale niekoniecznie zachowane.Linux Foundation utrzymuje Standard Hierarchii Systemów Plików (FHS), który rozszerza go o katalogi, które zwykle zobaczysz w systemie Linux:
FHS został zaprojektowany tak, aby był jak najbardziej ogólny, aby umożliwić włączenie go do dowolnego systemu UNIX. Dodatkowe katalogi prawdopodobnie będą istnieć w jakimkolwiek rozsądnym systemie, ale nie jest to wymagane przez POSIX.
Należy jednak pamiętać, że The Open Group również to stwierdza
Ponieważ katalogi są tak naprawdę tylko plikami, oznacza to, że ściśle zgodna aplikacja nie utworzy żadnych plików ani katalogów na poziomie głównym. Dlatego POSIX niekoniecznie ogranicza to, co dystrybucja może umieścić na poziomie głównym, ale wydaje się stwierdzać, że aplikacja zgodna ze specyfikacją nie może zakładać, że będzie w stanie.
źródło
W 10.1 Struktura katalogów i pliki POSIX wymienia katalogi, które muszą istnieć. Ale nie określa limitu liczby innych katalogów, które mogą istnieć na poziomie systemu plików.
Co do tego, wydaje się, że nie nakłada ograniczeń na wielkość innych katalogów.
Uwaga POSIX w tym obszarze skupia się raczej na podobieństwie niż na różnicach.
źródło
/
) może być katalogiem głównym, byłoby głupie narzucenie górnego limitu liczby wpisów w katalogu głównym./
nie jest w tym względzie szczególnie szczególny, dlatego wynika z tego, że równie głupie byłoby nałożenie górnej granicy na liczbę wpisów/
.Nie ma ograniczeń co do liczby wpisów w katalogu, zarówno w POSIX, jak i w typowych implementacjach Uniksa. Może istnieć pośredni limit liczby podkatalogów, który jest maksymalną liczbą twardych dowiązań (
..
pozycja każdego podkatalogu jest dowiązaniem twardym do katalogu); to 2 16 dla wielu popularnych systemów plików, co ogranicza katalog do podkatalogów 65533 (przynajmniej dla tych systemów plików, które..
wyraźnie przechowują wpisy). Wcześniej zaczniesz osiągać słabe wyniki. Według POSIX implementacja może obsługiwać tylko 8 twardych dowiązań w pliku (_POSIX_LINK_MAX
), ale żadna rzeczywista implementacja nie jest ograniczona do 6 podkatalogów. W każdym razie w wielu systemach plików, w tym ext4, liczba twardych linków nie jest utrzymywana..
wpisy, więc jedynym ograniczeniem jest ilość miejsca lub liczba i-węzłów dostępnych w systemie plików.POSIX nie mówi wiele o organizacji plików w systemie. Wymaga tylko istnienia kilku plików . Jedynymi obowiązkowymi wpisami w katalogu głównym są
/dev
i/tmp
. Inne wpisy nawykowe Unix, takie jak/usr
,/var
,/bin
,/etc
,/lib
,/home
, itd. Są Unix konwencje, które nie zostały skodyfikowane przez POSIX.W Linuksie FHS kodyfikuje klasykę i kilka innych. Większość dystrybucji Linuksa trzyma się wpisów FHS. Inne systemy uniksowe mają zwykle te same wpisy, może z kilkoma różnicami, ale liczba jest prawie taka sama.
Administratorzy systemu mogą tworzyć więcej, chociaż to nie jest zalecane: istnieją ściśle określone miejsca dla większości rzeczy (oprogramowanie idzie pod
/usr
lub/opt
dane system przechodzi pod/var
dane użytkownik przechodzi pod/net
zamontować punkty przejść pod/media
lub/mnt
itp), więc jest rzadko dobry powód do tworzenia nowych katalogów na najwyższym poziomie.źródło
w przeciwieństwie do FAT systemy plików używane przez UNIX nie mają specjalnego limitu rozmiaru w katalogu głównym, ale po zapełnieniu partycji nie będzie można dodawać więcej.
źródło