Как изменить размер разделов с помощью командной строки без использования графического интерфейса на сервере?

Если бы решение в Hampster не было тем, что вы искали, я бы также предложил посмотреть программное обеспечение для отслеживания времени в тесте. Похоже, у этого приложения есть предупреждения и уведомления, которые вы ищете.

1
задан 20 October 2014 в 05:37

2 ответа

Прежде всего важно знать, что вы не можете изменять размер, чтобы уменьшить свой корневой раздел, если вы его используете (это называется сокращением в Интернете). Вы можете расти только в Интернете. Это поддерживается командой resize2fs. Я буду предполагать следующее:

Вы не хотите потерять свою информацию в корневом разделе. У вас нет физического доступа к жесткому диску, чтобы использовать LiveCD. Это может относиться к виртуальной среде или к удаленной. В случае с виртуальным вы все равно сможете загрузиться с LiveCD, если вы установите виртуальную машину для загрузки с LiveCD. Это позволяет VM поддерживать вывод графического интерфейса рабочего стола, из которого вы можете запускать приложение Gparted, чтобы легко изменять размер. Но так как это менее вероятно, я полагаю, вы не можете.

Существует два типа разделов, размер которых можно изменить, разделы LVM или разделы Logical Volume Manager, которые поддерживают изменение размера сети (сокращение / рост) с момента создания галактики и большинства используемых нами разделов. В настоящее время единственным, у которого почти 100% поддержка полного онлайн-изменения размера (Shrink / Grow), является файловая система btrfs (которая все еще находится в разработке). Я объясню, как делать обычные разделы, которые большинство из нас использует в файловой системе ext4.

Изменение размера (рост) раздела

Чтобы увеличить свой раздел, вы можете сделать это с помощью установленного корня , Для этого просто выполните:

sudo resize2fs /dev/sda1

Если у вас уже есть свободное пространство, готовое к объединению. Впоследствии я рекомендую перезагрузить, чтобы изменения вступили в силу правильно. Приведенная выше команда изменит размер до максимально допустимого. Если вы хотите изменить размер до определенного размера, просто добавьте размер в конец:

sudo resize2fs /dev/sda1 25G

Обратите внимание, что если вы хотите указать 25,4 ГБ, вы не сможете использовать «.». вам нужно будет спуститься на одну единицу измерения. В этом случае от GB до MB, так что это будет выглядеть так:

sudo resize2fs /dev/sda1 25400M

Таким образом у вас будет раздел из 25.4G

Изменение размера (сжимание) раздела 10]

Сокращение раздела - это двухэтапный процесс, который включает в себя:

Вы не хотите потерять свою информацию в корневом разделе. Уменьшение размера базового блочное устройство, соответствующее файловой системе.

Перед уменьшением емкости файловой системы вам необходимо уменьшить размер блочного устройства (которое может быть разделом или логическим томом). Поскольку это не доступно ни для одной из файловых систем ext *, вы не сможете сжать ее с 20 ГБ до 19,5 ГБ, чтобы создать подкачку 500 МБ.

Даже Ext4 не поддерживает сжатие в Интернете , Если вы попытаетесь это сделать, вы получите следующее:

Ваша единственная ставка, насколько мне известно, - это:

Уменьшение размер базового блочного устройства в соответствии с файловой системой. У вас нет физического доступа к жесткому диску, чтобы использовать LiveCD. Это может относиться к виртуальной среде или к удаленной. В случае с виртуальным вы все равно сможете загрузиться с LiveCD, если вы установите виртуальную машину для загрузки с LiveCD. Это позволяет VM поддерживать вывод графического интерфейса рабочего стола, из которого вы можете запускать приложение Gparted, чтобы легко изменять размер. Но поскольку это менее вероятно, я предполагаю, что вы не можете. Используйте Ubuntu Server Live Image для изменения размера раздела. Для этого случая вам нужно будет перейти на этот экран: и выберите вариант «Изменить размер», как показано на изображении выше. Оттуда вы выберете, какой будет новый размер, так как отсюда вы можете размонтировать устройство и сжать его, если хотите.

