Wp/isv/Apple File System
| Razrabotnik | Apple Inc. |
|---|---|
| Polno nazvanje | Apple File System |
| Data predstavjenija | iOS: mareca 27, 2017 macOS: septembra 25, 2017 na iOS 10.3, macOS 10.13 |
| Prědhodnik | HFS Plus |
| Partition IDs | 7C3457EF-0000-11AA-AA11-00306543ECAC (GPT) |
| Struktura | |
| Sodržanje direktorij | B-tree[1] |
| Ograničenja | |
| Max. razměr fajla | 8 EB (9,223,372,036,854,775,808 bajt)[2] |
| Max. čislo fajlov | 9,223,372,036,854,775,808[2] |
| Dozvoljene simboly v imenu faila | Unicode 9.0 v kodovanju UTF-8[3] |
| Črty | |
| Zapis dat | access, attributes modified, contents modified, created |
| Interval dat | 01/01/1970 – 21/07/2554[1] |
| Različenje dat | 1 ns[2] |
| Dozvoljenja fajlovoj sistemy | Dozvoljenja Unix, NFSv4 ACL |
| Prozračna kompressija | Čestična (decmpfs)[4] |
| Prozračno šifrovanje | Da[5] |
| Copy-on-write | Da[3][5] |
| Ostaljno | |
| Poddrživane operacijne sistemy | macOS, iPadOS, iOS, tvOS, watchOS, visionOS |
Apple File System (APFS) jest proprijetarna fajlova sistema, razrabotana i razprostranjena Apple Inc. dlja macOS Sierra (10.12.4) i bolje pozdnyh versij, iOS 10.3, tvOS 10.2, watchOS 3.2, i vsih versij iPadOS. Jej cělj jest izpraviti osnovne problemy HFS+ (takože izvěstnoj kako Mac OS Extended), prědhodnika, ktory byl v upotrěbjenju s 1998 goda. APFS jest optimizovana dlja skladovanja danyh na SSD i poddrživaje šifrovanje, snapšoty i izlěpšeno obrabotyvanje integriteta metadanyh.
Historija
[edit | edit source]Apple File System byla prědstavjena na konferenciji razrabotnikov Apple (WWDC) v juniju 2016 kako zaměna HFS+, ktora byla v upotrěbjenju s 1998 goda. APFS byla izpuščena dlja 64-bitnyh iOS-aparatov 27 marca 2017 goda s izpuščenjem iOS 10.3, i dlja macOS-aparatov 25 septembra togo že goda s izpuščenjem macOS 10.13 High Sierra.
V septembru 2018 goda Apple jest izpustila čestičnu specifikaciju za APFS, ktora poddrživala read-only dostup k njej na zašifrovanyh aparatah skladovanja danyh, ne koristajučih tehnologiju Fusion. Specifikacija dlja programnogo šifrovanja byla zadokumentovana pozdněje.
Ustroj
[edit | edit source]Tuta fajlova sistema može koristati se na aparatah s odnosno maloju ili velikoju kolikostju skladišča. Ona koristaje 64-bitne inody i dostavjaje vyše bezpečno skladovanje s pomočju tehnologije Data Protection. Kod APFS, podobno kodu HFS+, koristaje komandu TRIM dlja lěpšej organizacije skladišča i povyšenja produktivnosti. Za sposob kalkulacije dostupnyh danyh v APFS, ona može povysiti bystrost čitanja i zapisi na iOS i macOS, a takože i objem skladišča na iOS-aparatah.
Shema razděla
[edit | edit source]APFS koristaje shemu razděla GPT (GUID Partition Table). V jej ramkah nahodi se jedin ili bolje kontejnerov APFS (tip razděljenja GUID jest 7C3457EF-0000-11AA-AA11-00306543ECAC). Vnutri každogo kontejnera nahodi se jedin ili nekoliko tomov APFS, ktore zajedno koristajut uděljeno prostranstvo kontejnera, i každy tom može izpolnjati rolju toma APFS. macOS 10.15 Catalina prědstavila grupu tomov APFS, ktore Finder odobražaje kako jedin tom. Firmlinky APFS nahodet se medžu tvrdymi i programnymi linkami, a takože svezyvajut toma.
V macOS Catalina rolja toma System (obyčno nazvanogo "Macintosh HD") stala read-only, a v macOS 11 Big Sur ona stala podpisanym sistemnym tomom (SSV) i montujut se toliko snapšoty toma. Rolja toma Data (obyčno nazvanogo "Macintosh HD — Data") koristaje se kako overlej ili těnj toma System, i oba toma System i Data sut čestju jednoj grupy tomov i odobražajut se v Finder kako jedin tom.
Klony
[edit | edit source]Klonovanje dozvaljaje operacijnoj sistemě efektivno stvarjati kopije fajlov na jednom tomu bez koristanja dodatnogo prostranstva dlja skladovanja. Izměnjenja v klonovanom fajlu sut zapisany kako delta-ekstenty, čto umenšaje objem skladišča, potrěbnogo dlja redaktovanja i kopirovanja dokumentov. Jednako tut odsutstvuje interfejs dlja označenja dvoh kopij jednogo i togo že fajla kako klonov drugogo, ili dlja drugyh tipov deduplikacije danyh.
Tuta funkcija avtomatično stanovi se dostupnoju, kogda koristnik kopiruje vsake fajly, koristajuči Finder, ktory jest prědustavjeny fajlovy menedžer v macOS, ale ne kogda koristaje cp komandu. Da by sdelati to v komandnoj liniji, cp utilita na macOS imaje -c parametr, ktory dozvaljaje koristati sistemny zov clonefile.
Snapšoty
[edit | edit source]Tomy APFS poddrživajut snapšoty dlja tvorjenja read-only ekzemplara fajlovoj sistemy na konkretny moment časa.
Šifrovanje
[edit | edit source]Apple File System početkovo poddrživaje polno šifrovanje diska i šifrovanje fajlov s nastupnymi opcijami:
- bez šifrovanja;
- šifrovanje jednym ključem;
- šifrovanje několikymi ključami, kde každy fajl šifruje se jednym ključem, a metadane šifrujut se drugym ključem.
Uveličeno maksimalno čislo fajlov
[edit | edit source]APFS poddrživaje 64-bitne inody, čto dozvaljaje razměstiti bolje 9 kvintilionov fajlov (2⁶³) na jednom tomu.
Integritet danyh
[edit | edit source]APFS koristaje kontroljne sumy dlja zabezpečenja integriteta metadanyh, ale ne dlja samyh danyh koristatelja, pověrjajuči se zaměsto togo na mehanizmy korigujučego koda (ECC) v aparatnom zabezpečenju skladovanja danyh.
Zaščita od upada
[edit | edit source]Apple File System jest razrabotana tako, da by odvratiti poškodženje metadanyh, izzvano upadom sistemy. Zaměsto prězapisa egzistujučih zapisov metadanyh, ona zapisyvaje kompletno nove zapisy, ukazyvaje na nove, a potom izpuščaje stare — to jest pristup, znajemy kako prěsměrovanje pri zapisu. Tuto dozvaljaje obojdti izzvanogo upadom v čas obnovjenja poškodženja zapisov, ktore sodrživajut čestično stare i čestično nove dane. Tuto takože dozvaljaje obojdti neobhodimost zapisyvati izměnjenja dvukratno, kako napriklad to děje se v žurnalisovanoj fajlovoj sistemě HFS+, kde izměnjenja na početku zapisyvajut se v žurnal, a potom v fajl kataloga.
Kompressija
[edit | edit source]APFS poddrživaje prozračno sgnetenje pojedinnyh fajlov s koristanjem algoritmov Deflate (Zlib), LZVN (libFastCompression) i LZFSE. Vse tri algoritmy sut algoritmami tipa Lempelja-Ziva. Tuta funkcija jest naslědovana od HFS+ i realizovana s pomočju tojže sistemy AppleFSCompression / decmpfs, koristajučej resursne forky ili razširjene atributy. Kako i v slučaju s HFS+, prozračnost narušaje se dlja instrumentov, ktore ne koristajut procedury, obrnute v decmpfs.
Zajedno koristanje prostranstva
[edit | edit source]APFS dodavaje možnost razměščenja několikyh logičnyh diskov (nazyvanyh tomami) v jednom kontejneru, kde dlja vsih tomov v tutom kontejneru dostupno svobodno prostranstvo (bločny aparat).
Ograničenja
[edit | edit source]Bez obzira na mnogočislne ulěpšenja sravniteljno svojego prědhodnika, HFS+, byl ugleděny red nedostatkov.
Ograničena prověrka integriteta danyh koristatelja
[edit | edit source]APFS ne podavaje kontroljne sumy dlja danyh koristatelja. Ona takože ne koristaje prědnosti energonezavisnoj operativnoj pameti s bajtovoj adresacijeju.
Produktivnost na tvrdyh diskah
[edit | edit source]Prěčisljenje fajlov i vsakyh inodnyh metadanyh generalno děje se značno bolje pomalo v fajlovoj sistemě APFS, kogda oni sut razpoložene na HDD. Tuto děje se tomu, že zaměsto skladovanja metadanyh v ustanovjenom městu, kako to dělaje HFS+, APFS skladuje s faktičnymi danymi fajla. Na SSD taka fragmentacija metadanyh jest neznačna iz-za odsutstva hodnyh čestij, ale na HDD ona privodi k značnomu sniženju produktivnosti aparata, pokoliko sčityvajuče/zapisyvajuče glavky diska dolžne fizično nahoditi razsějane fragmenty danyh.
Čto bolje, ključnoju osoblivostju APFS jest klonovanje fajlov pri zapisu, ktoro dozvaljaje brzo dvojiti fajly, stvarjajuči linky na izhodne dane, a ne kopirujuči jih bezposrědno. Tuta funkcija dodavaje take možnosti, kako tvorjenje snapšotov i brzo kopirovanje fajlov. Jednako, kogda fajly izměnjajut se poslě kopirovanja, APFS stvorjaje nove ekstenty (bloky danyh) dlja vnesenyh izměnjenij, čto s časom privodi k boljšej fragmentaciji. Tutoj problem pogaršaje v takyh aplikacijah, kako Time Machine (mehanizm rezervnogo kopirovanja), ktore stvorjajut nekoliko versij fajlov, čto ješče bolje uveličaje fragmentaciju i spomaljaje produktivnost. Kako rezultat, koristanje APFS na HDD generalno ne prěporučaje se, osoblivo dlja rabočih natug, svezanyh s čestym izměnjenjem fajlov, kopirovanjem ili koristanjem snapšotov.
Suměstimost s Time Machine, vypuščenoju do macOS 11 Big Sur
[edit | edit source]V protivnosti k HFS+, APFS ne poddrživaje tvrde linky na katalogy. Pokoliko versija programnogo zabezpečenja Time Machine, vhodeča v sostav od Mac OS X 10.5 Leopard do macOS 10.15 Catalina vključno, koristala tvrde linky na katalogy, fajlova sistema APFS početkovo ne poddrživala se dlja rezervnyh tomov. Tuto ograničenje bylo odolěno, počinajuči od macOS Big Sur, kde APFS tutčas jest prědustavjena fajlova sistema dlja novyh rezervnyh kopij Time Machine (takože sut rezervne disky, odformatovane v HFS+, ktore kako prědže poddrživajut se). Realizacija Time Machine v macOS Big Sur v kombinaciji s diskami, odformatirovanymi v APFS, zabezpečaje "bolje brzo, kompaktno i věrodostojno rezervno kopirovanje", čim to bylo možno s rezervnymi diskami, odformatovanymi v HFS+.
Problemy bezpečnosti
[edit | edit source]- V marcu 2018 goda v drajveru APFS v macOS 10.12 High Sierra byla najdena grěška, iz-za ktoroj parola šifrovanja diska vvodila se v otvorjenom vidu.
- V januaru 2021 goda v drajveru APFS dlja iOS < 14.4, macOS < 11.2, watchOS < 7.3, i tvOS < 14.4 byla najdena grěška, dozvaljajuča lokalnomu koristatelju čitati proizvoljne fajly nezavisno od jih prav dostupa.
Poddrživanje
[edit | edit source]macOS
[edit | edit source]Eksperimentalna versija APFS s něktorymi ograničenjami zabezpečaje se v macOS Sierra 10.12.4. To jest dostupno s pomočju utility diskutil v komandnoj liniji. Srěd tutyh ograničenij slěduje ugleděti, čto on ne izpolnjaje normalizaciju Unicode, v protivnosti k HFS+, čto privodi k problemam s jezykami, s izključenjem anglijskogo. Disky, odformatovane s koristanjem versiji APFS iz macOS Sierra, takože mogut byti nekonsistentne s bolje pozdnymi versijami macOS ili APFS, a versija iz Sierra ne može koristati se s Time Machine, tomami FileVault ili Fusion Drives.
Počinajuči od macOS 10.13 High Sierra, vse aparaty s fleš-pametju avtomatično prěobražajut se v fajlovu sistemu APFS. Počinajuči od macOS 10.14 Mojave, pri ustavjenju takože slučaje se obnovjenje Fusion Drive i tvrdyh diskov. Osnovny interfejs koristatelja dlja obnovjenja ne dozvaljaje možnosti odrěkti se od tutogo prěobraženja, i aparaty, odformatovane v versiji APFS dlja High Sierra, ne budut čitajeme v prědhodnyh versijah macOS. Koristatelji mogut odključiti prěobraženje v APFS, koristajuči utilitu ustanovnika startosinstall v komandnoj liniji i doručajuči parametr --converttoapfs NO.
Počinajuči od macOS Big Sur 11.2.1, tomy FileVault ne prěobražajut se v APFS. Zaměsto togo macOS formatuje vněšne disky FileVault kako logične tomy CoreStorage, odformatovane v formatu Mac OS Extended (Journaled). Disky FileVault mogut byti dodatno zašifrovane.
iOS, tvOS i watchOS
[edit | edit source]iOS 10.3, tvOS 10.2 i watchOS 3.2 prěobražajut egzistujuču fajlovu sistemu HFSX v APFS na suměstimyh aparatah.
Referencije
[edit | edit source]- 1 2 Hansen, K.H.; Toolan, F. (septembra 21, 2017). "Decoding the APFS file system". Digital Investigation. 22: 107–132. doi:10.1016/j.diin.2017.07.003. ISSN 1742-2876.
- 1 2 3 "Volume Format Comparison". Apple Developer (na anglijskom). Data dostupa: maja 25, 2018.
- 1 2 "Apple File System Guide / Frequently Asked Questions". Data dostupa: maja 25, 2018.
- ↑ Bertin, René. "Compression and APFS". Github. Data dostupa: 2 februara 2019.
- 1 2 Apple Inc. "Apple File System Guide (Features)". Data dostupa: dekembra 16, 2023.
- Tutoj članok imaje prěvod iz članka «Apple File System» v Vikipediji na anglijskom (spis avtorov; dozvoljenje CC BY-SA 4.0).