Knowledge (XXG)

Journaling file system

Source 📝

144:; if a crash occurs between steps 2 and 3, then the blocks previously used by the file cannot be used for new files, effectively decreasing the storage capacity of the file system. Re-arranging the steps does not help, either. If step 3 preceded step 1, a crash between them could allow the file's blocks to be reused for a new file, meaning the partially deleted file would contain part of the contents of another file, and modifications to either file would show up in both. On the other hand, if step 2 preceded step 1, a crash between them would cause the file to be inaccessible, despite appearing to exist. 332:) avoid in-place changes to file data by writing out the data in newly allocated blocks, followed by updated metadata that would point to the new data and disown the old, followed by metadata pointing to that, and so on up to the superblock, or the root of the file system hierarchy. This has the same correctness-preserving properties as a journal, without the write-twice overhead. 155:(the file system checker). This must typically be done before the file system is next mounted for read-write access. If the file system is large and if there is relatively little I/O bandwidth, this can take a long time and result in longer downtimes if it blocks the rest of the system from coming back online. 292:: they order their writes in such a way that the on-disk file system is never inconsistent, or that the only inconsistency that can be created in the event of a crash is a storage leak. To recover from these leaks, the free space map is reconciled against a full walk of the file system at next mount. This 258:
or some similar scheme) to maximize throughput. To avoid an out-of-order write hazard with a metadata-only journal, writes for file data must be sorted so that they are committed to storage before their associated metadata. This can be tricky to implement because it requires coordination within the
200:
logs an advance copy of every block that will later be written to the main file system. If there is a crash when the main file system is being written to, the write can simply be replayed to completion when the file system is next mounted. If there is a crash when the write is being logged to the
262:
To complicate matters, many mass storage devices have their own write caches, in which they may aggressively reorder writes for better performance. (This is particularly common on magnetic hard drives, which have large seek latencies that can be minimized with elevator sorting.) Some journaling
158:
To prevent this, a journaled file system allocates a special area—the journal—in which it records the changes it will make ahead of time. After a crash, recovery simply involves reading the journal from the file system and replaying changes from this journal until the file system is consistent
224:
in the journal, and trades fault tolerance for substantially better write performance. A file system with a logical journal still recovers quickly after a crash, but may allow unjournaled file data and journaled metadata to fall out of sync with each other, causing data corruption.
171:
Some file systems allow the journal to grow, shrink and be re-allocated just as a regular file, while others put the journal in a contiguous area or a hidden file that is guaranteed not to move or change size while the file system is mounted. Some file systems may also allow
259:
operating system kernel between the file system driver and write cache. An out-of-order write hazard can also occur if a device cannot write blocks immediately to its underlying storage, that is, it cannot flush its write-cache to disk due to deferred write being enabled.
70:, resulting in improved performance at the expense of increased possibility for data corruption. Alternatively, a journaling file system may track both stored data and related metadata, while some implementations allow selectable behavior in this regard. 163:(not divisible) in that they either succeed (succeeded originally or are replayed completely during recovery), or are not replayed at all (are skipped because they had not yet been completely written to the journal before the crash occurred). 188:) bracket every change logged with a checksum, on the understanding that a crash would leave a partially written change with a missing (or mismatched) checksum that can simply be ignored when replaying the journal at next remount. 86:
3.1 as one of the first UNIX commercial filesystems that implemented journaling. The next year the idea was popularized in a widely cited paper on log-structured file systems. This was subsequently implemented in Microsoft's
180:
or battery-backed non-volatile RAM. Changes to the journal may themselves be journaled for additional redundancy, or the journal may be distributed across multiple physical volumes to protect against device failure.
263:
file systems conservatively assume such write-reordering always takes place, and sacrifice performance for correctness by forcing the device to flush its cache at certain points in the journal (called barriers in
115:
Updating file systems to reflect changes to files and directories usually requires many separate write operations. This makes it possible for an interruption (like a power failure or system
603: 246:
In a metadata-only journal, step 3 would not be logged. If step 3 was not done, but steps 1 and 2 are replayed during recovery, the file will be appended with garbage.
2073: 184:
The internal format of the journal must guard against crashes while the journal itself is being written to. Many journal implementations (such as the JBD2 layer in
665: 2020: 401: 59:. In the event of a system crash or power failure, such file systems can be brought back online more quickly with a lower likelihood of becoming 729: 704: 2349: 2320: 293: 1961: 1436: 435: 1951: 1122: 931: 312:
the file system: it occupies the entire storage device and is structured so that it can be traversed as would a normal file system.
1573: 2124: 2068: 1239: 961: 921: 2043: 2013: 592: 2535: 2236: 2134: 566:
File Systems from Tanenbaum, A.S. (2008). Modern operating systems (3rd ed., pp. 287). Upper Saddle River, NJ: Prentice Hall.
148: 2514: 2063: 2048: 1018: 2109: 2094: 2053: 1956: 1372: 946: 160: 2275: 2222: 1877: 1725: 1657: 951: 758: 2290: 2129: 2006: 1762: 1752: 1742: 1134: 724: 697: 346: 305: 657: 490: 2325: 2144: 2104: 2099: 2058: 467: 395: 2368: 2255: 2119: 1827: 1680: 1583: 1528: 1403: 1259: 1028: 635: 2114: 1926: 1882: 1864: 1563: 1553: 1008: 2502: 2330: 2310: 2259: 2217: 1772: 1675: 1154: 974: 838: 768: 372: 367: 204:
Physical journals impose a significant performance penalty because every changed block must be committed
2285: 2251: 2153: 2089: 1908: 1817: 1767: 1710: 1456: 1426: 1377: 1329: 1229: 1202: 1079: 969: 882: 773: 690: 201:
journal, the partial write will have a missing or mismatched checksum and can be ignored at next mount.
2482: 2456: 1982: 1943: 1757: 1487: 1476: 1451: 1388: 1092: 909: 899: 855: 820: 2451: 2403: 2280: 1987: 1933: 1872: 1461: 1129: 1070: 986: 52: 542: 2388: 2295: 1977: 1839: 1802: 1715: 1441: 1431: 1416: 1357: 1187: 850: 843: 830: 783: 255: 66:
Depending on the actual implementation, a journaling file system may only keep track of stored
2497: 2446: 2378: 2335: 2176: 1792: 1732: 1568: 1254: 1224: 1216: 1085: 981: 956: 778: 361: 177: 140:
If a crash occurs after step 1 and before step 2, there will be an orphaned inode and hence a
116: 79: 31: 2477: 2029: 1812: 1720: 1518: 1168: 1112: 801: 505: 426: 285: 2421: 2383: 2354: 1921: 1834: 1342: 736: 60: 523: 2507: 2431: 2393: 2265: 1822: 1807: 1747: 925: 796: 2529: 2373: 2212: 2166: 1852: 1797: 1471: 1411: 1270: 321: 17: 2300: 1916: 1624: 1212: 1179: 1117: 1097: 658:"Journaling Versus Soft Updates: Asynchronous Meta-data Protection in File Systems" 289: 239:
The free space map, to mark out an allocation of space for the to-be-appended data.
141: 56: 51:'s main part by recording the goal of such changes in a data structure known as a " 491:"Evolution of storage facilities in AIX Version 3 for RISC System/6000 processors" 489:
Chang, A.; Mergen, M.F.; Rader, R.K.; Roberts, J.A.; Porter, S.L. (January 1990),
2426: 2408: 2191: 2181: 2171: 1614: 713: 147:
Detecting and recovering from such inconsistencies normally requires a complete
48: 44: 1892: 1690: 356: 208:
to storage, but may be acceptable when absolute fault protection is required.
88: 2363: 2270: 2196: 2161: 1847: 1588: 1466: 1197: 1065: 1060: 119:) between writes to leave data structures in an invalid intermediate state. 2492: 1665: 1609: 1578: 1367: 1192: 1048: 941: 894: 788: 591:
Prabhakaran, Vijayan; Arpaci-Dusseau, Andrea C; Arpaci-Dusseau, Remzi H,
351: 221: 122:
For example, deleting a file on a Unix file system involves three steps:
96: 67: 509: 425:
Arpaci-Dusseau, Remzi H.; Arpaci-Dusseau, Andrea C. (January 21, 2014),
2487: 2416: 2186: 1619: 1593: 1420: 1053: 1023: 914: 870: 228:
For example, appending to a file may involve three separate writes to:
254:
The write cache in most operating systems sorts its writes (using the
1629: 1538: 1533: 1337: 1038: 459: 1998: 308:, the write-twice penalty does not apply because the journal itself 629: 2436: 1887: 1685: 1670: 1647: 1642: 1637: 1548: 1543: 1481: 1362: 1315: 1310: 1303: 1298: 1293: 1288: 1244: 1234: 1139: 1107: 1001: 996: 991: 887: 815: 763: 329: 233: 130: 100: 1558: 1523: 1513: 1508: 1446: 1382: 1352: 1347: 1283: 1278: 1249: 1158: 1149: 1102: 1043: 1013: 904: 875: 865: 860: 825: 807: 341: 268: 264: 185: 152: 104: 92: 2002: 686: 682: 242:
The newly allocated space, to actually write the appended data.
2472: 1164: 1144: 1033: 935: 325: 83: 236:, to note in the file's metadata that its size has increased. 531:. ACM 13th Annual Symposium on Operating Systems Principles. 525:
The Design and Implementation of a Log-Structure File System
136:
Returning all disk blocks to the pool of free disk blocks.
576:
Tweedie, Stephen (2000), "Ext3, journaling filesystem",
656:
Seltzer, Margo I; Ganger, Gregory R; McKusick, M Kirk,
288:
implementations avoid journaling and instead implement
151:
of its data structures, for example by a tool such as
522:
Rosembaum, Mendel; Ousterhout, John (February 1991).
47:
that keeps track of changes not yet committed to the
2465: 2402: 2348: 2309: 2244: 2235: 2205: 2152: 2143: 2082: 2036: 1970: 1942: 1907: 1863: 1781: 1703: 1656: 1602: 1497: 1402: 1328: 1268: 1211: 1178: 745: 593:"Analysis and Evolution of Journaling File Systems" 389: 387: 2014: 698: 8: 364: – a file system made by IBM 2241: 2149: 2021: 2007: 1999: 1785: 1501: 1265: 751: 705: 691: 683: 578:Proceedings of the Ottawa Linux Symposium 420: 418: 397:Anatomy of Linux journaling file systems 159:again. The changes are thus said to be 27:File system for tracking pending changes 662:2000 USENIX Annual Technical Conference 609:from the original on September 26, 2007 600:2005 USENIX Annual Technical Conference 498:IBM Journal of Research and Development 383: 30:For the IBM Journaled File System, see 470:from the original on February 25, 2015 428:Crash Consistency: FSCK and Journaling 404:from the original on February 21, 2009 668:from the original on October 26, 2007 441:from the original on January 24, 2014 7: 638:from the original on March 14, 2010 631:Barriers and journaling filesystems 296:is usually done in the background. 25: 628:Corbet, Jonathan (May 21, 2008), 2125:Object-oriented operating system 176:on a separate device, such as a 95:filesystem in 1993, in Apple's 2135:Supercomputer operating system 1: 460:"tune2fs(8) – Linux man page" 394:Jones, M Tim (June 4, 2008), 126:Removing its directory entry. 2110:Just enough operating system 2095:Distributed operating system 220:stores only changes to file 2223:User space and kernel space 1878:Filesystem-level encryption 362:Journaled File System (JFS) 306:log-structured file systems 300:Log-structured file systems 133:to the pool of free inodes. 99:filesystem in 1998, and in 2552: 2130:Real-time operating system 725:Comparison of file systems 347:Comparison of file systems 316:Copy-on-write file systems 29: 2326:Multilevel feedback queue 2321:Fixed-priority preemptive 2105:Hobbyist operating system 2100:Embedded operating system 1788: 1504: 754: 720: 2369:General protection fault 2120:Network operating system 2074:User features comparison 1828:Extended file attributes 1529:Compact Disc File System 434:, Arpaci-Dusseau Books, 2115:Mobile operating system 1927:Installable File System 543:"'2.4.15-final' - MARC" 78:In 1990 IBM introduced 2218:Loadable kernel module 975:TiVo Media File System 839:Encrypting File System 664:, USENIX Association, 602:, USENIX Association, 400:, IBM DeveloperWorks, 373:Versioning file system 368:Transaction processing 324:file systems (such as 55:", which is usually a 41:journaling file system 2536:Computer file systems 2286:Process control block 2252:Computer multitasking 2090:Disk operating system 970:Macintosh File System 18:Journaling filesystem 2457:Virtual tape library 2049:Forensic engineering 1983:GUID Partition Table 1330:Distributed parallel 1078:Shared File System ( 107:filesystem in 2001. 2466:Supporting concepts 2452:Virtual file system 1988:Apple Partition Map 1934:Virtual file system 1873:Access-control list 987:NetWare File System 510:10.1147/rd.341.0105 2389:Segmentation fault 2237:Process management 1978:Master Boot Record 1803:Data deduplication 1442:Google File System 1358:Google File System 844:Extent File System 806:Byte File System ( 294:garbage collection 256:elevator algorithm 2523: 2522: 2379:Memory protection 2350:Memory management 2344: 2343: 2336:Shortest job next 2231: 2230: 2030:Operating systems 1996: 1995: 1903: 1902: 1793:Case preservation 1699: 1698: 1398: 1397: 1324: 1323: 1086:Smart File System 192:Physical journals 178:solid-state drive 174:external journals 32:JFS (file system) 16:(Redirected from 2543: 2478:Computer network 2242: 2150: 2023: 2016: 2009: 2000: 1813:Execute in place 1786: 1519:Boot File System 1502: 1266: 802:Boot File System 752: 707: 700: 693: 684: 678: 676: 675: 673: 653: 647: 646: 645: 643: 625: 619: 617: 616: 614: 608: 597: 588: 582: 581: 573: 567: 564: 558: 557: 555: 553: 539: 533: 532: 530: 519: 513: 512: 495: 486: 480: 479: 477: 475: 456: 450: 449: 448: 446: 440: 433: 422: 413: 412: 411: 409: 391: 212:Logical journals 198:physical journal 21: 2551: 2550: 2546: 2545: 2544: 2542: 2541: 2540: 2526: 2525: 2524: 2519: 2461: 2422:Defragmentation 2407: 2398: 2384:Protection ring 2353: 2340: 2312: 2305: 2227: 2201: 2139: 2078: 2032: 2027: 1997: 1992: 1966: 1938: 1922:File system API 1899: 1859: 1835:File change log 1777: 1753:Record-oriented 1726:Self-certifying 1695: 1652: 1598: 1493: 1394: 1320: 1264: 1207: 1174: 747: 741: 737:Unix filesystem 716: 711: 681: 671: 669: 655: 654: 650: 641: 639: 627: 626: 622: 612: 610: 606: 595: 590: 589: 585: 575: 574: 570: 565: 561: 551: 549: 541: 540: 536: 528: 521: 520: 516: 493: 488: 487: 483: 473: 471: 458: 457: 453: 444: 442: 438: 431: 424: 423: 416: 407: 405: 393: 392: 385: 381: 338: 318: 302: 282: 277: 252: 218:logical journal 214: 194: 169: 113: 76: 35: 28: 23: 22: 15: 12: 11: 5: 2549: 2547: 2539: 2538: 2528: 2527: 2521: 2520: 2518: 2517: 2512: 2511: 2510: 2508:User interface 2505: 2495: 2490: 2485: 2480: 2475: 2469: 2467: 2463: 2462: 2460: 2459: 2454: 2449: 2444: 2439: 2434: 2432:File attribute 2429: 2424: 2419: 2413: 2411: 2400: 2399: 2397: 2396: 2394:Virtual memory 2391: 2386: 2381: 2376: 2371: 2366: 2360: 2358: 2346: 2345: 2342: 2341: 2339: 2338: 2333: 2328: 2323: 2317: 2315: 2307: 2306: 2304: 2303: 2298: 2293: 2288: 2283: 2278: 2273: 2268: 2266:Context switch 2263: 2248: 2246: 2239: 2233: 2232: 2229: 2228: 2226: 2225: 2220: 2215: 2209: 2207: 2203: 2202: 2200: 2199: 2194: 2189: 2184: 2179: 2174: 2169: 2164: 2158: 2156: 2147: 2141: 2140: 2138: 2137: 2132: 2127: 2122: 2117: 2112: 2107: 2102: 2097: 2092: 2086: 2084: 2080: 2079: 2077: 2076: 2071: 2066: 2061: 2056: 2051: 2046: 2040: 2038: 2034: 2033: 2028: 2026: 2025: 2018: 2011: 2003: 1994: 1993: 1991: 1990: 1985: 1980: 1974: 1972: 1968: 1967: 1965: 1964: 1962:Log-structured 1959: 1954: 1948: 1946: 1940: 1939: 1937: 1936: 1931: 1930: 1929: 1919: 1913: 1911: 1905: 1904: 1901: 1900: 1898: 1897: 1896: 1895: 1890: 1880: 1875: 1869: 1867: 1865:Access control 1861: 1860: 1858: 1857: 1856: 1855: 1850: 1842: 1837: 1832: 1831: 1830: 1823:File attribute 1820: 1815: 1810: 1808:Data scrubbing 1805: 1800: 1795: 1789: 1783: 1779: 1778: 1776: 1775: 1770: 1765: 1763:Steganographic 1760: 1755: 1750: 1745: 1743:Log-structured 1740: 1735: 1730: 1729: 1728: 1723: 1718: 1707: 1705: 1701: 1700: 1697: 1696: 1694: 1693: 1688: 1683: 1678: 1673: 1668: 1662: 1660: 1654: 1653: 1651: 1650: 1645: 1640: 1635: 1632: 1627: 1622: 1617: 1612: 1606: 1604: 1600: 1599: 1597: 1596: 1591: 1586: 1581: 1576: 1571: 1566: 1561: 1556: 1551: 1546: 1541: 1536: 1531: 1526: 1521: 1516: 1511: 1505: 1499: 1495: 1494: 1492: 1491: 1484: 1479: 1474: 1469: 1464: 1459: 1454: 1449: 1444: 1439: 1434: 1429: 1424: 1414: 1408: 1406: 1400: 1399: 1396: 1395: 1393: 1392: 1385: 1380: 1375: 1370: 1365: 1360: 1355: 1350: 1345: 1340: 1334: 1332: 1326: 1325: 1322: 1321: 1319: 1318: 1313: 1308: 1307: 1306: 1296: 1291: 1286: 1281: 1275: 1273: 1263: 1262: 1257: 1252: 1247: 1242: 1237: 1232: 1227: 1221: 1219: 1209: 1208: 1206: 1205: 1200: 1195: 1190: 1184: 1182: 1176: 1175: 1173: 1172: 1162: 1152: 1147: 1142: 1137: 1132: 1127: 1126: 1125: 1120: 1110: 1105: 1100: 1095: 1090: 1089: 1088: 1083: 1073: 1068: 1066:Reliance Nitro 1063: 1058: 1057: 1056: 1046: 1041: 1036: 1031: 1026: 1021: 1016: 1011: 1006: 1005: 1004: 994: 989: 984: 979: 978: 977: 972: 964: 959: 954: 949: 944: 939: 929: 926:Classic Mac OS 919: 918: 917: 907: 902: 897: 892: 891: 890: 880: 879: 878: 873: 868: 863: 853: 848: 847: 846: 841: 833: 828: 823: 818: 813: 812: 811: 804: 799: 797:Be File System 791: 786: 781: 776: 771: 766: 761: 755: 749: 743: 742: 740: 739: 734: 733: 732: 721: 718: 717: 712: 710: 709: 702: 695: 687: 680: 679: 648: 620: 583: 568: 559: 534: 514: 481: 451: 414: 382: 380: 377: 376: 375: 370: 365: 359: 354: 349: 344: 337: 334: 317: 314: 301: 298: 281: 278: 276: 273: 251: 248: 244: 243: 240: 237: 213: 210: 193: 190: 168: 165: 138: 137: 134: 129:Releasing the 127: 112: 109: 75: 72: 26: 24: 14: 13: 10: 9: 6: 4: 3: 2: 2548: 2537: 2534: 2533: 2531: 2516: 2513: 2509: 2506: 2504: 2501: 2500: 2499: 2496: 2494: 2491: 2489: 2486: 2484: 2481: 2479: 2476: 2474: 2471: 2470: 2468: 2464: 2458: 2455: 2453: 2450: 2448: 2445: 2443: 2440: 2438: 2435: 2433: 2430: 2428: 2425: 2423: 2420: 2418: 2415: 2414: 2412: 2410: 2405: 2401: 2395: 2392: 2390: 2387: 2385: 2382: 2380: 2377: 2375: 2374:Memory paging 2372: 2370: 2367: 2365: 2362: 2361: 2359: 2356: 2351: 2347: 2337: 2334: 2332: 2329: 2327: 2324: 2322: 2319: 2318: 2316: 2314: 2308: 2302: 2299: 2297: 2294: 2292: 2289: 2287: 2284: 2282: 2279: 2277: 2274: 2272: 2269: 2267: 2264: 2261: 2257: 2253: 2250: 2249: 2247: 2243: 2240: 2238: 2234: 2224: 2221: 2219: 2216: 2214: 2213:Device driver 2211: 2210: 2208: 2204: 2198: 2195: 2193: 2190: 2188: 2185: 2183: 2180: 2178: 2175: 2173: 2170: 2168: 2165: 2163: 2160: 2159: 2157: 2155: 2154:Architectures 2151: 2148: 2146: 2142: 2136: 2133: 2131: 2128: 2126: 2123: 2121: 2118: 2116: 2113: 2111: 2108: 2106: 2103: 2101: 2098: 2096: 2093: 2091: 2088: 2087: 2085: 2081: 2075: 2072: 2070: 2067: 2065: 2062: 2060: 2057: 2055: 2052: 2050: 2047: 2045: 2042: 2041: 2039: 2035: 2031: 2024: 2019: 2017: 2012: 2010: 2005: 2004: 2001: 1989: 1986: 1984: 1981: 1979: 1976: 1975: 1973: 1969: 1963: 1960: 1958: 1955: 1953: 1952:Cryptographic 1950: 1949: 1947: 1945: 1941: 1935: 1932: 1928: 1925: 1924: 1923: 1920: 1918: 1915: 1914: 1912: 1910: 1906: 1894: 1891: 1889: 1886: 1885: 1884: 1881: 1879: 1876: 1874: 1871: 1870: 1868: 1866: 1862: 1854: 1851: 1849: 1846: 1845: 1843: 1841: 1838: 1836: 1833: 1829: 1826: 1825: 1824: 1821: 1819: 1816: 1814: 1811: 1809: 1806: 1804: 1801: 1799: 1798:Copy-on-write 1796: 1794: 1791: 1790: 1787: 1784: 1780: 1774: 1771: 1769: 1766: 1764: 1761: 1759: 1756: 1754: 1751: 1749: 1746: 1744: 1741: 1739: 1736: 1734: 1731: 1727: 1724: 1722: 1719: 1717: 1714: 1713: 1712: 1709: 1708: 1706: 1702: 1692: 1689: 1687: 1684: 1682: 1679: 1677: 1674: 1672: 1669: 1667: 1664: 1663: 1661: 1659: 1655: 1649: 1646: 1644: 1641: 1639: 1636: 1633: 1631: 1628: 1626: 1623: 1621: 1618: 1616: 1613: 1611: 1608: 1607: 1605: 1601: 1595: 1592: 1590: 1587: 1585: 1582: 1580: 1577: 1575: 1572: 1570: 1567: 1565: 1562: 1560: 1557: 1555: 1552: 1550: 1547: 1545: 1542: 1540: 1537: 1535: 1532: 1530: 1527: 1525: 1522: 1520: 1517: 1515: 1512: 1510: 1507: 1506: 1503: 1500: 1496: 1490: 1489: 1485: 1483: 1480: 1478: 1475: 1473: 1470: 1468: 1465: 1463: 1460: 1458: 1455: 1453: 1450: 1448: 1445: 1443: 1440: 1438: 1435: 1433: 1430: 1428: 1425: 1422: 1418: 1415: 1413: 1410: 1409: 1407: 1405: 1401: 1391: 1390: 1386: 1384: 1381: 1379: 1376: 1374: 1371: 1369: 1366: 1364: 1361: 1359: 1356: 1354: 1351: 1349: 1346: 1344: 1341: 1339: 1336: 1335: 1333: 1331: 1327: 1317: 1314: 1312: 1309: 1305: 1302: 1301: 1300: 1297: 1295: 1292: 1290: 1287: 1285: 1282: 1280: 1277: 1276: 1274: 1272: 1271:wear leveling 1267: 1261: 1258: 1256: 1253: 1251: 1248: 1246: 1243: 1241: 1238: 1236: 1233: 1231: 1228: 1226: 1223: 1222: 1220: 1218: 1214: 1210: 1204: 1201: 1199: 1196: 1194: 1191: 1189: 1186: 1185: 1183: 1181: 1177: 1170: 1166: 1163: 1160: 1156: 1153: 1151: 1148: 1146: 1143: 1141: 1138: 1136: 1133: 1131: 1128: 1124: 1121: 1119: 1116: 1115: 1114: 1111: 1109: 1106: 1104: 1101: 1099: 1096: 1094: 1091: 1087: 1084: 1081: 1077: 1076: 1074: 1072: 1069: 1067: 1064: 1062: 1059: 1055: 1052: 1051: 1050: 1047: 1045: 1042: 1040: 1037: 1035: 1032: 1030: 1027: 1025: 1022: 1020: 1017: 1015: 1012: 1010: 1007: 1003: 1000: 999: 998: 995: 993: 990: 988: 985: 983: 980: 976: 973: 971: 968: 967: 965: 963: 960: 958: 955: 953: 950: 948: 945: 943: 940: 937: 933: 930: 927: 923: 920: 916: 913: 912: 911: 908: 906: 903: 901: 898: 896: 893: 889: 886: 885: 884: 881: 877: 874: 872: 869: 867: 864: 862: 859: 858: 857: 854: 852: 849: 845: 842: 840: 837: 836: 834: 832: 829: 827: 824: 822: 819: 817: 814: 809: 805: 803: 800: 798: 795: 794: 792: 790: 787: 785: 782: 780: 777: 775: 772: 770: 767: 765: 762: 760: 757: 756: 753: 750: 744: 738: 735: 731: 728: 727: 726: 723: 722: 719: 715: 708: 703: 701: 696: 694: 689: 688: 685: 667: 663: 659: 652: 649: 637: 633: 632: 624: 621: 605: 601: 594: 587: 584: 579: 572: 569: 563: 560: 548: 544: 538: 535: 527: 526: 518: 515: 511: 507: 503: 499: 492: 485: 482: 469: 465: 464:linux.die.net 461: 455: 452: 437: 430: 429: 421: 419: 415: 403: 399: 398: 390: 388: 384: 378: 374: 371: 369: 366: 363: 360: 358: 355: 353: 350: 348: 345: 343: 340: 339: 335: 333: 331: 327: 323: 322:copy-on-write 315: 313: 311: 307: 299: 297: 295: 291: 287: 279: 274: 272: 270: 266: 260: 257: 250:Write hazards 249: 247: 241: 238: 235: 231: 230: 229: 226: 223: 219: 211: 209: 207: 202: 199: 191: 189: 187: 182: 179: 175: 166: 164: 162: 156: 154: 150: 145: 143: 135: 132: 128: 125: 124: 123: 120: 118: 110: 108: 106: 102: 98: 94: 90: 85: 81: 73: 71: 69: 64: 62: 58: 54: 50: 46: 42: 37: 33: 19: 2441: 2409:file systems 2301:Time-sharing 1917:File manager 1737: 1486: 1387: 1213:Flash memory 1180:Optical disc 1118:soft updates 1098:Soup (Apple) 748:non-rotating 714:File systems 670:, retrieved 661: 651: 640:, retrieved 630: 623: 611:, retrieved 599: 586: 577: 571: 562: 550:. Retrieved 546: 537: 524: 517: 501: 497: 484: 474:February 20, 472:. Retrieved 463: 454: 443:, retrieved 427: 406:, retrieved 396: 319: 309: 303: 290:soft updates 283: 280:Soft updates 275:Alternatives 261: 253: 245: 227: 217: 215: 205: 203: 197: 195: 183: 173: 170: 157: 146: 142:storage leak 139: 121: 114: 77: 65: 57:circular log 40: 38: 36: 2427:Device file 2417:Boot loader 2331:Round-robin 2256:Cooperative 2192:Rump kernel 2182:Multikernel 2172:Microkernel 2069:Usage share 1883:Permissions 1498:Specialized 730:distributed 504:: 105–109, 445:January 22, 232:The file's 49:file system 45:file system 2357:protection 2313:algorithms 2311:Scheduling 2260:Preemptive 2206:Components 2177:Monolithic 2044:Comparison 1909:Interfaces 1893:Sticky bit 1773:Versioning 1738:Journaling 1681:Rubberhose 1477:SMB (CIFS) 1269:host-side 379:References 357:Intent log 167:Techniques 89:Windows NT 2447:Partition 2364:Bus error 2291:Real-time 2271:Interrupt 2197:Unikernel 2162:Exokernel 1768:Synthetic 1711:Clustered 1658:Encrypted 1589:OverlayFS 1198:ISO 13490 774:Amiga OFS 769:Amiga FFS 552:March 24, 547:marc.info 408:April 13, 111:Rationale 61:corrupted 2530:Category 2493:Live USB 2355:resource 2245:Concepts 2083:Variants 2064:Timeline 1853:Symbolic 1782:Features 1758:Semantic 1666:eCryptfs 1610:configfs 1579:SquashFS 1467:POHMELFS 1368:OrangeFS 1193:ISO 9660 1113:UFS/UFS2 1061:Reliance 1049:ReiserFS 895:Files-11 789:bcachefs 746:Disk and 672:July 27, 666:archived 642:March 6, 636:archived 613:July 27, 604:archived 468:Archived 436:archived 402:archived 352:Database 336:See also 222:metadata 97:HFS Plus 68:metadata 2488:Live CD 2442:Journal 2406:access, 2404:Storage 2281:Process 2187:vkernel 2054:History 2037:General 1971:Layouts 1957:Default 1620:debugfs 1594:UnionFS 1488:more... 1421:OpenAFS 1389:more... 1054:Reiser4 1024:OpenZFS 915:HAMMER2 871:ext3cow 851:Episode 580:: 24–29 74:History 53:journal 2296:Thread 2167:Hybrid 2145:Kernel 1844:Links 1818:Extent 1748:Object 1716:Global 1634:specfs 1630:procfs 1625:kernfs 1603:Pseudo 1584:UMSDOS 1539:Davfs2 1534:cramfs 1472:Hadoop 1452:Lustre 1338:BeeGFS 1304:NILFS2 1039:QNX4FS 1002:NILFS2 910:HAMMER 900:Fossil 161:atomic 2498:Shell 2437:Inode 1944:Lists 1888:Modes 1733:Flash 1704:Types 1686:SSHFS 1671:EncFS 1648:WinFS 1643:tmpfs 1638:sysfs 1615:devfs 1549:FTPFS 1544:EROFS 1482:SSHFS 1363:OCFS2 1316:UBIFS 1311:YAFFS 1299:NILFS 1294:LogFS 1289:JFFS2 1245:EROFS 1235:exFAT 1140:Xiafs 1123:WAPBL 1108:UBIFS 1019:OneFS 997:NILFS 992:Next3 982:MINIX 888:exFAT 816:Btrfs 784:AthFS 764:AdvFS 607:(PDF) 596:(PDF) 529:(PDF) 494:(PDF) 439:(PDF) 432:(PDF) 330:Btrfs 320:Full 284:Some 234:inode 206:twice 131:inode 117:crash 101:Linux 43:is a 2059:List 1848:Hard 1840:Fork 1721:Grid 1574:MVFS 1569:NOVA 1564:LTFS 1559:Lnfs 1554:FUSE 1524:CDfs 1514:AXFS 1509:Aufs 1447:GPFS 1432:Coda 1383:Xsan 1373:PVFS 1353:GFS2 1348:CXFS 1343:Ceph 1284:JFFS 1279:CHFS 1260:NVFS 1250:F2FS 1240:TFAT 1225:APFS 1215:and 1159:z/OS 1150:Xsan 1135:WAFL 1130:VxFS 1103:Tux3 1093:SNFS 1075:SFS 1044:ReFS 1014:NTFS 966:MFS 952:HTFS 947:HPFS 942:HFS+ 905:GPFS 876:ext4 866:ext3 861:ext2 835:EFS 826:CXFS 821:CVFS 808:z/VM 793:BFS 779:APFS 759:ADFS 674:2007 644:2010 615:2007 554:2018 502:34:1 476:2015 447:2014 410:2009 342:ACID 328:and 269:ext4 267:and 265:ext3 186:ext4 153:fsck 149:walk 105:ext3 93:NTFS 2515:PXE 2503:CLI 2483:HAL 2473:API 2276:IPC 1691:ZFS 1676:EFS 1462:NFS 1457:NCP 1437:DFS 1427:AFP 1417:AFS 1404:NAS 1378:QFS 1255:JFS 1230:FAT 1217:SSD 1203:UDF 1188:HSF 1169:Sun 1165:ZFS 1155:zFS 1145:XFS 1071:RFS 1034:QFS 1029:PFS 1009:NSS 962:LFS 957:JFS 936:MVS 932:HFS 922:HFS 883:FAT 856:ext 831:DFS 506:doi 326:ZFS 304:In 286:UFS 271:). 103:'s 91:'s 84:AIX 82:in 80:JFS 2532:: 2258:, 1412:9P 1080:VM 660:, 634:, 598:, 545:. 500:, 496:, 466:. 462:. 417:^ 386:^ 310:is 216:A 196:A 63:. 39:A 2352:, 2262:) 2254:( 2022:e 2015:t 2008:v 1423:) 1419:( 1171:) 1167:( 1161:) 1157:( 1082:) 938:) 934:( 928:) 924:( 810:) 706:e 699:t 692:v 677:. 618:. 556:. 508:: 478:. 34:. 20:)

Index

Journaling filesystem
JFS (file system)
file system
file system
journal
circular log
corrupted
metadata
JFS
AIX
Windows NT
NTFS
HFS Plus
Linux
ext3
crash
inode
storage leak
walk
fsck
atomic
solid-state drive
ext4
metadata
inode
elevator algorithm
ext3
ext4
UFS
soft updates

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.