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

Как изменить размер обычного раздела (не LVM)?

Извините за мой плохой английский, надеюсь, вы меня поймете.

Месяц назад я установил сервер Ubuntu с жестким диском емкостью 500 ГБ, а при установке системы я создал обычные разделы без LVM - вот их расположение.

root@skysquad:~# fdisk -l

Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000c9f61

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1       10942    87891583+  83  Linux
/dev/sda2           10943       60801   400492417+   5  Extended
/dev/sda5           12159       60801   390724866   83  Linux
/dev/sda6           10943       12158     9767457   82  Linux swap / Solaris

Partition table entries are not in disk order

В основном это;

sda1 (90 ГБ) для ОС (ext4)
sda5 (~ 370 ГБ) для / home (объясню позже) (ext4)
sda6 (10 ГБ) для SWAP

Позже я понял, что когда sda5 (385 ГБ для / home) будет заполнен, я хотел бы увеличить его размер, добавив новый жесткий диск, поэтому я сделал sda5 разделом LVM вот так;

root@skysquad:~# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda5
  VG Name               vg1
  PV Size               372.62 GB / not usable 3.25 MB
  Allocatable           yes (but full)
  PE Size (KByte)       4096
  Total PE              95391
  Free PE               0
  Allocated PE          95391
  PV UUID               lewQnp-NdvK-Ac0N-sCgE-NGOH-K2cX-WxJ2tL

root@skysquad:~# vgdisplay
  --- Volume group ---
  VG Name               vg1
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               1
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               372.62 GB
  PE Size               4.00 MB
  Total PE              95391
  Alloc PE / Size       95391 / 372.62 GB
  Free  PE / Size       0 / 0
  VG UUID               yRkcP7-zvZ0-DjIR-xDWS-Ia6V-InSu-6Hwvpe

root@skysquad:~# lvdisplay
  --- Logical volume ---
  LV Name                /dev/vg1/home
  VG Name                vg1
  LV UUID                jXCi37-iWmp-xVd7-9TsL-56pg-6x9m-73flLT
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                372.62 GB
  Current LE             95391
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:0

Теперь мой sda5 (LVM) заполнен (см. Ниже), а мой кошелек - нет, и я не могу просто купить еще один жесткий диск.

root@skysquad:~# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda1             86511612   3829536  78287500   5% /
tmpfs                  1677788         0   1677788   0% /lib/init/rw
varrun                 1677788       520   1677268   1% /var/run
varlock                1677788         0   1677788   0% /var/lock
udev                   1677788       144   1677644   1% /dev
tmpfs                  1677788        84   1677704   1% /dev/shm
lrm                    1677788      2192   1675596   1% /lib/modules/2.6.28-15-generic/volatile
/dev/mapper/vg1-home 384590900 332537772  32517052  92% /home

Как видите, я использую только 5% / (sda1) (я не знаю, что имел в виду, когда устанавливал 90 ГБ для /).

Итак, наконец, мой вопрос - есть ли БЕЗОПАСНЫЙ способ изменить размер разделов без LVM (т.е. уменьшить размер sda1 на 60 ГБ, с 90 ГБ до 30 ГБ и увеличить sda5 с этими 60 ГБ с ~ 370 ГБ до ~ 430 ГБ), а затем увеличить LVM на sda5 с этими 60 ГБ?

Спасибо,
Лулаз

Теоретически вы можете уменьшить размер sda1, увеличьте размер расширенного раздела, сместите содержимое расширенного раздела вниз, затем увеличьте размер PV в расширенном разделе, и у вас будет дополнительное место. Однако количество возможных вещей, которые могут пойти не так, просто астрономическое, поэтому я бы рекомендовал либо купить второй жесткий диск (и, возможно, перенести все на него в более разумной компоновке, а затем лучше переразбить текущий диск), либо просто сделать некоторые связывают крепления различных частей и деталей из /home в / чтобы освободить немного больше места.

Простой ярлык:

Если у вас есть root-права на коробке, а вам кажется, что это так, создайте каталог на '/', то есть sda1. В этом примере назовем его «/ data / overflow». Затем в домашнем каталоге возьмите слишком большой каталог, переместите данные в / data / overflow и используйте символическую ссылку, чтобы указать на него.

Примеры команд:

# make directory on empty partition
mkdir -p /data/overflow
chown username /data/overflow

# move data to empty disk
cd /home/username
mv bigdir /data/overflow

# put the link in, so your old names match
ln -s /data/overflow/bigdir bigdir

GParted Live позволит вам изменять размер разделов без LVM, теоретически без потери данных, но 1. вы не сможете использовать свой сервер в это время и 2. как сказал womble, весьма вероятно, что что-то пойдет не так.

Создайте USB-накопитель Ubuntu Live, загрузитесь с него и запустите GParted, чтобы выполнить повторную настройку. Я обнаружил, что он безупречно работает при создании, перемещении, копировании и изменении размеров обычных разделов.