Могу ли я изменить размер корневого раздела без удаления и переустановки Linux (или потери данных)?

17

Я начал использовать машину, на которой установлены Debian и Windows 7. Однако после установки некоторых программ я начал получать сообщение о том, что места недостаточно. Я знал, что в системе было более 1 ТБ места на жестком диске, и провел некоторые исследования. Кажется, что корневой раздел составляет всего 5 ГБ.

Есть ли способ выделить больше дискового пространства конкретному разделу без переустановки Linux?

Ниже вы можете найти результаты нескольких команд, которые я выполнил:

fdisk -l

Disk /dev/sda: 640.1 GB, 640135028736 bytes
255 heads, 63 sectors/track, 77825 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x4a47e2fd

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      102400    7  HPFS/NTFS
Partition 1 does not end on cylinder boundary.
/dev/sda2              13       53507   429687500    7  HPFS/NTFS
Partition 2 does not end on cylinder boundary.
/dev/sda3           53507       77826   195340289    5  Extended
Partition 3 does not end on cylinder boundary.
/dev/sda5           53507       53537      243712   83  Linux
/dev/sda6           53538       77826   195095552   8e  Linux LVM

Disk /dev/sdb: 640.1 GB, 640135028736 bytes
255 heads, 63 sectors/track, 77825 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x4a47e2fe

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               2       62261   500097657+   f  W95 Ext'd (LBA)
/dev/sdb5               2       62261   500097656+   7  HPFS/NTFS

Disk /dev/dm-0: 4999 MB, 4999610368 bytes
255 heads, 63 sectors/track, 607 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/dm-0 doesn't contain a valid partition table

Disk /dev/dm-1: 1996 MB, 1996488704 bytes
255 heads, 63 sectors/track, 242 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/dm-1 doesn't contain a valid partition table

Disk /dev/dm-2: 20.0 GB, 19998441472 bytes
255 heads, 63 sectors/track, 2431 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/dm-2 doesn't contain a valid partition table

df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/HU-root   4.6G  4.4G   32M 100% /
tmpfs                 2.0G     0  2.0G   0% /lib/init/rw
udev                  2.0G  220K  2.0G   1% /dev
tmpfs                 2.0G  356K  2.0G   1% /dev/shm
/dev/sda5             231M   22M  198M  10% /boot
/dev/mapper/HU-home    19G  751M   17G   5% /home

Изменить (дополнительная информация на основе комментария):

# mount
/dev/mapper/HU-root on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
/dev/sda5 on /boot type ext3 (rw)
/dev/mapper/HU-home on /home type ext3 (rw)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)

# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda6
  VG Name               HU
  PV Size               186.06 GiB / not usable 3.00 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              47630
  Free PE               41194
  Allocated PE          6436
  PV UUID               wmEFAc-eSb6-r3qo-jIjy-vuKH-v9JK-eQfJFZ

В качестве примечания я также был бы признателен за любые предложения для хороших книг, которые подробно объясняют эти темы (файловые системы, как различные операционные системы понимают файловые системы и т. Д.).

F1234k
источник
Какой тип файловой системы у вас /? (Опубликуйте вывод mountили содержимое, /etc/fstabесли вы не знаете.) Также вывод pvdisplay(как root) будет интересен, поскольку вы, похоже, используете LVM.
Мат
Результаты команд, которые вы упомянули, были добавлены! Спасибо :)
F1234k
То, что вы пытаетесь сделать, возможно, но только с использованием LVM. Показанный вами df-дисплей, похоже, использует LVM. Если используется все пространство в группе томов «HU», сначала необходимо уменьшить «домашний» логический том. Сжатие является гораздо более опасной операцией с точки зрения потери данных, чем расширение файловой системы.
Иордания
Намного проще, безопаснее: создайте новый раздел, например /usr, и перенесите туда свой текущий / usr.
2012 года,

Ответы:

17

Предупреждение : делать что-либо с вашими файловыми системами без резервного копирования с известным восстановлением не рекомендуется.


Не выполняйте какие-либо из следующих шагов, если вы не уверены, что вы /чисты. Если вы не уверены, запустите следующее (как root):

# touch /forcefsck

и перезагрузите компьютер. Это сделает fsckвсе ваши разделы, чтобы быть на безопасной стороне.


При этом, поскольку вы используете LVM для корневого устройства и ext3файловой системы, вы можете расширить его в режиме онлайн. Перед началом убедитесь, что вы resize2fsустановили. Если нет, то обычно это называется пакетом e2fsprogs. (Если вы не можете установить его, потому что у вас недостаточно места, попробуйте, например, выполнить небольшую очистку /var/log.)

Сначала вы расширяете базовый том с помощью (как root):

# lvextend -L+2G /dev/mapper/HU-root

(Настроить 2G деталь по своему желанию - это количество места, которое вы хотите добавить.)

Затем вам нужно изменить размер файловой системы. Это можно сделать онлайн с помощью resize2fs:

# resize2fs /dev/mapper/HU-root

Это может занять несколько секунд / минут. Не перебивай. В конце сделайте еще одну перезагрузку, возможно, с другой /forcefsck, если хотите. Это не обязательно, но я все равно часто делаю это.

Мат
источник
1
Это не работает для меня:Path required for Logical Volume "sda1" Please provide a volume group name
8bitjunkie
Это работает только на LVM, похоже, вы пытаетесь изменить размер реального раздела.
Мат
6

У вас есть свободное место в вашем PV для выделения на раздел /. Вы можете использовать следующее, чтобы увеличить пространство / dev / mapper / HU-root.

lvextend -L +10G /dev/mapper/HU-root
e2resize /dev/mapper/HU-root

Приведенная выше команда добавит 10G из вашей группы томов в логический том HU-root. Команда e2resize "увеличит" файловую систему ext3, чтобы использовать оставшееся свободное пространство.

jordanm
источник
2
Возможно, я не единственный, кто не получил его сразу: PV = "Физический том"
Этьен восстановил Монику
Это не работает для меня:Path required for Logical Volume "sda1" Please provide a volume group name
8bitjunkie
@ 8bitjunkie sda1- это физическое устройство, а не логический том.
Иордания
-1

Из lvdisplayвыходных данных выберите путь для корневого раздела, который вы пытаетесь изменить / развернуть.

Аквамэн
источник