dr hab. inż. Janusz Bobulski, prof. PCz. [email protected] Katedra Informatyki

Elementy Informatyki Śledczej Wykład 5 Budowa popularnych systemów plików.

Zajęcia realizowane w ramach projektu Zintegrowany Program Rozwoju Politechniki Częstochowskiej (POWR.03.05.00-00-Z008/18-00), współfinansowany przez Unię Europejską ze środków Europejskiego Funduszu Społecznego w ramach Programu Operacyjnego Wiedza Edukacja Rozwój. Model systemu plików

System plików System plików (ang. ) jest zapisany na woluminie i opisuje przechowywane w nim pliki oraz powiązane z nimi metadane. Na warstwie systemu plików możesz również znaleźć takie elementy jak metadane specyficzne dla danego typu systemu plików i wykorzystywane wyłącznie do zapewnienia jego poprawnego działania — dobrym przykładem mogą być tzw. superbloki (ang. superblocks) występujące w systemie Ext2. Model systemu plików

Jednostka danych Jednostka danych (ang. Data Unit) to najmniejszy niezależny blok danych dostępny w danym systemie plików. W rozwiązaniach wywodzących się z systemu UNIX takie jednostki danych noszą nazwę bloków (ang. blocks). Takie bloki danych mają zazwyczaj rozmiar będący wielokrotnością rozmiaru pojedynczego sektora. Jeszcze nie tak dawno temu sektory na dyskach miały rozmiar 512 bajtów, ale we współczesnych systemach plików najmniejsze adresowalne jednostki danych mają rozmiar 4096 bajtów (4 kB) lub więcej. Informacje dostępne na tej warstwie modelu systemu plików są proste — jest to zawartość poszczególnych jednostek danych. Na przykład jeżeli wybrana jednostka danych jest przypisana do zdjęcia w formacie JPEG, to taka jednostka danych przechowuje fragment danych obrazu w formacie JPEG. Jeżeli wybrana jednostka danych jest przypisana do pliku tekstowego, to po prostu przechowuje fragment zawartości takiego pliku. Windows

W systemie Windows obsługiwane są dwa podstawowe systemy plików: FAT i NTFS. Nazwa FAT to akronim wyrażenia File Allocation Table (czyli tablica alokacji plików), natomiast nazwa NTFS to akronim wyrażenia New Technology File System (czyli system plików nowej technologii). Systemy plików rodziny FAT posiadają kilka różnych wersji i są obsługiwane przez wiele innych systemów operacyjnych, takich jak Linux czy Mac OS X. W porównaniu z FAT wielką zaletą systemu NTFS jest możliwość tworzenia list kontroli dostępu (Access Control List — ACL) dla poszczególnych obiektów zapisywanych w systemie plików. FAT

System plików FAT jest jednym z najprostszych systemów plików i jest obsługiwany praktycznie przez wszystkie systemy operacyjne firmy Microsoft od początków istnienia firmy. FAT był podstawowym systemem plików w systemie MS-DOS i na dyskietkach, a także był bardzo intensywnie wykorzystywany w systemach Windows 3.x, Windows 95 i Windows 98. Co ciekawe, ten system plików jest nadal wykorzystywany na wielu wymiennych nośnikach pamięci masowych, takich jak pamięci USB czy karty pamięci używane w aparatach cyfrowych. FAT

System FAT jest obsługiwany w wielu innych systemach operacyjnych, dzięki czemu jest doskonałym rozwiązaniem w sytuacji, kiedy trzeba przenieść dane z jednego systemu operacyjnego na drugi. Na przykład jeżeli podczas dochodzenia używasz stacji roboczej pracującej pod kontrolą systemu Linux, możesz zapisać otrzymane wyniki na nośniku z systemem plików FAT i bez problemów odczytać takie dane na innym komputerze pracującym pod kontrolą systemu Windows. Pamiętaj jednak, że system FAT nie posiada takich mechanizmów bezpieczeństwa jak inne, bardziej zaawansowane systemy plików, takie jak na przykład NTFS FAT (16) (DOS, Windows 98 OSR2): wykorzystuje adresowanie 16-bitowe daje możliwość zaadresowania 2 do potęgi 16 czyli 65 535 jednostek alokacji maksymalny rozmiar partycji to 2 GB kompatybilność ze starszymi systemami Windows rozmiar jednostki alokacji mniejszy niż 64 KB silna fragmentacja plików pozostawienie zgubionych klastrów. FAT