В качестве дополнительной помощи здесь находится gparted файловая система suppor http://gparted.org/features.php, которая дает очень подробный список поддерживаемых и включает, если у них есть полное онлайн-изменение размера. Btrfs среди них.

23
ответ дан 24 May 2018 в 14:07
  • 1
    Мне любопытно, есть ли другие файловые системы, которые поддерживают онлайн-сокращение? zfs или btrfs, может быть? – Seth♦ 2 August 2014 в 05:25
  • 2
    Я добавил ссылку внизу. Ядро также должно поддерживать это, если файловая система должна правильно изменить размер сети. – Luis Alvarado♦ 2 August 2014 в 20:48
  • 3
    У меня есть сервер ubuntu на машине vmware, а размер его диска - 120G. Но после использования первого решения я получаю эту ошибку: файловая система уже 27262720 блоков. Нечего делать! – Mr.Hyde 6 December 2015 в 16:30
  • 4
    Благодарю вас @ Mr.Hyde. Было несколько проблем с Workstation 10 и даже 11. Я бы порекомендовал 12, и для Ubuntu я бы также обновил либо до последней, либо новой LTS, так как были и некоторые проблемы. В моем случае у меня есть рабочая станция VMware 12.0.1 и Ubuntu 15.10 64 бит. – Luis Alvarado♦ 7 December 2015 в 17:13
  • 5
    Из man-страницы resize2fs: The resize2fs program does not manipulate the size of partitions. – ACK_stoverflow 17 August 2017 в 20:44

Ответ зависит от того, можно ли размонтировать раздел для сжатия или нет. В вашем случае вы, вероятно, не можете размонтировать раздел. В Linux (UNIX / MAC OS) установка раздела относится к использованию файловой системы и сопоставлению ее с точкой монтирования (в вашем случае /). Размонтирование означает, что вы прекратите использование файловой системы и удалите сопоставление с точкой монтирования. Вы не можете отключить файловую систему, содержащую вашу рабочую ОС.

Если раздел можно размонтировать

Предположим, вы хотите сжать 200-бит ext4-раздела на /dev/sda4, установленном на /data. В настоящее время он содержит музыку и фильмы или что-то подобное, поэтому вы можете временно отключить ее. Вы хотите создать своп на 4 ГБ.

sudo unmount /dev/sda4

, чтобы размонтировать раздел.

sudo resize2fs /dev/sda4 196G

, чтобы изменить размер файловой системы ext4 на 196 ГБ, считая, что достаточно места. Теперь вам нужно сжать раздел. В настоящее время я считаю, что вам нужно использовать cfdisk для удаления существующего раздела и воссоздать меньший раздел на своем месте. Затем вы можете создать новый раздел для свопа.

sudo cfdisk /dev/sda 

предоставит вам графический интерфейс для проверки вашей таблицы разделов. Я бы рекомендовал вам print таблицу разделов к файлу или экрану в этой точке и принять к сведению текущую конфигурацию как резервную. Затем вы можете выбрать /dev/sda4 и delete раздел. На его месте появится free space. Используйте new для создания нового раздела с 196 ГБ на своем месте и установите его в ext4. Затем перейдите в конечное свободное пространство и создайте раздел подкачки 4 ГБ с типом swap. installation Я не тестировал эти команды, так как я не могу играть с моим / в данный момент.

Если раздел можно размонтировать [!d4 ]

Вы не можете сжимать установленный раздел ext3 / 4 (см. справочную страницу resize2fs). Когда вы запускаете свою ОС с /, вы не можете отключить /. Это означает, что вам нужно загрузить другую ОС (например, с USB-ключа), чтобы внести изменения.

В вашем случае это удаленный сервер (скорее всего, KVM), поэтому вы не сможете загружать от USB / живого образа ОС. Могут быть другие способы изменить разбиение на разделы с вашего поставщика vServer с помощью графического интерфейса администратора. Я считаю, что это ваш лучший выбор в настоящее время.

6
ответ дан 24 May 2018 в 14:07

Другие вопросы по тегам:

Похожие вопросы: