Jestem nowy w Linuksie, więc wybacz mi ewentualne zamieszanie, jakie możesz napotkać w tym pytaniu.
Z tego co rozumiem, systemu plików określa sposób przechowuje działowe / zarządza Plik z normami, takimi jak: ext2, ext3, reiserfs, XFS itp Czasami widzę, ludzie wydają się odnosić do siebie „ directory
” jako
/boot filesystem
/usr/bin filesystem
/root filesystem
/bin filesystem
Dlaczego mielibyśmy tak się nazywać filesystems
?
Jeśli każda z nich jest partycją, to mnie dezorientuje, ponieważ, o ile wiem, /usr
i /usr/bin
zwykle są w tej samej partycji, ale widziałem, że ludzie odnoszą się zarówno do, jak /usr filesystem
i do /usr/bin filesystem
.
Jeśli filesystem
tutaj jest odpowiednik systemu Windows directory
, nie jest dla mnie jasne, ponieważ najwyraźniej system plików to coś więcej niż tylko katalogi. Ponadto, o ile mi wiadomo, Linux nie ma directory
koncepcji; wszystkie są plikami.
źródło
/root
, myślę, że jest to możliwe do odrzucenia, biorąc pod uwagę złożoność sytuacja.Odpowiedzi:
Jak napisałem w https://superuser.com/a/293160/38062 :
Problemem jest tutaj słowo „system plików”. W światach POSIX / Unix / Linux oznacza kilka różnych rzeczy.
/
i przedstawionym oprogramowaniu aplikacji przez jądro systemu operacyjnego. W tym znaczeniu ludzie mówią na przykład o systemach operacyjnych POSIX posiadających „pojedyncze drzewo systemów plików ”./usr
systemu plików ”. „/usr
” tutaj jest (oczekiwany) punkt montowania woluminu lub (w niektórych schematach partycjonowania) jego etykieta identyfikacyjna./proc
” lub „za pomocą tmpfs plików za/tmp
”.Widzisz znaczenie nr 1, gdy widzisz „
/usr/bin
system plików”. Jest to drzewo systemu plików zrootowane w katalogu/usr/bin
. Tak, Linux bardzo nie mają pojęcia katalogów.Znaczenie # 2 i znaczenie # 3 są tym, co źle je czytasz. Ludzie nie mówią o
/usr/bin
zestawie danych na dysku, wyznaczonym przez dzielenie / dzielenie dysku. Nie mówią też o/usr/bin
konkretnym typie sterownika systemu plików lub o określonym formacie woluminu płyty.Dalsza lektura
źródło
Oczywiście Linux używa koncepcji katalogów. Pojęcie katalogów jest takie samo jak w systemie Windows.
Pojęcie systemów plików jest również bardzo podobne do tego, co jest używane w systemie Windows. Windows zwykle używa NTFS lub FAT - Linux zwykle używa ext2, ext3, ext4 i tak dalej, to cała różnica.
Różnica polega na tym, że w systemie Linux pliki / katalogi ze wszystkich dostępnych partycji są zorganizowane w jednym drzewie. W systemie Windows do różnych partycji używa się litery, np. „A:”, „c:”, w systemie Linux pełna ścieżka do dowolnego dostępnego pliku zaczyna się od „/” - katalogu głównego. Na przykład na dysku twardym znajduje się osobna partycja z plikami potrzebnymi do uruchomienia systemu: uruchamiasz komendę „mount” z odpowiednimi argumentami, a zawartość tej partycji staje się dostępna na ścieżce „/ boot /”. Tak więc ścieżki „/ boot” i „/ home” mogą odnosić się do danych na różnych partycjach, partycje te mogą mieć różne systemy plików. Prawdopodobnie spowodował twoje nieporozumienie.
Katalogi znajdujące się fizycznie na tej samej partycji zawsze miałyby „ten sam system plików”. Kiedy ktoś mówi o systemie plików jakiegoś katalogu, tak naprawdę chodzi o system plików partycji, na której ten katalog się znajduje.
(Drobna i prawdopodobnie nieistotna korekta: czasami system plików jest wirtualny i nie ma odpowiedniej partycji. Na przykład „/ proc” zawiera coś, co wygląda bardzo podobnie do plików, ale te „pliki” są wirtualne, nie rezydują na dowolny dysk twardy i zawierają informacje o uruchomionych procesach. Istnieje również specjalny system plików „procfs”, który zapewnia zwykły interfejs plików podobny do tych danych)
źródło
Dysk jest podzielony na jedną lub więcej partycji . W systemie Windows zwykle jest tylko jedna, może z ukrytą gdzieś partycją odzyskiwania. Partycja to logicznie ciągły obszar dysku, np. „Sektory od 1 do 10 000 000”.
Na partycji można zbudować system plików. W przypadku systemu Windows jest to NTFS lub FAT; w przypadku systemu Linux jest to jedna z
ext
wersji lub różnych innych opcji.Wewnątrz systemu plików są pliki i katalogi. Linux ma katalogi, nie mam pojęcia, skąd pomysł, że nie.
W jaki sposób system operacyjny przedstawia użytkownikowi wiele partycji na wielu dyskach? W systemie Windows, to odbywa się z liter dysków :
C:
,D:
itd. W systemie Linux nie ma litery dysków i wszystko jest zrobione z punktów montowania : w określonym katalogu, przekierowywania dostępu do innego systemu plików (+) Często Po włożeniu płyty CD. lub pamięć USB pojawi się gdzieś pod/media
lub/mnt
./usr
i/usr/bin
zwykle będzie w tym samym systemie plików, ale nie jest to wymagane. Ludzie mogą oznaczać „system plików, który zawiera/usr/bin
katalog”, kiedy używają tego sformułowania.(+) Możesz to zrobić również z punktami połączenia NTFS, ale ludzie rzadko to robią. Dopóki nie zabraknie liter napędu.
źródło
Możliwe jest utrzymanie całego systemu Linux na jednej partycji, przy czym wszystkie podkatalogi są na jednym systemie plików.
Możliwe jest także rozłożenie go na kilka partycji, przy czym niektóre poddrzewa katalogów znajdują się w różnych systemach plików. Na przykład, często można umieścić
/home
,/tmp
,/usr
, i/var
na oddzielnych systemach plików. Aby odpowiedzieć na jedno z twoich pytań, czasami/usr/bin
będzie też na własnym systemie plików.Ten system ma zalety. Na przykład, jeśli
/var
zapełni się dużą ilością e-maili, nie wpłynie to na resztę systemu. Podobnie, jeśli jeden system plików jest uszkodzony z powodu awarii lub czegoś innego, inne systemy plików są nadal dobre i łatwiej jest odzyskać system.Podczas uruchamiania systemu początkowo dostępny jest tylko główny system plików. Programy tam przechowywane są uruchamiane podczas procesu rozruchu. Jeden z tych programów
mount
jest uruchamiany kilka razy przy użyciu danych z pliku/etc/fstab
, tabeli systemów plików. Na przykład: pierwotnie/home
jest to zwykły katalog w głównym systemie plików. Następnie uruchamiamy to polecenie jako root:Mówi to systemowi, że system plików na partycji
/dev/sda7
powinien zostać zamontowany w katalogu/home
. Więc teraz wszystko w tym systemie plików jest uważane za poniżej/home
.Możesz zobaczyć, co jest obecnie zamontowane, uruchamiając
df
.źródło
Czasami określamy je jako
filesystems
, ponieważ czasami te katalogi są punktami montowania. Tyle o jedynym zadanym pytaniu ...filesystem
mogą odnosić się do dwóch różnych rzeczy ... lub dwóch różnych aspektów tej samej rzeczy:Pojęcie plików i katalogów jest metaforą. Na komputerze są tylko dane, a wszystkie media to nic innego jak urządzenia, które mogą przechowywać dane. Niektóre urządzenia pozwalają na odczyt i zapis danych (np. HDD), inne umożliwiają tylko odczyt danych (np. CD-ROM), a są nawet urządzenia, które pozwalają tylko na zapis danych (np. Drukarka). Używamy metafory plików i katalogów do strukturyzowania danych, abyśmy mogli uzyskać dostęp do małych porcji danych, a nie wszystkiego jednocześnie.
Systemy plików, które umieszczamy na nośnikach pamięci, np. Ext4, xfs, fat, odgrywają rolę w tworzeniu struktury. Używamy ich do umieszczania etykiet na fragmentach danych (plikach) i do uzyskania spójnej uporządkowanej listy wszystkich etykiet (katalogów). Struktura listy jest w rzeczywistości drzewem. Najważniejszym aspektem jest to, że drzewo ma dokładnie jeden początek, jego korzeń. Utrzymanie tej struktury i zapewnienie, że dane są i pozostają dostępne, jest dość zadaniem, dlatego nie ma tylko jednego smaku systemu plików.
Innym aspektem systemów plików jest to, że zadaniem systemu operacyjnego jest udostępnienie danych przechowywanych na urządzeniach pamięci wszystkim programom. Osiągają to dwie rzeczy:
System operacyjny oferuje dokładnie jeden (programujący) interfejs umożliwiający dostęp do plików i katalogów oraz interakcję z nimi. W przypadku programów / procesów nie ma znaczenia, czy system plików na urządzeniu pamięci masowej to ext2, xfs, fat, czy cokolwiek innego. Programy / procesy uzyskują dostęp do plików i katalogów w jednolity sposób.
System operacyjny organizuje wszystkie nośniki pamięci, tj. Ich systemy plików, w jednej nadrzędnej strukturze. Programy uzyskują dostęp do plików i katalogów za pośrednictwem tej nadrzędnej struktury i nie muszą bezpośrednio wchodzić w interakcje z urządzeniami pamięci. W ten sposób programy nie muszą dbać o to, na którym urządzeniu faktycznie znajdują się dane. Ta nadrzędna struktura jest często nazywana „wirtualnym systemem plików” jądra.
Dodanie systemu plików urządzenia pamięci do wirtualnego systemu plików nazywa się „montowaniem” systemu plików. Podczas uruchamiania systemu Linux jądro tworzy wirtualny system plików (VFS). Zaraz po stworzeniu jest pusty i składa się tylko z punktu wejścia, czyli korzenia, transkrybowanego
/
. Następnie jądro montuje system plików w katalogu głównym VFS. Jest to albo ramdysk, albo natychmiast system plików na partycji na dysku twardym. Ponieważ jest dodawany w katalogu głównym VFS, ta partycja jest często określana jako główny system plików.Teraz pojawia się część, w której linie rozmazują się i widzimy, że systemy plików na urządzeniach pamięci i VFS jądra są w rzeczywistości dwoma aspektami tego samego zadania systemu operacyjnego: Po zamontowaniu głównego systemu plików VFS zawiera wiele plików i katalogów, z których wszystkie istnieją na partycji głównej. Jednak każdy katalog może stać się „punktem instalacji”. Punkt podłączenia to miejsce, w którym VFS umieszcza punkt wejścia w systemie plików na urządzeniu pamięci masowej. Oznacza to, że za każdym razem, gdy montujemy system plików w katalogu, informujemy VFS, że zamiast uzyskiwać dostęp do danych przechowywanych w tym katalogu, wolelibyśmy uzyskać dostęp do danych na innym urządzeniu pamięci masowej. Punkty montowania są zwykle pustymi katalogami, dzięki czemu nie uniemożliwiamy dostępu do danych przez zamontowanie innych systemów plików na wierzchu.
Po zainstalowaniu systemu operacyjnego od Ciebie zależy, czy chcesz umieścić wszystkie dane w jednym systemie plików, który następnie stanie się głównym systemem plików, czy też chcesz podzielić dane na wiele systemów plików. Ten ostatni wymaga, aby Twój system operacyjny zamontował wszystkie poszczególne systemy plików, aby wszystkie dane były dostępne. To, w jaki sposób dzielisz rzeczy, jest kwestią projektowania twojego systemu. Dlatego czasami katalogi znane z instalacji są nazywane systemami plików.
W przypadku komputerów, które zwykle mamy w domu, dzielenie instalacji na wiele systemów plików nie jest już konieczne. Nadal mogą istnieć dobre powody, aby to zrobić, ale jest to poza zakresem tego postu.
Aby pozostała część tego postu była krótka: Partycje to kolejny sposób uporządkowania danych na urządzeniach pamięci. W przypadku partycji jedna z ciągłych przestrzeni dyskowych jest wydzielana z fizycznego urządzenia pamięci masowej i oferuje je jako indywidualne urządzenia pamięci masowej dla systemu operacyjnego (na którym można umieścić systemy plików do zamontowania w VFS). Jednym z powodów takiego stanu rzeczy może być to, że jeden ma tylko jeden dysk twardy, ale chce korzystać z wielu różnych systemów plików. Partycja, na której żyje główny system plików, jest często określana jako partycja główna.
źródło
Robisz trochę zamieszania.
Filesystem
wskazuje mechanizm, za pomocą którego pliki są zlokalizowane i zorganizowane na urządzeniu pamięci masowej lub w pamięci masowej, takiej jak dysk twardy lub CD-ROM, a w niektórych przypadkach także w pamięci RAM.Nawet Windows używa systemów plików takich jak
NTFS
lub wcześniejFAT
.Twój przykład pokazuje powszechną praktykę w systemach Linux i Unix, aby mieć własny system złożony z różnych systemów plików zamontowanych w katalogach o nazwie mount point. Pozwala to, w przypadku problemów, ograniczyć szkody do jednego lub więcej, ale nie do wszystkich systemów plików.
Zatem FS nie jest równoważny katalogowi, a także w Linuksie istnieją katalogi, które są specjalnym rodzajem pliku
źródło