System plików FAT korzysta z tradycyjnej konwencji nazewnictwa plików 8.3. Wszystkie nazwy plików muszą być utworzone przy użyciu zestawu znaków ASCII. Nazwa pliku lub katalogu może zawierać maksymalnie osiem znaków, po których występuje separator w postaci kropki (.) i maksymalnie trzyliterowe rozszerzenie. Nazwa musi zaczynać się literą lub cyfrą i może zawierać dowolne znaki z wyjątkiem następujących: . " / \ [ ] : ; | = , Jeśli zostanie użyty którykolwiek z tych znaków, wyniki mogą być nieoczekiwane. Nazwa nie może zawierać żadnych spacji. Wszystkie znaki są konwertowane na wielkie litery. Zalety systemu plików FAT

W żadnym z systemów plików obsługiwanych przez system Windows NT nie można cofnąć operacji usunięcia. Służące do tego narzędzia próbują uzyskać bezpośredni dostęp do sprzętu, co w systemie Windows NT jest niemożliwe. Jeśli jednak plik jest umieszczony na partycji FAT i zostanie uruchomiony system MS-DOS, usunięcie pliku może być cofnięte. System plików FAT jest najlepszy dla dysków i/lub partycji o rozmiarze nieprzekraczającym w przybliżeniu 200 MB, ponieważ w takim wypadku uruchamia się bez nadmiernego obciążenia. Wady systemu plików FAT

Z systemu plików FAT nie powinno się raczej korzystać, jeśli rozmiar dysku lub partycji przekracza 200 MB. Jest to spowodowane tym, że w miarę wzrostu objętości wydajność systemu FAT szybko spada. Nie można ustawić uprawnień do plików znajdujących się na partycjach FAT. Rozmiar partycji FAT jest ograniczony do 4 gigabajtów (GB) w systemie Windows NT i do 2 GB w systemie MS-DOS. FAT 32

FAT 32 (Windows 95 OSR2, Windows 98, Windows ME): • wykorzystuje adresowanie 32-bitowe daje możliwość zaadresowania 2 do potęgi 32 czyli 4 294 967 296 jednostek alokacji maksymalna pojemność dysku to 2 TB (w praktyce 127 GB) maksymalny rozmiar partycji to 32 GB rozmiar jednostek alokacji większy niż 4 KB a mniejszy niż 32 KB • kompatybilność tylko z nowszymi systemami Windows • rozrastanie tablicy alokacji • fragmentacja w trakcie modyfikowania i kasowania plików trwa dłużej niż w systemie FAT tworzenie, kasowanie i modyfikacja plików pociąga za sobą zmiany w tablicy FAT . exFAT exFAT (Extended File Allocation Table, błędnie zwany FAT64) – system plików stworzony przez Microsoft specjalnie na potrzeby nośników zewnętrznych (np.: pamięci flash, dyski SSD, zewnętrzne dyski magnetyczne). Został zawarty w następujących systemach operacyjnych: Windows Embedded CE 6.0, Windows Server 2008, Windows Vista z dodatkiem Service Pack 1, Windows 7, Windows 8 oraz Windows 10. Dla Windows XP i Windows Server 2003 Microsoft opublikował stosowną aktualizację dodającą wsparcie dla systemu[1]. Ten system plików domyślnie obsługuje system Mac OS X Snow Leopard 10.6.5 lub nowszy. W systemach Linux otrzymujemy możliwość odczytu i zapisu plików po zainstalowaniu pakietów . Także linuksowa biblioteka libparted w wersji 3.1 i program gparted w wersji 0.13 umożliwia utworzenie partycji z systemem plików exFAT. exFAT może być używany wszędzie tam, gdzie system plików NTFS nie jest najlepszym rozwiązaniem, na przykład ze względu na dużą nadmiarowość struktury danych i zaawansowany system zarządzania prawami dostępu i własności. Korzyści exFAT w porównaniu z FAT32

• Skalowalność do dużych rozmiarów dysków, • Limit wielkości pliku wynosi 264 bajtów (16 eksabajtów), dla FAT32 limit wynosił 232 bajtów (4 gigabajty), • Rozmiar klastra można zwiększyć do 32 MB, • Udoskonalono wydajność przy kopiowaniu/usuwaniu plików dzięki wprowadzeniu funkcji „free space bitmap” (indeksowanie pustej przestrzeni dyskowej dla poprawy wydajności zapisu plików), • Nieograniczona liczba plików w pojedynczym katalogu. Problemy związane z exFAT

