Конвертація файлової системи ext3 до ext4 Linux

6 Січня, 2011 | Теґи: , , ,

ext4 має ряд переваг щодо ext3/ext2: вища швидкодія, швидша перевірка, точніший час доступу до масивів даних і т. д.
Тут хочу навести схему конвертації ext3–>ext4 без втрат чи пошкодження даних для Linux CentOS/Fedora.

УВАГА! Конвертацію Ви робите на свій страх та ризик, не забувайте бекапити критичні дані.

1) Відмонтовуємо диск:

umount DEVICE

2) Вмикаємо додаткові можливості файлової системи ext4:
основні фічі:

tune4fs -O uninit_bg,dir_index,extent DEVICE

або ж повний набір:

tune4fs -O uninit_bg,dir_index,extent,flex_bg,huge_file,dir_nlink,extra_isize  DEVICE

рекомендую використовувати перший варіант, він не “рубає” іноди та суперблок. Після другого треба повний fsck проводити.
А при необхідності можна потім по ходу додавати ці фічі.

якщо пакету tune4fs немає, то інсталимо:

yum install -y e4fsprogs

3) Проводимо перевірку диска

fsck.ext4 -pfD DEVICE

Якщо вона дала помилку (RUN FSCK MANUALLY, without -i or -f option), то чекаємо так:

fsck.ext4 -yfD DEVICE

4) коригуємо /etc/fstab (змінюємо ext3 на ext4 для диска, на якому робили конвертацію).

5) монтуємо його, або ж ребутимося (якщо диск був системний).

P. S.: Щоб перевірити, які фічі активовано для розділу, робимо (нижче наведено повний набір можливостей для ext4 ):

tune4fs -l DEVICE
Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize

УВАГА! На сьогодні пакет quota-tools для CentOS 5.5 все ще не підтримує ext4 файлову систему.
Тому якщо необхідні воти на розділах з ext4, то качаємо вихідні коди з http://sourceforge.net/projects/linuxquota/files/quota-tools/
(від версії 3.17 вже є стабільна підтримка ext4), інсталимо будь куди, а потім підміняємо
або ж залінковуємо стандартні бінарники цього пакету з репозиторію на нові, щойно встановлені.

Список файлів, які стосуються цього пакету, можна побачити так:

# rpm -ql quota

Бінарники замінювати обов’язково, мани й доки – за бажанням.

Також в /etc/yum.conf варто поставити пакет quota в ексклюди, щоб він не “оновився” на стару версію.

exclude=quota*

Додаткову й досить вичерпну інформацію про ext4 можна дізнатися тут(по російськи):
http://www.ibm.com/developerworks/ru/library/l-ext4/

Ще немає коментарів.