Как расширить мой корневой (/) раздел?


68

До сегодняшнего дня я использовал Ubuntu 13.04 в моей двойной загрузке Windows7 / Ubuntu. Только сейчас я обновился до Ubuntu 14.04. Моя программа обновления ПО показала сообщение о наличии обновлений. Я продолжил с Install Now . Вскоре я получил следующее окно.

Сообщение «Недостаточно свободного места на диске»

Затем я попробовал, sudo apt-get cleanкак рекомендовано. Ничего не произошло! Даже окно не открылось. Научи меня, удаляя временные пакеты.

Удаление временных файлов может быть не очень полезным в случае дальнейших обновлений и установок, так как у меня не осталось слишком много места в моем /. Я хочу расширить свой раздел с помощью нераспределенного пространства в моем HD. Ниже мое окно Gparted.

Gparted окно

Я получил ответ здесь . Но это не было полезно для меня. У меня было два варианта. Но ответ не работал для обоих моих выборов.

Вариант 1: я могу использовать нераспределенное пространство 4,25 ГиБ для расширения моего / dev / sda10. Для этого мне нужно переместить раздел linux-swap. Но моя опция Resize / Move отключена для раздела linux-swap. Выбор 1 не удался!

Вариант 2: вместо этого я могу использовать нераспределенное пространство 14,35 ГиБ. В этом случае я должен переместить более одного раздела. Раздел / dev / sda4 является первым в списке. Даже этот раздел имеет ту же проблему. Изменение размера / перемещение отключено. Выбор 2 не удался!

У меня сейчас нет выбора.

Что мне делать? Помогите мне расширить мой / с Gparted.


2
Почему в вашем корне написано, что 1,96 ГиБ не используется? У вас действительно есть место, нет? Какой выход df?
Брайам

1
apt-get cleanне всплывает окно и даже не отображает в командной строке то, что он сделал. Он просто делает это, но освободившееся пространство 1.96 ГБ показывает, что он что-то сделал.
наказывает

Ответы:


62

На самом деле вы можете использовать 4.25 ГиБ в конце без какой-либо перезагрузки, потому что Linux поддерживает изменение размера разделов в режиме онлайн, начиная с ядра 2.6 (это означает, что вы можете изменять размер разделов, пока они монтируются, даже корневой раздел, без перезагрузки).

Я покажу вам, как удалить раздел подкачки и расширить корневой раздел со всем свободным пространством в конце. Затем я буду использовать нераспределенное пространство в начале (14,35 ГБ) для нового раздела подкачки. Конечно, 14.35 ГиБ - это немного, поэтому вы также можете использовать некоторые для расширения вашего NTFS-раздела.


  1. Открыть GParted

  2. Щелкните правой кнопкой мыши /dev/sda11и выберитеSwapoff

  3. Щелкните правой кнопкой мыши /dev/sda11и выберитеDelete

  4. Нажмите на Apply All Operations

  5. Откройте терминал

  6. Расширьте корневой раздел:

    sudo resize2fs /dev/sda10
    
  7. Вернуться к GParted

  8. Откройте GPartedменю и нажмитеRefresh Devices

  9. Щелкните правой кнопкой мыши по незанятому пространству и выберите New

  10. Выбрать в linux-swapкачестве файловой системы

  11. Нажмите на Add

  12. Нажмите на Apply All Operations


Первоначально я написал это, используя только командную строку, но затем я решил попытаться использовать GParted настолько, насколько это возможно, так как вам будет легче увидеть, что происходит. Вы даже можете расширить корневой раздел, используя GParted. Но вам нужно размонтировать корневой раздел, прежде чем работать над ним. Я имею в виду, что вы должны работать в автономном режиме (используя liveUSB). В некоторых случаях ваш личинка может быть повреждена. Так что переустановите свой grub, прежде чем выходить из офлайн-работы.

Я верю, что GParted автоматически включит новый раздел подкачки, но я не уверен. Вы всегда можете проверить, щелкнув по нему правой кнопкой мыши и выбрав Swapon. Если этот параметр недоступен, разделы подкачки, вероятно, уже включены.

Кроме того, этот Refresh Devicesшаг, вероятно, не нужен, но вы должны следовать ему просто, чтобы быть уверенным.