• Niemożność użycia funkcji „ReadyBoost” w Windows Vista na nośniku sformatowanym w exFAT, przy czym można korzystać z „ReadyBoost” w systemie Windows 7, • Brak wsparcia dla systemu plików w starszych wersjach systemu Windows bez aktualizacji oraz systemach OS X w wersjach starszych niż Snow Leopard 10.6.5, • Ze względu na warunki licencyjne Microsoftu na system plików exFAT, aktualne dystrybucje Linuxa nie obsługują już natywnie formatowania w tym systemie, • Większość narzędzi dyskowych innych firm (m.in. do diagnostyki, testów, defragmentacji, partycjonowania, bezpiecznego nadpisywania) nie „widzi” lub nie obsługuje dysków i partycji sformatowanych w exFAT. NTFS

NTFS (Windows NT, Windows 2000, Windows XP, Windows Vista): system plików nowej generacji standardowo używany w systemach Windows NT i jego następcach zaprojektowany pod kątem pracy z wieloma użytkownikami daje możliwość zaadresowania 2 do potęgi 64 jednostek alokacji maksymalna pojemność dysku to 16 EB (w praktyce 2 TB) prawa dostępu do plików i katalogów system zarządzania zapisem i odczytem danych księgowanie czyli mechanizm, który zwiększa bezpieczeństwo systemu oraz skraca do minimum czas sprawdzania systemu plików po awarii możliwość szyfrowania danych możliwość kompresji danych "w locie" możliwość przydzielania przestrzeni każdemu użytkownikowi osobno. NTFS

