Як зменшити логічний том кореня (LV) на LVM?


11

Мені не потрібно фактично скорочувати розділ MBR, просто логічний том, що містить кореневу файлову систему «/». Зараз це ~ 200 Гб, і мені потрібно зменшити його до ~ 150 ГБ, щоб звільнити місце для нового логічного обсягу. Як мені це зробити?

Відповіді:


23

ПЕРЕД ВАМИ ЗМІНУЙТЕ НЕЩО ЗАРІБУЙТЕ ПЕРЕГЛЯДУЙТЕ, ВАС У ТЕХНІЙ РЕЗЕРВАЦІЇ. Це все працювало на мене, але це може не працювати для вас. Якщо вона з якоїсь причини вибухне, ви не хочете втрачати нічого, чого не зможете відновити. Продовження…

Неможливо (наскільки мені відомо) зменшити файлову систему під час її монтажу, тому нам потрібно зробити фактичну зміну розміру з Live CD. Усі наступні інструкції передбачають, що ви завантажили компакт-диск 11.10 для встановлення на робочому столі.

Після завантаження Live CD на робочий стіл відкрийте термінал.

Інструмент LVM не вбудований в Live CD, тому спочатку ми повинні їх встановити:

sudo apt-get install lvm2

Знайдіть назву групи томів (відтепер «somevg»), яка містить кореневий логічний том:

sudo lvs

(Якщо вона не відображається, спробуйте запустити sudo lvmdiskscanі sudo pvscanповторіть спробу.)

Якщо ви запустите ls /dev/mapper/, можливо, ви побачите, що Логічні томи не відображаються. Якщо його немає, потрібно виконати таку команду, щоб ядро ​​усвідомило логічні томи:

sudo vgchange --available y <somevg>

Оскільки ми не змонтували кореневу файлову систему, слід змінити розмір. Перейдіть до фактичного зміни розміру логічного обсягу. Зауважте, що ця команда ( --size -50G) зменшує гучність на 50 Гб - прочитайте сторінку lvreduce (8), щоб дізнатися, як вказати інший розмір.

sudo lvreduce --resizefs --size -50G /dev/<somevg>/root

(Мій логічний том називається "корінь", але ваш може бути названий чимось іншим.)

Ця команда спочатку зменшить файлову систему, потім зменшить Логічний том, який містить її, що є єдиним безпечним способом це зробити.

Тепер ви можете перезапустити систему та завантажитися у вашу тепер змінену кореневу файлову систему.


Ці інструкції не працюють. lvsпоказує новий правильний розмір, але GPartedвсе ще показує LVM з вихідним розміром. Все, що ви робите, - це пояснення, як зменшити файлову систему, а не розділ. Розділ все ще займає початкову кількість місця на диску.
Серін

Чи можете ви спробувати зменшити VG та / або розділ MBR на додаток до LV? Ці вказівки стосуються лише скорочення ЛШ. Я актуалізую питання, оскільки (я бачу, коли перечитаю) це не дуже зрозуміло.
Михайло Кропат

ваше припущення невірне. Інтернет-розмір розмірів (в той час, коли встановлюється і використовується розділ) розділів ext3 / ext4 існує вже давно. Я цим користуюся багато, і ніколи не було з цим жодної проблеми. І так, у мене є поточні резервні копії весь час.
Флойд

@Floyd: у вас трапляється цитувати це? Я усвідомлював, що зміна розміру в Інтернеті можлива при розширенні, але не при скороченні. Якщо зараз скорочення в Інтернеті можливо, це були б цікаві новини.
Михайло Кропат

4
@Floyd, ext3 / 4 підтримує ріст в Інтернеті, але не скорочується.
psusi

4

І тепер, lvresizeі lvreduceзараз підтримують повторний розмір файлової системи до скорочення логічного тома.

Це фрагмент зі сторінки чоловіка на CentOS 6.5

-r, --resizefs
       Resize underlying filesystem together with the logical volume using fsadm

3

Будь-який розділ та зміни розміру LV слід робити на відремонтованих розділах, тому вам доведеться завантажуватися з інсталяційного диска Ubuntu або USB-накопичувача, запускати його як живий компакт-диск, підключатися до Інтернету, встановлювати lvm2

sudo apt-get install lvm2

... або ви можете використовувати будь-який рятувальний компакт-диск Linux, який вже lvm2є. Потім переконайтесь, що ваш кореневий LV не встановлений

mount 

і відключіть його при необхідності, потім проведіть перевірку файлової системи

e2fsck -f /dev/yourVG/yourLV 

на цьому НН. Потім скорочуємо файлову систему

resize2fs /dev/yourVG/yourLV 150G

і зменшити рівень НН

lvreduce -L -50G /dev/yourVG/yourLV

Перезавантажте систему, насолоджуйтесь!


3
+1 Дякуємо за вашу допомогу. Я подивився відповідь на своє запитання після того, як я його задав. Інструменти LVM тепер мають --resizefsваріант, який, здається, працює і дозволяє пропустити крок.
Михайло Кропат

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.