Мы не можем изменить размер расширенного раздела ( sda4в данном случае), поскольку в нем есть смонтированный логический раздел. Таким образом, нам нужно загрузиться в режиме реального времени на Ubuntu USB / CD-привод. Оттуда запустите GParted, при необходимости отключите swap, щелкните правой кнопкой мыши на расширенном разделе и измените его размер в соответствии с вашими потребностями. Затем выполните шаги, указанные по мере необходимости, чтобы изменить размер root и добавить обратную подкачку. В случае изменения UUID вашего корневого раздела вы можете обновить Grub, выполнив следующие действия в режиме реального времени:

sudo mount /dev/sda10 /mnt 
sudo mount -o bind /dev/ /mnt/dev 
sudo grub-install --root-directory=/mnt /dev/sda 
sudo chroot /mnt /bin/bash 
# Now within the chroot
sudo update-grub
exit
# Now outside chroot

Первая пара команд объединяет корневой раздел ( sda10в данном случае) и настраивает его /dev/для использования в среде chroot. (Другие разделы, которые могут быть аналогичным образом смонтированы для более функционального chroot /proc, /sysи т /dev/pts. Затем мы вводим chroot и обновляем grub. Это заставляет grub использовать новые UUID там, где это необходимо. После выхода из chroot перезагрузитесь, и мы должны вернуть меню grub.


@ Муру: Да, это сработало. Вернул мой харч! Огромное спасибо. Где научиться этим вещам? Я хочу учиться.
Рамвиньеш

2
@Ramvignesh - Там нет единого руководства, но если вы остановитесь на Ask Ubuntu, вы найдете много информации. Люди здесь ссылаются на множество информативных сайтов, и вы видите все виды проблем и видите, как люди мудрее вас или меня их исправляют. В этом случае я узнал о GRUB из help.ubuntu.com/community/Grub2/Install .
Муру

3
Эти инструкции неверны: запуск resize2fsбез предварительного изменения размера раздела каким-либо образом не будет иметь никакого эффекта. Вам также не нужно запускать вещи из командной строки, так как gparted позаботится об этом за вас. Просто измените размер корневого раздела в gparted.
psusi

Для меня это работало нормально, но я хотел бы отметить, что в соответствии с этим askubuntu.com/a/600017/223089 вы можете расширить раздел непосредственно в Gparted. Так что я согласен с @psusi выше, что на шаге 6 легче расширить раздел в Gparted.
Джон Кример

@JohnCreamer, главное, что я сделал в своем предыдущем комментарии, было то, что в этих инструкциях пропущен шаг, на котором раздел фактически расширяется, и без этого вы не можете увеличить файловую систему (поскольку она не может превышать размер раздела, в котором она находится). ) и поэтому эти инструкции не могут работать для вас, если вы точно следуете им.
psusi

6

Вы не можете изменять системные разделы (и родительские расширенные разделы, например /dev/sda4), когда система использует их - поэтому вам нужно изменить разделы вне системы - установочный диск Ubuntu должен сделать это. Итак, сначала вам нужно загрузиться с диска и открыть GParted.

  • Если у разделов есть ключ рядом с ними, они используются - вам нужно щелкнуть по ним правой кнопкой мыши и выбрать «отключить».
  • Для фактического изменения размера, вы должны быть в состоянии сделать две довольно простые вещи:

    • Расширьте расширенный раздел /dev/sda4до конца диска, переместите раздел подкачки вправо, затем разверните /dev/sda10раздел.

    • Уменьшите размер /dev/sda9 /homeраздела, а затем разверните /dev/sda10раздел.

Хотя перемещение всех разделов /dev/sda4влево, перемещение свопа и расширение раздела также должны работать.

Хотя возможно иметь работающую систему с 5 ~ ГБ пространства в /разделе, она, вероятно, будет работать лучше, по крайней мере, с 7-10 ГБ пространства.

Как вы всегда должны делать, вы должны сделать резервную копию ваших данных, прежде чем делать что-либо. Кроме того, поскольку вы используете только 4 ГБ в установленной системе Ubuntu, вы можете создать резервную копию в другом месте и выполнить новую установку, что означает, что пакеты из старой системы не будут использовать пространство.


3
Предлагая OP переместить разделы (а не расширять их), вы должны упомянуть, что это может занять очень много времени и что ему потребуется переустановить / исправить grub2 с живого носителя.
наказывает
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.