Від час встановлення ви можете обрати різні файлові системи для своїх розділів, таким чином їх буде відформатовано з використанням різних алгоритмів.
Якщо ви не фахівець, то вибір файловій системи для вас не зовсім зрозумілий. Ми коротенько розглянемо кілька сучасних файлових систем, доступних в Mandriva Linux.
Second Extended Filesystem (скорочено звучить як ext2FS чи просто ext2) багато років була файловій системою GNU/Linux за умовчанням. Вона замінила Extended File System (ось чому в назві з'явилося “Second”). ext2 усуває певні проблеми й обмеження свого предка.
ext2 дотримується звичайні стандарти для файлових систем UNIX®-типа. З самого початку вона була призначена для подальшого розвитку, зберігаючи при цьому високу стійкість до відмов та продуктивність.
Як видно з назви, Third Extended File System є спадкоємцем ext2. Вона сумісна з останньою, але була також покращена за рахунок додавання журналювання
Одним із головних недоліків “традиційних” файлових систем типу ext2 є їхня низька стійкість до раптових падінь системи (відключення електрики чи збій програмного забезпечення). Взагалі при подальшому перезавантаженні системи такі види подій призводять до дуже тривалої перевірці структури файлової системи і спробам виправити помилки, що іноді призводить до ще більших ушкоджень. Це руйнування може призвести до часткової або повної втрати даних, що зберігаються.
Журналювання відповідає за розв'язання цієї проблеми. Для спрощення давайте говоритимемо, що записуємо дії (наприклад, збереження файла) до того, як вони відбуваються насправді. Ми могли б порівняти такий образ дій з тим, який веде капітан корабля, який використовує бортовий журнал для запису щоденних подій. У результаті ми отримуємо завжди узгоджену файлову систему. А якщо виникають проблеми, перевірка і остаточне відновлення виконуються дуже швидко. Отже, час, витрачений на перевірку файловій системи, пропорційний фактичному її використанню і не пов'язаний з її розміром.
Таким чином, ext3 пропонує технологію файловій системи, що журналюється, зі збереженням структури ext2, забезпечуючи при цьому відмінну сумісність. Це значно спрощує перехід з ext2 на ext3 і назад.
На відміну від ext3 reiserfs написано з нуля. Це журнальована файлова система на зразок ext3, але внутрішня її структура радикально відрізняється, бо в ній використовуються ідеї бінарного дерева, навіяні програмним забезпеченням для баз даних, а також застосовується змінний розмір блоку, що робить її оптимальною для роботи з кількома (тисячами чи сотнями тисяч) невеликих файлів. Вона також добре поводиться при роботі з великими файлами, що дозволяє використовувати її для різноманітних цілей.
JFS - це журнальована файлова система, яку було розроблено і яка використовувалась в IBM. З самого початку вона була власницькою і закритою, але потім корпорація IBM вирішила відкрити до неї доступ рухові за вільне програмне забезпечення. Її внутрішня структура близька до структурі reiserfs.
XFS - це журнальована файлова система, розроблена в SGI, і яка також використовувалась в операційній системі Irix. З самого початку вона була власницькою і закритою, але потім у SGI також вирішили відкрити до неї доступ рухові за вільне програмне забезпечення. Її внутрішня структура має багато різноманітних можливостей, таких як підтримка пропускної здатності реального часу, екстенти (безперервні області з прямим доступом, що резервуються для певного набору даних) і кластерні файлові системи (але не в вільній версії).
Таблиця 4.1. Характеристики файлових систем
Ext2 | Ext3 | ReiserFS | JFS | XFS | |
---|---|---|---|---|---|
Стабільність | Чудова | Дуже добре | Добре | Середня | Добре |
Утиліти для відновлення видалених файлів | Є (комплекс) | Є (комплекс) | Немає | Немає | Немає |
Швидкість перезавантаження після падіння системи | Довго, навіть дуже довго | Швидко | Дуже швидко | Дуже швидко | Дуже швидко |
Стан даних у разі падіння системи | Взагалі добре, але високий ризик часткової чи повної втрати даних | Дуже добре | Середня[a] | Дуже добре | Дуже добре |
Підтримка ACL | Так | Так | Немає | Немає | Так |
[a] Є можливість поліпшити результати відновлення після падіння шляхом журналювання даних, а не лише метаданих, за допомогою додавання опції |
Максимальний розмір файла залежить від багатьох параметрів (тобто блоку для ext2/ext3), а також можливий подальший розвиток, залежно версії ядра і архітектури.
У ядрі 2.6.X цю межу блокового пристрою можна збільшити при використанні ядра, в якому при компіляції було включено підтримку Large Block Device (CONFIG_LBD=y
). За додаткової інформацією звертайтеся до сайтів Adding Support for Arbitrary File Sizes to the Single UNIX Specification, Large File Support in Linux і Large Block Devices. З допомогою цієї функції, а також файлової системи, яка її підтримує, ви можете досягти ємності до кількох ТБ без спеціальних “хитрощів” з файловою системою, як це зроблено в JFS для розміру файлової системи.
Порівнювати продуктивність файлових систем завжди дуже складно. Усе тести мають свої обмеження, і результати повинні тлумачитись дуже обережно. Порівняння, проведені кілька місяців чи тижнів тому, вже занадто застаріли. Давайте не забувати, що сьогоднішнє устаткування (особливо с точки зору на ємність жорстких дисків) значно підсилює різницю між ними.
Кожна з систем має свої переваги та недоліки. Насправді все залежить від того, як ви використовуєте свою машину. Для простої настільної машини цілком вистачить ext2. Для серверу перевагу слід віддати файловій системі, що журналюється, типу ext3. reiserfs, можливо через її походження, більше підходить для серверу баз даних. JFS краща у тих випадках, де на першому місці стоїть продуктивність файловій системи. XFS цікава у випадку, якщо вам потрібні її розширені можливості. При “звичайному” використанні всі чотири файлові системи дають приблизно однакові результати і всі вони мають різні параметри для настроювання під певні завдання. Будь ласка, зверніться до відповідної документації по файловим системам.