Wspierany jest także w systemach Linux i Berkeley Software Distribution za pomocą sterownika NTFS-3G, a także w systemie MacOS w trybie tylko do odczytu (z możliwością zapisu przy użyciu dodatkowego oprogramowania NTFS

NTFS wywodzi się od systemu plików HPFS, opracowanego przez Microsoft i IBM dla systemu OS/2. Został wprowadzony w celu zastąpienia starszego FAT-u, używanego w MS-DOS. Zaczerpnięte z HPFS ulepszenia w stosunku do FAT-u obejmują obsługę metadanych oraz dodanie struktur poprawiających szybkość pracy z dużą liczbą plików oraz dyskami o dużej pojemności. Dalsze ulepszenia (w stosunku do HPFS) polegają na wprowadzeniu listy kontroli dostępu (ACL) i dziennika operacji dyskowych (ang. journal). Ponadto NTFS nie ma tak ostrego ograniczenia dotyczącego maksymalnego rozmiaru pliku (do 4GB w FAT32), co umożliwia na przykład przechowanie obrazu płyty DVD na dysku twardym, bez dzielenia go na mniejsze pliki. NTFS

Ograniczenia Maksymalny rozmiar pliku to: Teoretycznie: 16 EB – 1 KB (264 B – 1 KB) W implementacji: 16 TB – 64 KB (244 B – 64 KB)

Maksymalny rozmiar partycji to: Teoretycznie: 264 klastrów – 1 klaster W implementacji: 256 TB – 64 KB (232 klastrów – 1 klaster) Cechy NTFS

NTFS v3.0 zawiera kilka nowych funkcji w stosunku do swoich poprzedników: obsługę plików rzadkich, przydziały dysków, punkty ponownej analizy, Śledzenie łączy rozproszonych oraz szyfrowanie na poziomie plików zwane Encrypting File System (EFS).

• księgowanie – (od NTFS 3.0 w Windows 2000); wewnętrzny dziennik zmian znacząco poprawia ochronę danych przed błędami zapisu; wspomaga przy tym działanie narzędzi dyskowych, takich jak CHKDSK;

• szyfrowanie plików i katalogów – (od NTFS 3.0 w Windows 2000) przy pomocy nakładek tworzących EFS – Encrypting File System – nie jest jednak możliwe zaszyfrowanie plików systemowych; od Windows XP, podsystem EFS dostępny jest tylko w wersjach Professional lub wyższych (i ich odpowiednikach, np. Vista Business); nie jest dostępny w wersjach Home i ich derywatach; EFS nie jest przeznaczony do szyfrowania prywatnych danych na komputerach domowych, a raczej do ochrony danych w systemach o wielu użytkownikach w środowiskach korporacyjnych, szczególnie w domenach Windows 2000 i Windows Server 2003; wersja EFS używana przez Windows 2000 różni się od wersji używanej w późniejszych wersjach Windows i jest z nimi niezgodna. Cechy NTFS

• kompresja danych „w locie”; pliki kompresowane przy pomocy wbudowanych funkcji NTFS nie mogą być szyfrowane przy pomocy EFS i odwrotnie; • prawa dostępu dla grup i użytkowników – dostęp do tej funkcji jest ograniczony w Windows XP Home Edition i późniejszych; pełne wykorzystanie praw dostępu, wraz z możliwością wykonania inspekcji praw dostępu z zapisem do dziennika, możliwe jest w Windows 2000 (wszystkie wersje dla komputerów PC), Windows XP Professional, Windows Server 2003 i nie-domowych wersjach Windows Vista • transakcyjność – (od Windows Vista / Windows Server 2008) pozwala na wykonywanie transakcyjnych operacji na systemie plików. Transakcje są optymalizowane tak, aby czas ich zamknięcia był jak najkrótszy, dzięki czemu w normalnych warunkach nie stanowią dodatkowego obciążenia. Transakcje mogą obejmować wiele plików i pozostawać dowolnie długo otwarte. Wady NTFS

Pliki w tym systemie plików ulegają fragmentacji. Oznacza to, że wraz z użytkowaniem komputera, wydłuża się czas operacji odczytu i zapisu na dysku, co powoduje że system operacyjny uruchamia się wolniej, programy są wolniej wczytywane. Defragmentacja, będąca uporządkowaniem fizycznej struktury plików, czyli odwrotnością procesu fragmentacji, może trwać nawet kilka godzin w zależności od wielkości dysku i jego parametrów. Większość systemów plików ulega fragmentacji, jednakże m.in. linuxowe systemy plików starają się zredukować fragmentację do minimum – w przeciwieństwie do NTFS. Linux ext

Pierwszy linuksowy system plików dopuszczał on pliki o rozmiarze do 64 MB i partycje do 2 GB. Poważną niedogodnością ext był fakt, że po dłuższym działaniu prowadził do dużej fragmentacji. Został szybko zastąpiony przez ext2. EXT2/3

Zdecydowana większość dystrybucji systemu Linux domyślnie wykorzystywała system plików o nazwie Ext3. System ten jest następcą popularnego do niedawna systemu Ext2. Różnica między nimi polega na tym, że w systemie Ext3 zaimplementowany został mechanizm księgowania transakcji dyskowych; praktycznie wszystkie inne struktury systemu Ext2 pozostały niezmienione. W praktyce użytkownik za pomocą odpowiedniego polecenia może bez problemu zamontować woluminy Ext3 jako woluminy Ext2. Jądro systemu Linux obsługuje również wiele innych systemów operacyjnych, takich jak ReiserFS, XFS czy JFS. Ponieważ takie systemy plików nie są generalnie używane w domyślnych instalacjach systemu Linux, ich obecność może wskazywać, że obsługujący je system został zbudowany do spełniania określonych zadań (w przeciwieństwie do systemów ogólnego przeznaczenia, np. domowych czy biurowych). ext2

ext2 (ang. Second Extended File System) – drugi rozszerzony system plików dla systemu Linux. Ext2 zastąpił rozszerzony system plików ext. Rozpoznanie uszkodzenia systemu plików (np. po załamaniu się systemu) następuje przy starcie systemu, co pozwala na automatyczne naprawianie szkód za pomocą oddzielnego programu (e2fsck), uszkodzone pliki zapisywane są w katalogu lost+found. System plików ext2 zawiera mechanizm zapobiegający znacznej fragmentacji danych, co zdarzało się podczas używania poprzedniej jego wersji. ext2

Ext2 przy domyślnym rozmiarze bloku (4 KB) obsługuje partycje o wielkości do 4 TB i pojedyncze pliki o wielkości do 2 GB. Nazwy plików mogą mieć do 255 znaków długości.

Ważnym elementem systemu ext2 są wolne pola w strukturach danych – to dzięki nim między innymi, możliwa jest konwersja „w locie” do systemu ext3 – wykorzystuje on po prostu część z nich do przechowywania swoich danych. ext3

ext3 (ang. Third Extended File System) – system plików oparty na systemie ext2. Jest to domyślny system plików w większości dystrybucji systemu Linux opartych na jądrze od 2.4 do 2.6. Ext3 - Księgowanie System plików ext3 jest rozszerzeniem ext2 i różni się od niego dodanym mechanizmem księgowania – dokładnego zapisu zmian na dysku, który w razie awarii systemu umożliwia szybsze przywrócenie spójności systemu plików niż w przypadku ext2. Poza mechanizmem księgowania system plików ext3 różni się od ext2 brakiem możliwości odzyskania skasowanych plików. W odróżnieniu od większości innych systemów z księgowaniem, system ext3 daje do wyboru trzy tryby księgowania: • w trybie najbezpieczniejszym księgowane są zarówno metadane, jak i zwykłe dane; • w trybie domyślnym księgowane są tylko metadane; • istnieje jeszcze jeden tryb, w którym również księgowane są tylko metadane, ale jest mniej bezpieczny, ponieważ pozwala na modyfikację danych objętych metadanymi niezapisanymi jeszcze na dysk. Zalety ext3

• Prosta implementacja • Znikoma fragmentacja plików • Małe obciążenie procesora w porównaniu z ReiserFS i XFS • Kompatybilność z ext2. Wady ext3

• Ze względu na zerowanie wskaźników do węzłów usuniętych plików, w systemie ext3 jest bardzo utrudnione odzyskanie skasowanych plików (w przeciwieństwie do ext2). • Zmiana wielkości partycji bez utraty danych możliwa jedynie po odmontowaniu i zamianie na ext2 – zmianę wielkości pracującej partycji umożliwia ReiserFS. • Dla danych dostępna niepełna powierzchnia dysku. • Ograniczona wielkość partycji do 32 TiB – pół miliona razy większą wielkość partycji (do 16 EiB) zapewnia XFS. ext4

ext4 (ang. Fourth Extended File System) – czwarta wersja rozszerzonego systemu plików, następca ext3. Obecnie jeden z najpopularniejszych systemów plików dla Linuksa. Obecny jest w źródłach Linuksa od wersji 2.6.19. Od wersji jądra 2.6.28, wydanego 25 grudnia 2008 roku, uznany za stabilny. Właściwości ext4

• większe limity rozmiaru - umożliwia obsługę woluminów do 1 eksbibajta (EiB). Wielkość pojedynczego pliku nie może przekraczać 16 tebibajtów (TiB)[1]. • obsługa extents - za pomocą mechanizmu extents zmieniona została filozofia organizacji bloków, w których przechowywany jest plik na dysku. W systemie ext4 pliki przechowywane są w ciągłym zbiorze bloków, nazywanym extent. W i-węźle przechowywane mogą być maksymalnie 4 informacje o extent, a każdy taki zbiór może zawierać maksymalnie 128 MiB przy rozmiarze bloku 4kiB (przy większym rozmiarze pliku używane jest pośrednie adresowanie). Dane te są przechowywane zamiast wskaźników do bloków. • Prealokacja - system plików z włączoną obsługą extents może realizować prealokację bloków należących do pliku. Aby z niej skorzystać program użytkownika musi użyć funkcji fallocate() informującej system plików jaki rozmiar należy zablokować. Algorytm alokacji bloków uwzględnia to, że powinny być one ciągłe. Struktura ext4

Ext4 dzieli urządzenie magazynujące na serie grup blokowych. By zmniejszyć trudności związane z wydajnością w wyniku fragmentacji alokator blokowy stara się utrzymać bloki każdego pliku w tej samej grupie, by skrócić czas wyszukiwania. Blok Ext4 przydziela pamięć w jednostce zwanej „blokiem”. Blok to grupa sektorów między 1kB a 64 kB (domyślnie 4kB), gdzie liczba sektorów musi być potęgą liczby 2. Bloki z kolei są pogrupowane w większe jednostki zwane grupami bloków. Rozmiar bloku jest określany w czasie zakładania systemu plików poleceniem mkfs. Domyślnie system plików może zawierać 232 bloków, chyba że funkcja „64-bitowa” jest włączona, to system plików może mieć 264 bloków. Właściwości ext4

• opóźniona alokacja - system plików pozwala na alokację opóźnioną (allocate-on-flush), pozwalającą na zaalokowanie bloków dopiero w trakcie zapisu całego pliku na dysku. Stosując tę technikę, jądro zapisuje plik na dysku dopiero podczas zapisywania brudnych buforów, lub gdy program użytkownika wywoła funkcję fsync().

• kompatybilność wsteczna - ext4 jest wstecznie kompatybilny z ext3 oraz ext2, co pozwala na zamontowanie ext3 oraz ext2 jako ext4. Pozwala to nieznacznie poprawić wydajność ponieważ niektóre z nowych funkcji ext4, jak na przykład nowy algorytm alokacji bloków, mogą być również użyte z ext3 oraz ext2. ext3 jest częściowo kompatybilny wprzód z ext4, co oznacza że ext4 może być zamontowany jako ext3 (używając „ext3” jako system plików podczas montowania). Jednak jeżeli partycja ext4 używa extents (głównej nowej funkcji ext4), wtedy nie ma możliwości zamontowania jako ext3.

• zwiększona liczba obsługiwanych podfolderów, w systemie ext3 katalog może posiadać maksymalnie 31 998 podkatalogów, w ext4 limit ten został usunięty. HPFS

High Performance File System - system plików bez księgowania stworzony na potrzeby systemu operacyjnego OS/2, po raz pierwszy zastosowany w roku 1989 w OS/2 1.2. W przeciwieństwie do starszego FAT od początku tworzony był z myślą o dyskach twardych. Z tego systemu wywodzi się NTFS. HPFS obsługuje długie nazwy plików (do 256 znaków), rozpoznaje małe i duże litery, umożliwia używanie znaków narodowych. Maksymalny rozmiar partycji to 2 TB, pliku 2 GB. HFS

HFS (Macintosh Hierarchical Filesystem) – system plików obsługujący księgowanie, stosowany przez systemy operacyjne z rodziny Mac OS w urządzeniach firmy Apple Inc. Pierwotnie zaprojektowany do wykorzystania w nośnikach typu: dyskietka oraz dysk twardy znalazł również zastosowanie w nośnikach przeznaczonych „tylko do odczytu” typu CD-ROM. HFS jest również znany pod nazwą Mac OS Standard, a także błędną nazwą HFS Standard, w odróżnieniu od jego następcy – formatu plików HFS Plus (Mac OS Extended, również błędnie nazywanego HFS Extended). HFS

HFS został zaprezentowany po raz pierwszy w roku 1985 razem z systemem operacyjnym System 2.1 i był podstawowym formatem do przechowywania danych w komputerach Mac aż do roku 1998, w którym pojawił się system operacyjny Mac OS 8.1, a w nim jego następca – format plików HFS+. Wraz z premierą systemu Mac OS X 10.6 Apple ograniczył obsługę formatu HFS, który może być montowany jedynie w trybie „tylko do odczytu”. Ten system plików jest także używany przez systemy operacyjne urządzeń przenośnych firmy Apple Inc. (np. iPhone, iPod itp.) HFS+

HFS+ lub HFS Plus – system plików rozwijany przez firmę Apple Inc. zastępujący starszy format HFS () jako główny system plików wykorzystywany w komputerach Mac z zainstalowanym systemem operacyjnym Mac OS. HFS+ jest również wykorzystywany przez przenośny odtwarzacz multimedialny iPod w przypadku, gdy odtwarzacz został skonfigurowany pod kontrolą systemu OS X[1]. HFS+ jest również znany jako Mac OS Extended (lub też błędnie HFS Extended), podczas, gdy jego poprzednik HFS jako Mac OS Standard (lub błędnie HFS Standard). W czasie prac projektowych firma Apple dla oznaczenie tego systemu plików posługiwała się nazwą kodową Sequoia. HFS+

HFS+ jako udoskonalona wersja systemu HFS obsługuje znacznie większe pliki (adresy bloków alokacji mają długość 32 bitów zamiast 16 bitów) oraz korzysta z Unikodu przy zapisywaniu nazw plików oraz folderów. Nazwy plików w HFS+ mogą mieć maksymalną długość 255 znaków, w odróżnieniu od 31 znaków w starszej wersji. Podobnie jak HFS, HFS+ używa struktury B-drzewa do przechowywania metadanych. ISO

ISO 9660 (płyty CD, DVD): standardowy system plików płyt CD-ROM przeznaczony tylko do odczytu stworzony w celu współpracy z różnymi systemami operacyjnymi dostęp do pliku wymaga niewielkiej liczby przesunięć głowicy duża swoboda we wzajemnym ułożeniu plików i katalogów na dysku wszystkie dane zapisane są w spójnych obszarach (alokacja ciągła).