Как перенести файловые системы Ext2 или Ext3 на Ext4 в Linux

Вы знаете, что вам следует обновить файловую систему Linux, но вы не можете столкнуться с неприятностями? Вот как преобразовать ext2 и ext3 в ext4 без переустановки.

Файловые системы Linux

Если бы вы были вежливы, вы бы позвонили файловая система ext3 почтенный, запуск, как это было еще в 2001 году. Что касается бедный старый ext2, эта файловая система родом из 1993 года, и нет другого слова, кроме древнего. С компьютерной точки зрения ext3 — это антиквариат. А ext2 — это археологическая находка.

Современная файловая система в мире Linux — ext4, которая была выпущен в 2008 г.. Он быстрее, менее подвержен фрагментации, способен обрабатывать большие файловые системы — и большие файлы — он имеет более точные отметки даты файлов, и мы упоминали, что он быстрее? Намного быстрее.

Хорошо, я продан — давайте сделаем это

Давай подумаем над этим. На самом деле вы, вероятно, не хотите обновлять свою файловую систему.

Вместо этого имеет смысл обновить всю вашу систему Linux. Под обновлением мы подразумеваем создание нескольких резервных копий данных, очистку системы, переустановку современного дистрибутива и восстановление данных. Выполните полное обновление. Воспользуйтесь преимуществами современного дистрибутива Linux с обновленным программным обеспечением, а также чистой, актуальной и недавно установленной файловой системой.

Если вы не можете запустить современный Linux на своем оборудовании, даже один из легких дистрибутивов, например Lubuntu, LinuxLite или же CrunchBang ++, и вам абсолютно необходимо придерживаться того Linux, который у вас есть, все же есть предостережения.

Чтобы обновить файловую систему до ext4, вы должны использовать ядро ​​версии 2.6.28 или новее. Поэтому, если у вас нет этой или более поздней версии ядра, вы должны сначала обновить ядро.

Предупреждение: даже не думайте о том, чтобы попробовать это без удовлетворения требований к версии ядра. В итоге вы получите незагружаемый компьютер. Прежде чем продолжить, проверьте, какую версию ядра вы используете.

Убедитесь, что у вас есть установочный диск для текущей версии Linux, и держите его в режиме ожидания. Обновление вашей файловой системы небезопасно.

  Как использовать текстовый веб-браузер W3M в Linux

Резервные копии — ваша подстраховка. Прежде чем что-либо делать, сделайте пару резервных копий данных на разные носители и убедитесь, что у вас под рукой есть старый установочный диск Linux. Если что-то пойдет не так, вы можете переустановить старый Linux и восстановить данные.

Вам также понадобится текущий Live CD / DVD с современным дистрибутивом Linux для обновления файловой системы. Так что убедитесь, что у вас есть под рукой один из них.

Между прочим, эта статья была исследована с использованием установки Ubuntu Jaunty Jackalope, выпущенной в апреле 2009 года. В качестве файловой системы использовалась ext3.

Все еще с нами?

Джон Уэйн сказал, что храбрость пугала, но все равно оседлала. Я восхищаюсь твоей смелостью.

Первое, что мы собираемся сделать, это проверить версию ядра с помощью uname. Команда uname может отображать различные типы системной информации.

На своем старом компьютере с Linux откройте окно терминала и введите следующую команду. Введите uname, пробел, -r, затем нажмите Enter.

uname -r

uname -r в окне терминала.

Версия Linux на этом компьютере использует версию ядра 2.6.28-11, поэтому мы выполнили требования к версии ядра.

Серьезно, если вы не выполнили это требование, остановитесь сейчас. Достаточно близко, недостаточно. Вы должны соответствовать этому номеру версии ядра или превышать его.

Теперь мы проверим идентификаторы дисков с помощью blkid, который идентифицирует блочные устройства в системе.

blkid

blkid в окне терминала

Эта система имеет один жесткий диск (sda) с файловой системой (sda1), смонтированной в / dev / sda1. Это файловая система ext3. Это файловая система, которую мы собираемся преобразовать.

Также существует файловая система под названием swap, но это нас не интересует.

Перезагрузитесь с Live CD

Вставьте Live CD и перезагрузите компьютер. Во время перезагрузки вам может потребоваться нажать какую-либо клавишу, чтобы компьютер загрузился с компакт-диска. Клавиша, которую нужно нажать, будет отображаться на ранних этапах процесса загрузки. Будьте быстры — окно возможностей длится недолго. Если вы его пропустили, перезагрузитесь и попробуйте еще раз.

После загрузки среды Live CD убедитесь, что случайно не запустили установку. Найдите время, чтобы прочитать варианты, которые вам предоставляются, и если есть один, который говорит что-то похожее на «Попробуйте имя распределения», выберите этот вариант.

Стать рутом

Откройте окно терминала и введите следующую команду. Это фактически делает вас root и означает, что вам не нужно вводить sudo перед каждой командой.

sudo bash

sudo bash в окне терминала

Обратите внимание, что командная строка изменилась. Вы root. Действуйте осторожно.

  Как играть в The Witcher 3: Wild Hunt в Linux

Определите файловые системы

Нам нужно еще раз идентифицировать файловые системы, чтобы увидеть, как они проявляются в этом экземпляре Linux.

fdisk -l

fdisk -l в окне терминала

Вы увидите результат, подобный следующему.

вывод из fdisk в окне терминала

Файловая система, которую мы ранее идентифицировали как sda1, была обнаружена и распознана Live CD Linux. Это первая мини-веха.

Второй — преобразование файловой системы.

Преобразование файловой системы

Здесь перечислены две команды: одна для преобразования из ext2 в ext4, а вторая для преобразования из ext3 в ext4. Убедитесь, что вы выбрали именно тот, который вам нужен!

