- Уменьшение размер диска виртуальной машины
- Как уменьшить виртуальный диск hyper v
- Как увеличить виртуальный диск hyper v
- Уменьшить с помощью Powershell
- Популярные Похожие записи:
- 4 Responses to Как в Hyper-V уменьшить размер диска
- OSBoy notes.
- Изменение размера виртуального диска в VirtualBox
- Увеличение размера
- Уменьшение размера
- Как уменьшить размер диска Hyper V в интерфейсе и Powershell
- Уменьшение диска Hyper V в Powershell
Уменьшение размер диска виртуальной машины
Всем привет сегодня я хочу вам рассказать, о очень полезной функции которой к сожалению нет у VMware ESXI 5.5, а есть у Hyper-V начиная с Windows Server 2012. Это функция уменьшения размера виртуального диска. Сделано очень удобно, так как это может спасти администратора виртуализации он неправильно спланированной инфраструктуры виртуальной машины.
Как уменьшить виртуальный диск hyper v
Напомню, что VMware тоже давал некоторые методы по уменьшению vmdk файлов, но там это делалось не очень удобно через конвертер. В MS как ни странно данный процесс сделали в виде удобного мастера.
Итак как же уменьшить виртуальный диск hyper v, для этого логинимся в свою виртуальную машину, у меня на ней установлен Windows Server 2012 R2, но это не принципиально. Вам нужно зайти в оснастку Управление дисками.
Выбираем диск который следует уменьшить, щелкаем по нему правым кликом и нужна нажать Сжать.
Задаете размер сжимаемого пространства и жмете сжать.
в итоге у вас появится не размеченное пространство на вашем локальном диске, за счет него мы и уменьшим диск hyper-v.
Теперь выключаем виртуальную машину и заходим в ее свойства.
Выбираем нужный виртуальный диск, и запускаем пункт правка.
Откроется мастер изменения виртуального жесткого диска
Как видите, тут тоже есть функция Сжать, она то и позволит в hyper-v уменьшить размер диска, жмем далее.
Мастер вам подскажет до какого минимума можно сжать диск.
Осталось только проверить, запускаем виртуалку и открываем Мой компьютер. И как видите, все успешно сжалось.
Как увеличить виртуальный диск hyper v
Для увеличения виртуального жесткого диска, следует в мастере изменения виртуального жесткого диска, выбрать пункт развернуть, перевод конечно очень корявый. Так, что увеличить диск hyper v, ни чуть не сложнее.
Уменьшить с помощью Powershell
давайте тоже самое проделаем из командной строки сильного языка:) Первым делом у нас есть виртуальная машина dc1, давайте ее закинем в переменную и посмотрим ее свойства.
- File Size > по сути это нынешний размер файла VHD. Отображает, сколько реально используется.
- Size > нынешний размер виртуального диска. Если VHD динамический, то вам отобразят максимальный размер, до которого он может увеличиться
- Minimum Size > отображает до какого размера можно уменьшить VHD.
Имеем динамически расширяемый VHD — размером 40Gb, из которых занято > 20Gb. Как видите свободное пространство имеется, но оно практически одинаково с минимальным, и уменьшить диск, не выйдет.
Как и в графическом варианте, виртуальная машина должна быть потушена.
Берем и монтируем данный виртуальный диск к нашей системе на физическом компьютере, ее еще называют родительской. Посмотрим свойства данного виртуального диска
Запоминаем номер диска и поглядим все разделы на нем с помощью команды
Нас интересует раздел, имеющий букву диска. Уменьшим его до 30Gb и проверим:
Как видите команда прошла успешно, давайте отмантируем данный VHD:
И уменьшим его до минимально значения:
Популярные Похожие записи:
4 Responses to Как в Hyper-V уменьшить размер диска
Добрый день.
Пытаюсь уменьшить диск первым способом, но в мастере изменения виртуального жесткого диска вижу только два варианта «convert» и «expand»
Случайно выделил 96 гигов не на тот виртуальный диск. Присоединить неразмеченное пространство с одного виртуального локального диска на второй вряд ли возможно, а дарить столько памяти не тому диску обидно.
Вторым способом сжимать боюсь, так как в программировании не силен и боюсь потерять важные данные
Может я что-то упустил?
Какая у вас версия Hyper-V?
Если диск не уменьшается необходимо прогнать на нем командлет Optimize-VHD
Спасибо за мануал! C Windows разделом понятно. А как в Hyper-V уменьшить размер диска Linux (ext4)?
OSBoy notes.
Записки обо всём.
Изменение размера виртуального диска в VirtualBox
Увеличение размера
Предположим, что нам стало не хватать дискового пространства на виртуальной машине. Можно, конечно, добавать ещё один виртуальный диск, но в Oracle VirtualBox, также, есть возможность увеличить уже имеющийся виртуальный диск.
Для увеличения размера виртуального диска, сначала удаляем все снимки состояния данной ВМ. Затем воспользуемся утилитой VBoxManage, идущей в комплекте с Virtualbox. Открываем командную строку и выполняем в ней команду, подобную этой:
«C:\Program Files\Oracle\VirtualBox\VBoxManage.exe» modifyhd «E:\VirtualBox\VMs\Debian\Debian_disk1.vdi» —resize 102400
- C:\Program Files\Oracle\VirtualBox\ — путь до каталога с установленной VirtualBox (у вас может отличаться);
- E:\VirtualBox\VMs\Debian\Debian_disk1.vdi — путь до образа виртуального диска, размер которого мы изменяем;
- 102400 — размер в мегабайтах, до которого мы хотим увеличить наш виртуальный диск (в данном случае — 100ГБ).
После выполнения данной команды, запускаем виртуальную машину и можем видеть, что на виртуальном диске появилось нераспределённое пространство, на которое теперь можно растянуть нужные разделы, средствами гостевой ОС, либо загрузившись с LiveCD (например, можно воспользоваться diskmgmt.msc или Acronis Disk Director в Windows, GParted в Linux, и т.п. утилитами ).
Однако, опция —resize работает только для увеличения размера диска. Для уменьшения — алгоритм будет другой.
Уменьшение размера
В VirtualBox очень удобно использовать динамически расширяющиеся жёсткие диски, которые не резервируют сразу всё отведённое им место на хост-машине, а расширяются по мере необходимости. Но при всём их удобстве, есть у них и недостаток: если с такого диска удалить файлы, то размер его образа на хост машине не уменьшится, а останется прежним.
Чтобы cжать образ этого диска до минимальных размеров, для начала нужно очистить его неразмеченные области (от остатков удалённых файлов). Для этого, в гостевой ОС нужно воспользоваться специальной утилитой, обнуляющей свободные секторы.
В Windows — можно использовать утилиту Sdelete. Утилита не требует установки, ее достаточно распаковать и запустить из командной строки команду:
В Linux — есть утилита zerofree.
В моём примере на ВМ установлен Debian. Устанавливаем zerofree через систему управления пакетами (если ещё не установлена):
# apt install zerofree
Для очистки раздела, его нужно отмонтировать, либо перемонтировать в режиме read-only (только чтение), иначе zerofree выдаст ошибку. Если требуется перемонтировать коренной раздел, то сначала нужно перейти в однопользовательский режим:
В данном случае будем чистить раздел /dev/sda3 , который у меня смонтирован в /home — на нём хранятся все пользовательские файлы:
# mount -o remount,ro -t ext4 /dev/sda3
Запускаем zerofree для очистки нужного раздела:
# zerofree -v /dev/sda3
Для выхода из однопользовательского режима выключаем ВМ:
После очистки диска и выключения ВМ, удаляем все снимки состояния данной ВМ, запускаем консоль и выполняем команду:
«C:\Program Files\Oracle\VirtualBox\VBoxManage.exe» modifyhd «E:\VirtualBox\VMs\Debian\Debian_disk1.vdi» —compact
Эта команда сожмёт образ виртуального диска до минимального размера.
Следует отметить, что в интернете есть информация, что можно увеличить размер только ДИНАМИЧЕСКИХ виртуальных дисков форматов VDI или VHD, уменьшить — только VDI. Лично я использую динамические диски в формате VDI (родной формат VirtualBox), с которым всё вышеописанное точно работает. С другими форматами не эксперементировал.
Как уменьшить размер диска Hyper V в интерфейсе и Powershell
12 сентября 2019
Уменьшить размер диска Hyper V можно через диспетчер виртуальных машин и с помощью Powershell. Оба варианта мы покажем на примерах.
В Hyper V возможно уменьшить тип диска VHDX, относящийся ко второму поколению виртуальных машин (Generation 2). Тип VHD уменьшить нельзя. Если вы не уверены в типе винчестера его можно проверить в свойстве виртуальной машины — этот способ показан на скриншоте ниже. Если вы используете VHD можно либо конвертировать тип в VHDX либо скопировать содержимое при создании нового диска Hyper V.
Разницы в сжатии динамических и фиксированных устройств нет.
Перед уменьшением диска Hyper V нужно зайти в саму виртуальную машину где этот файл подключен и открыть диспетчер управления дисками:
Аналогично увеличению диска Hyper V нужно выбрать тот, размер которого необходимо уменьшить. Если есть не используемые разделы, то можно их удалить — эффект тот же. Если таких разделов нет, то нужно в выплывающем меню выбрать «Сжать том. » (Shrink). После нажатия кнопки пойдет расчет места, которое возможно освободить:
В новом окне нужно выбрать размер, который будет вычтен из выбранного диска. «Доступное для сжатия пространство» — максимальный размер, на который мы можем уменьшить раздел. Изначально я попробовал уменьшить на 1 Гб, но в дальнейшем Hyper V отказался уменьшать диск на такое пространство. С уменьшением на 10 ГБ проблем с Hyper V не было. Под «отказался» я имею виду, что не появлялась возможность уменьшения в диспетчере Hyper V. Какой минимальный размер для сжатия точно сказать не могу, но как я и написал при 10 Гб работает нормально.
После завершения процесса сжатия у нас появится неразмеченная область, выделяющиеся черным цветом — это та часть, которая будет убрана в дальнейшем через диспетчер Hyper V. Выключать виртуальную машину не обязательно, но я бы рекомендовал это сделать что бы избежать возможных проблем.
Теперь нужно зайти в настройки виртуальной машины гипервизора:
В открытом окне выбрать виртуальный жесткий диск который вы сжимали и нажмите кнопку редактирования. Тут же мы можем увидеть тип диска, который вы используете VHD или VHDX.
В первом окне ничего нельзя изменить, так как мы открывали конкретный VHDX файл, а не из диспетчера управления дисками Hyper V. Открываем следующее окно, где увидим возможность Hyper V уменьшения размера диска (Сжатие/Shrink). Выбираем ее:
Уменьшить виртуальный диск Hyper V можно на тот размер, на который мы освободили внутренний раздел машины:
На последнем окне еще раз убеждаемся, что введенные данные верны и подтверждаем их:
Виртуальный диск Hyper V уменьшен.
Уменьшение диска Hyper V в Powershell
Первое что нужно сделать это узнать имя виртуальной машины Hyper V для сжатия диска:
Моя виртуальная машина называется Win10 и на примерах вам нужно изменить ее имя на свое. Нам нужно проверить, что файл виртуального винчестера имеет тип VHDX, возможности уменьшения VHD нет:
Далее включаем виртуальную машину:
Подключимся к операционной системе виртуальной машины. Если вы подключаетесь с хоста гипервизора проблем быть не должно, но возможно потребуется настроить средства для удаленных команд Powershell.
Либо можно запустить консоль Powershell с самой виртуальной машины.
Сейчас нам нужно уменьшить раздел внутри виртуальной машины что бы в последующем это место убрать через возможности гипервизора. Уменьшить можно и через diskpart, но описывается вариант с Powershell. Нужно выбрать раздел, с которого будет убираться место:
Конечно не стоит уменьшать размер загрузочного раздела или системного до минимального размера.
Далее нам нужно узнать насколько возможно уменьшить раздел. В этой команде я передаю только букву раздела:
Если команда запущена не под администратором, то вы увидите ошибку:
Get-PartitionSupportedSize: клиенту не удалось получить доступ к ресурсу CIM.
Если важно увидеть размер в гигабайтах, то можно сделать так:
Если нужно изменить данные на MB или TB просто замените соответствующие буквы.
В этой команде мы указываем конечный размер раздела, а не сколько хотим от него отнять. В случае работы с интерфейсом возможность уменьшения VHDX в диспетчере гипервизора не была активна при неразмеченном пространстве в 1GB. Эта ситуация исправилась при 10GB.
Можно указывать и другую единицу измерения:
Виртуальную машину можно оставить включенной, но я бы рекомендовал выключить:
Этой командой мы увидим, на сколько мы можем уменьшить диск Hyper V. Я использую конвейер что бы не прописывать путь к файлу VHDX:
Команда ниже в Hyper V уменьшает размер диска. Я вставил изначально значение, но можно использовать и варианты с примеров выше:
Убедимся что диск виртуальной машины Hyper V уменьшен: