Назад | Перейти на главную страницу

Как мне заменить корневую файловую систему (ext4) новой в LVM на ту, у которой больше inodes?

У меня есть несколько систем, которые уже более десяти лет работают в кластере на SLES 10 (теперь уже давно прошло EOL). Мы переходим на 64-разрядную версию CentOS 6. Я сделал все, но окончательные данные синхронизируются, и вот, сюрприз, у меня закончилось место на диске ... за исключением того, что это в таблице inode, а не в необработанной емкости. ReiserFS (используется в блоках SLES) не применяет ограничения - действительно, я даже не знаю, сколько inodes используется, потому что он не только не обеспечивает соблюдение, он даже не отслеживает / не сообщает о них. Я могу получить этот номер однострочным, без проблем.

Моя проблема, наверное, в основном связана с LVM. Это мое слабое место. Я просто новичок в его использовании, в основном использую сырые устройства с 1993 года.

У меня есть новая машина с логической группой томов, содержащей раздел подкачки и корневую файловую систему в виде двух томов. Это колоссальные 100 ГБ, но в нем должно быть более 6,5 млн инодов ... У меня закончилось около 6,4 млн.

Я полностью понимаю, что мне нужно создать совершенно новую файловую систему ext4, поскольку вы вообще не можете увеличить количество inode.

Я работаю под VMWare, что помогает. Я могу просто добавлять / удалять виртуальные диски по мере необходимости.

Я хочу в основном заменить корневую файловую систему на ту, которая имеет лучшее соотношение inode для наших целей. Я не уверен в том, как обрабатывать части LVM этого, а также фактическое «восстановление данных без восстановления файловой системы [то есть той части, которая содержит таблицу inode и т. Д.]. Мне в основном нужно получить данные на запасной виртуальный диск, при необходимости переформатируйте корневой раздел, затем восстановите диск. LVM мешает мне с точки зрения знаний. Я в некоторой степени ознакомился с lvcreate, lvchange и т. д., но Я мог бы использовать подробное описание того, какие инструменты правильно использовать для обработки всей файловой системы (это одна файловая система, которая находится в /, поэтому включает / dev и т. Д.) В отношении резервного копирования и восстановления, и особенно замена LVM.

Если это помогает в написании команд и тому подобного, примите vg_webserver4c6 в качестве группы логических томов, а lv_root и lv_swap в качестве имен логических томов. lv_root - это проблемный ребенок.

Любая помощь приветствуется - чем подробнее, тем лучше!

Спасибо!

  1. Используйте tar или rsync для резервного копирования всей файловой системы. Нет необходимости включать / dev /, / proc или / sys: они создаются во время загрузки.

  2. нет необходимости использовать какие-либо команды lv, потому что вам не нужно изменять размер lv_root, вам просто нужно воссоздать файловую систему с 10 миллионами inodes:

    mkfs.ext4 -N 10000000 /

  3. используйте tar или rsync для восстановления файлов

  4. исправьте загрузчик (перезапустите grub-install)

Вот и все.