Чтобы преобразовать ext2 в ext4, используйте это:

tune2fs -O extents,uninit_bg,dir_index,has_journal /dev/sda1

Чтобы преобразовать ext3 в ext4, используйте это:

tune2fs -O extents,uninit_bg,dir_index /dev/sda1

tune2fs -O extents, uninit_bg, dir_index / dev / sda1 в окне терминала

Это немного не впечатляет, поскольку, кажется, не так много. Вы вернетесь в командную строку. Если вы видите какой-то вывод, вероятно, это сообщение об ошибке. Так что здесь нет новостей — это не хорошие новости.

Проверьте файловую систему

Несмотря на то, что ошибки не были отмечены, давайте будем тщательно проверять всю файловую систему на наличие проблем. Мы будем использовать команду под названием e2fsck. Это инструмент, используемый для проверки целостность файловых систем. Он также может попытаться исправить любые обнаруженные проблемы. Инструмент e2fsck работает с файловыми системами ext2, ext3, а также ext4.

Опция -p (preen) заставляет e2fsck пытаться исправить ошибки, а опция -f (force) заставляет e2fsck проверять файловую систему, даже если файловая система кажется чистой.

e2fsck -pf /dev/sda1

e2fsck -pf / dev / sda1 в окне терминала

Об ошибках не сообщалось. Теперь мы можем попробовать смонтировать файловую систему.

Установка файловой системы

Нам нужно настроить таблицу файловой системы (fstab) и загрузчик grub для работы с преобразованной файловой системой. Для этого мы должны смонтировать файловую систему. Смонтируем его на / мнт. Ранее мы идентифицировали файловую систему как sda1, поэтому наша команда:

mount -t ext4 /dev/sda1 /mnt

смонтировать -t ext4 / dev / sda1 / mnt в окне терминала

Теперь, когда он смонтирован, мы должны получить список файловой системы. Давайте это проверим. Корень файловой системы будет находиться в точке монтирования / mnt.

ls /mnt

смонтировать -t ext4 / dev / sda1 / mnt в окне терминала

Это обнадеживает. Похоже, мы этого и ожидали.

Редактирование fstab

Нам нужно отредактировать файл fstab и изменить любые ссылки ext3 (или ext2, если это файловая система, из которой вы преобразовали) на ext4.

На Live CD, используемом в этом примере, есть редактор nano. Это простой маленький редактор, поэтому мы воспользуемся им. Если nano недоступен на вашем Live CD, будет другой редактор, который будет включен в дистрибутив Linux на компакт-диске.

nano /mnt/etc/fstab

nano / mnt / etc / fstab в окне терминала

Появится окно редактора nano. Вам нужно найти вхождения строки «ext3» или «ext2» и заменить их на «ext4». В этом примере было выделено одно вхождение ext3.

  Как использовать команду rev в Linux

окно nano с выделенным ext3

Ext3 был заменен на ext4.

окно nano с выделенным ext4

Вам необходимо сохранить файл и выйти из редактора. В nano Ctrl + O сохранит файл, а Ctrl + X закроет редактор.

Обновление grub

Поскольку мы смонтировали файловую систему sda1 в / mnt, пути к каталогам в файловой системе фактически перемещены на один уровень глубже, чем обычно. Вот почему мы предоставили nano путь / mnt / etc / fstab вместо обычного / etc / fstab.

Поскольку grub ожидает найти что-то в определенных местах, нам нужно заставить файловую систему выглядеть так, как если бы она была смонтирована нормально. Нам нужно, чтобы корень файловой системы находился в /, а не в / mnt. Команда chroot позволяет нам запускать командную оболочку и указать корневую точку мы хотим использовать.

Мы используем следующую команду:

chroot /mnt

chroot / mnt в окне терминала

Обратите внимание, что командная строка изменилась.

Теперь мы можем выполнить команду update-grub, чтобы grub прочитал файл fstab и перенастроил себя.

update-grub

update-grub в окне терминала.

После того, как grub перенастроит себя, нам нужно установить новый экземпляр grub на жесткий диск. Обратите внимание, что это sda жесткого диска, а не файловая система sda1. Не включайте «1», просто введите «sda».

grub-install /dev/sda

grub-install / dev / sda в окне терминала

Перезагрузка вашего Linux

Перезагрузите систему и извлеките Live CD. Когда ваша система перезагрузится, откройте окно терминала и введите следующую команду:

blkid

blkid в окне терминала

Как мы видим, файловая система теперь является файловой системой ext4.

Машине, на которой проводилось исследование этой статьи, потребовалось так много времени для перезагрузки (более десяти минут), что предполагалось, что что-то пошло не так, и что она никогда не вернется.

Возможно, это произошло потому, что это была виртуальная машина, или, возможно, некоторые преобразования файловой системы произошли во время первой загрузки. Как бы то ни было, терпение победило, и в конечном итоге оно снова появилось. Если ваша машина делает что-то подобное, подождите. Не все может быть потеряно.

Последующие перезагрузки были такими же быстрыми, как обычно.

Вместо этого обновите свой Linux

Ну вот мы и добрались. Но у вас все еще остается нестандартный гибрид, использующий старый выпуск Linux в современной файловой системе.

Если для вас важен переход на новую файловую систему и ваше оборудование может с этим справиться, переход на текущий дистрибутив Linux — лучший путь. Вы будете наслаждаться всеми другими преимуществами безопасности и программного обеспечения, связанными с этим.

Тем не менее, если для этого нет ничего другого — а иногда у нас нет тех параметров, которые мы хотели бы иметь, — эти шаги позволят вам обновить файловую систему.