Как сжать логические и физические тома Ubuntu LVM?
Я установил Ubuntu 12.10 в качестве единственной ОС в моей системе.
Я сказал Ubuntu переписать все, как я спешил, поэтому у меня есть только два раздела, которые создает Ubuntu, загрузочный раздел на пару сотен МБ, а затем все остальное.
Основной раздел составляет около 600 ГБ,
Я хочу изменить размер до 450 ГБ, чтобы я мог установить Windows 8 в качестве двойной загрузки.
Проблема в том, что я не могу понять, как сжать раздел, обычно это нормально из Gparted (gparted-live-0.14.1-6-i486.iso) live iso, просто измените размер, и вы готовы идти.
Но на этот раз Ubuntu был установлен с LVM.
Итак, раздел Ubuntu имеет значок замка рядом с ним. Это мешает мне что-либо делать, я могу выбрать раздел, и есть опция для "деактивировать", которая, если я верен, я считаю, деактивирует своп? Если я сделаю это, я могу манипулировать разделом.
Я спрашиваю здесь, если это правильно, прежде чем я разрушу свою систему.
- Загрузись с живого gparted iso.
- Выберите раздел Ubuntu.
- "Деактивировать" раздел.
- Изменить размер раздела.
- "Активировать" раздел.
- Применять.
- Прибыль???
Правильно ли мое мышление?
Редактировать #1
Итак, после некоторого расширенного чата я пришел к этой команде
sudo lvresize --verbose --resizefs -L -150G /dev/ubuntu/root
Который успешно сократил логический раздел.
Но теперь у меня есть сложная часть.
Теперь мне нужно уменьшить физический раздел, чтобы я мог создать новый физический раздел с местом для установки Windows 8.
Поэтому я думал, что смогу бежать
pvresize --setphysicalvolumesize {any size here} /dev/sda5
Но я вернусь
/dev/sda5: невозможно изменить размер до экстентов ххххх, поскольку выделяются более поздние.
Который я полагаю, из-за обмена из-за этого изображения:
так, каков мой следующий шаг?
$: lvdisplay
--- Logical volume ---
LV Path /dev/ubuntu/root
LV Name root
VG Name ubuntu
LV UUID G7Z3dA-xska-8QpO-Y5oD-aIVO-D8l1-22s6dO
LV Write Access read/write
LV Creation host, time ubuntu, 2013-01-29 22:06:02 +1300
LV Status available
# open 1
LV Size 540.42 GiB
Current LE 138348
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 252:0
--- Logical volume ---
LV Path /dev/ubuntu/swap_1
LV Name swap_1
VG Name ubuntu
LV UUID 14qpRy-H5jl-dTAq-CVle-k7Bz-95Rm-Y46zOs
LV Write Access read/write
LV Creation host, time ubuntu, 2013-01-29 22:06:04 +1300
LV Status available
# open 2
LV Size 7.97 GiB
Current LE 2041
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 252:1
Дополнительная информация перед редактированием #1
Обратите внимание, что приведенный выше снимок взят из версии Gparted в репозиториях Ubuntu, а не из последней версии.
Мэтью @play:~$ sudo fdisk -l
Disk /dev/sda: 750.2 GB, 750156374016 bytes
255 heads, 63 sectors/track, 91201 cylinders, total 1465149168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000c5bec
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 499711 248832 83 Linux
/dev/sda2 501758 1465147391 732322817 5 Extended
/dev/sda5 501760 1465147391 732322816 8e Linux LVM
Disk /dev/mapper/ubuntu-root: 741.3 GB, 741334843392 bytes
255 heads, 63 sectors/track, 90128 cylinders, total 1447919616 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Disk /dev/mapper/ubuntu-root doesn't contain a valid partition table
Disk /dev/mapper/ubuntu-swap_1: 8560 MB, 8560574464 bytes
255 heads, 63 sectors/track, 1040 cylinders, total 16719872 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Disk /dev/mapper/ubuntu-swap_1 doesn't contain a valid partition table
Мэтью @play:~$ sudo lvs
LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert
root ubuntu -wi-ao-- 690.42g
swap_1 ubuntu -wi-ao-- 7.97g
Мэтью @play:~$ sudo vgs
VG #PV #LV #SN Attr VSize VFree
ubuntu 1 2 0 wz--n- 698.39g 0
Мэтью @ play: ~ $ sudo Pvs
PV VG Fmt Attr PSize PFree
/dev/sda5 ubuntu lvm2 a-- 698.39g 0
4 ответа
Это все шаги, необходимые для изменения размера раздела LVM или LVM2 -
sudo lvresize --verbose --resizefs -L -150G /dev/ubuntu/root
sudo pvresize --setphysicalvolumesize {any size here} /dev/sda5
/dev/sda5: cannot resize to xxxxx extents as later ones are allocated.
Вы должны переставить нераспределенное пространство в конце LVM. Это означает, что после раздела root и swap_1. Итак, вам нужно переместить это свободное место, используя команду ниже
pvs -v --segments /dev/sda5
This will show the output like below
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g 0 xxx root 0 linear /dev/sda:0-xxx
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g xxx nnn 0 free
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g yyy zzz swap 0 linear /dev/sda5:yyy-zzz
Теперь используйте команду ниже, чтобы удалить внешнюю фрагментацию -
sudo pvmove --alloc anywhere /dev/sda5:yyy-zzz
Теперь давайте посмотрим, как это происходит -
pvs -v --segments /dev/sda5
This will show the output like below
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g 0 xxx root 0 linear /dev/sda:0-xxx
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g xxx nnn swap 0 linear /dev/sda5:xxx-yyy(-1)
/dev/sda5 ubuntu lvm2 a-- 698.04g 150g yyy zzz 0 free
После этого используйте gparted и измените размер LVM до максимально используемой области, а остальное будет в нераспределенном пространстве. Наслаждаться...
Я бы, теперь, когда у вас есть меньший корневой LV, lvremove
поменять LV и воссоздать его. Это должно заставить его быть непосредственно добавленным к корневому LV с точки зрения положения. Как только это будет сделано, вы сможете pvresize
физический объем. Тогда это страшная часть в редактировании таблицы разделов (fdisk
) уменьшить размер раздела до нового размера PV, освобождая тем самым пространство для использования установщиком Windows.
Для уменьшения размера раздела я бы рекомендовал увеличить его на несколько МБ несколько больше, чем PV сообщает о его размере, а также увеличить PV и корневой LV, чтобы заполнить свободные экстенты. Таким образом, вы можете быть уверены, что вы: а) используете все размеры раздела для LVM и не теряете пространство, делая его недоступным, и б) не обрезаете жизненно важные данные с PV, неправильно интерпретируя двоичные KiB/MiB/GiB для десятичных Кб /MB/GB или наоборот во время операции fdisk.
Новый своп, если вы создадите новый, чтобы убедиться, что он добавлен в корневой LV, как я предлагаю выше, будет иметь другой UUID, и поэтому ваш /etc/fstab не будет совпадать. Как только изменение размера закончено, вам нужно будет mount /dev/ubuntu/root /mnt
отредактируйте /mnt**/etc/fstab**.
В файле fstab необходимо найти запись подкачки, аналогичную приведенной ниже, и обновить шестнадцатеричное значение после UUID= значением, сообщенным как blkid
,
Шаги для blkid
на моей системе таковы:
бежать
blkid /dev/ubuntu/swap_1
какие выводы
/dev/ubuntu/swap_1: UUID="9e99b37a-38af-4987-85eb-92048abd9825" TYPE="swap"
- скопируйте значение UUID
9e99b37a-38af-4987-85eb-92048abd9825
отредактируйте /etc/fstab из корневого LV и вставьте значение UUID вместо старого UUID.
находить
UUID=**old-uuid** none swap sw 0 0
замените свой новый UUID вместо старого UUID
UUID=9e99b37a-38af-4987-85eb-92048abd9825 none swap sw 0 0
в качестве альтернативы, вы можете заменить механизм UUID и использовать
/dev/ubuntu/swap_1
например,/dev/ubuntu/swap_1 none swap sw 0 0
Используйте KVPM из Центра программного обеспечения. Я установил Ubuntu 14.10 LTS, используя весь диск одним огромным LVM (я знаю, в чем смысл одного огромного LVM), но хотел добавить еще два LVM для другой ОС и накопителя данных. Я использовал KVPM, он говорит, что в описании менеджера разделов KDE, но он прекрасно работает на 14.04. Вот шаги.
- Скачайте 14.04LTS и создайте загрузочный USB.
- Загрузитесь с USB, используя опцию TRY UBUNTU, чтобы вы работали на USB-накопителе.
- Установите KVPM из Центра программного обеспечения.
Запустите KVPM из терминала по вашему выбору,
sudo kvpm
- если вы просто бежитеkvpm
, live CD выдаст вам ошибку и зависнет.Как только kvpm открыл графический интерфейс, перейдите на вкладку с названием some_drive-vg
- Выделите объем, который необходимо изменить, и щелкните правой кнопкой мыши параметры, выберите "Уменьшить объем".
- Вы можете поменять LVM одновременно с вводом нового размера.
- Следуйте инструкциям, чтобы подтвердить изменения и вуаля, у вас будет нераспределенное свободное пространство.
- Вы можете сделать столько новых LVM, сколько вам нужно с доступным пространством. Мой дисплей показывал ярко-зеленое нераспределенное пространство, просто щелкните правой кнопкой мыши зеленое пространство, единственной опцией будет "Создать новый логический том".
Мне потребовалось больше времени, чтобы написать это, чем выполнить весь процесс.
Кстати, размер раздела /root, который я изменил, прекрасно работает после всех изменений. Просто перезагрузите жесткий диск в выбранной вами ОС и наслаждайтесь новыми найденными томами.
KVPM - это путь, перезагрузка не требуется.
- Щелкните правой кнопкой мыши Размонтировать раздел
- уменьшить размер
- щелкните правой кнопкой мыши другой раздел увеличить размер
- перемонтировать оригинальный раздел
СДЕЛАННЫЙ!