Vmware уменьшить размер диска linux

Уменьшение размера виртуального диска на ESXi

В этой статье мы рассмотрим, как уменьшить размер виртуального диска (vmdk) в VMWare ESXi. В отличии от процедуры расширения диска виртуальной машины VMWare, которую можно выполнить на-лету без выключения ВМ, процедура уменьшения размера vmdk файла на гипервизоре VMWare ESXi задача более сложная, и выполнить ее непосредственно через графический интерфейс vSphere Client в принципе нельзя. Клиент vSphere не позволяет вам указать меньший размер виртуального диска.

Перед тем, как уменьшить размера виртуального диска на хосте VMWare ESXi необходимо:

  • Удалить все снапшоты виртуальной машины (иначе вы можете повредить виртуальный диск)
  • Создать полную резервную копию виртуальной машины, или предварительно сделайте копию vmdk и flat файла, который вы хотите уменьшить. Воспользуйтесь командами:
    cp vmname.vmdk backup_vmname.vmdk
    cp vmname-flat.vmdk backup_vmname-flat.vmdk

Процедура уменьшения размера виртуального диска состоит из двух этапов:

  • Уменьшение раздела внутри гостевой ОС;
  • Уменьшение размера VMDK файла виртуальной машины VMware на VMFS (NFS) хранилище.

Уменьшение раздела внутри гостевой ОС

В первую очередь необходимо уменьшить размер дискового раздела внутри гостевой операционной системы. Если у вас в ВМ запущена Windows, воспользуйтесь диспетчером управления дисков diskmgmt.msc (операция Shrink Volume доступна во всех поддерживаемых версиях Windows, для старых версий Windows для уменьшения размера раздела используется утилита sdelete) или используйте сторонние утилиты (например, Acronis Disk Director). Если этого не сделать, то после уменьшения размера виртуального диска можно получить неработоспособную файловую систему.

Допустим, вы хотите хотим уменьшить размер диска на 40 Гб. Значит размер тома должен быть уменьшен на 40960 Мб (40 Гб x 1024). Именно это значение нужно ввести в поле мастера Shrink Volume. После уменьшения размера раздела на диске справа от вашего основного раздела останется некоторое количество неразмеченного (Unallocated) пространства (в нашем примере 40 Гб).

Уменьшение размера VMDK файла виртуальной машины VMware

Теперь нужно уменьшить размера VMDK файла на файловой системе VMWare VMFS.

  1. Выключите виртуальную машину, размер виртуального диска которой вы хотите уменьшить;
  2. Подключитесь по SSH к консоли гипервизора ESXi, на котором зарегистрирована ВМ (можно воспользоваться putty или встроенным ssh клиентом Windows);
  3. Перейдите в каталог, в котором хранится vmdk файл ВМ (путь можно узнать в свойствах виртуального диска в графическом клиенте vSphere)
    cd /vmfs/volumes/datastore/test-VM
  4. Выведите содержимое конфигурационного файла виртуального диска (с расширением *.vmdk) с помощью команды cat:
    # cat test_vm_3.vmdk
    Размер vmdk диска задается в секции #Extent description (после символов RW). В данном случае указана цифра 167772160 (80 Гб *1024*1024*1024 / 512)
  5. Я хочу уменьшить виртуального vmdk диска с 80 до 40 Гб. Это значит, что в секции Extent description нужно указать значение: 83886080 (40 Гб*1024*1024*1024 / 512). Задайте новый размер виртуального диска с помощью текстового редактора ( vi или nano );
  6. Я использую редактор vi: # vi test_vm_3.vmdk
  7. В редакторе vi с помощью стрелки вниз перейдите на строку с размером диска и нажмите i (для перехода в режим редактирования). Укажите новый размер виртуального диска. Нажмите ESC , чтобы выйти из режима редактирования и :wq -> Enter чтобы сохранить изменения;
  8. Осталось склонировать или смигрировать (Storage VMotion) виртуальную машину на другое хранилище (datastore). После перемещения файлов виртуальной машины в ее свойствах отобразится новый размер виртуального диска;

Итак, мы рассмотрели один из вариантов выполнения операции уменьшения размера виртуального vmdk диска в VMWare ESXi. Если требует уменьшить размер тонкого диска VMWare за счет неиспользуемого места, рекомендуем воспользоваться этой инструкцией.

  • Уменьшение размера виртуального диска путем конвертации виртуальной машины с помощью VMware vCenter Converter. При конвертации нужно указать размер нового диска меньше, чем исходный (об этом в следующем разделе);
  • Можно склонировать содержимого виртуального диска с помощью стороннего софта (например, Acronis True Image или Symantec Ghost32). Операция выполняется путем добавления в виртуальную машину нового диска меньшего размера и клонирования на него содержимого большего диска. После этого большой диск можно удалить.

Уменьшение размера виртуального диска с помощью VMware vCenter Converter Standalone

Еще один способ уменьшения размера виртуальных дисков у ВМ на VMWare с помочью GUI — воспользоваться бесплатным конвертером — VMware vCenter Converter Standalone.

  • Конвертация V2V выполняется медленно;
  • На датасторе должно быть достаточно места для разрешения новой ВМ;
  • У новой ВМ будет новый MAC адрес.
  • не требуется открывать в консоль vCenter или ESXi хоста;
  • создается точная копия VM;
  • источник не поломается при ошибке в настройках параметров задачи конвертирования.

Укажите адрес ESXi хоста.

Выберите исходную ВМ.

Укажите параметры новой ВМ.

Перейдите в режим редактирования диска (Data to copy -> Edit).

Выберите режим копирования: Select volumes to copy.

Укажите новый размер диска в новой ВМ. Как вы видите, на диске в гостевой занято 48 гб, а размер самого диска – 150. Мы уменьшим размер виртуального диска до 60 Гб.

Запустите процесс конвертирования ВМ. После окончания отключите исходную ВМ и включите новую. Проверьте, что размер диска уменьшился. После этого исходную ВМ можно удалить.

Источник

Как уменьшить размер диска VMware

Мой образ Ubuntu VMware диск увеличился до 5 ГБ физического размера файла. Это динамически растущий диск с максимальной емкостью 8 ГБ. Я убрал некоторые вещи в дистрибутиве Linux, и теперь он занимает 3 ГБ. Очевидно, что физический размер файла не уменьшился автоматически. Есть ли способ (если это возможно бесплатно) уменьшить этот диск до

Мне нужно это, чтобы соответствовать образу на DVD.

Дефрагментация (не нужно ничего размонтировать / перемонтировать)

Игнорировать любые ошибки. Некоторые файлы, такие как символические ссылки и файлы устройств, не могут быть дефрагментированы.

Обнулите все неиспользуемое пространство, чтобы VMware знала, что оно действительно не используется:

dd if=/dev/zero of=wipefile bs=1M; sync; rm wipefile

Запустите операцию сжатия:

sudo vmware-toolbox-cmd disk shrinkonly

Я нашел решение — вы должны сжать свой жесткий диск:

Виртуальная машина — Настройки — Общие — Очистить виртуальную машину

Откройте VMware Toolbox в гостевой системе (от имени пользователя root) и уменьшите размер диска. (Документация)

Если у вас нет VMware Tools, вы можете сжать диск вручную в два этапа. Во-первых, очистите свободное место на виртуальном диске с помощью такого инструмента, как zerofree . Zerofree доступен в Ubuntu , но поскольку он требует, чтобы файловая система гостевой ОС была смонтирована только для чтения, вы можете захотеть запустить ее с живого CD. Parted Magic, как сообщается, включает в себя нулевое значение.

После обнуления свободного места откройте «Настройки виртуальной машины» и сожмите виртуальный диск.

из командной строки в гостевой системе Ubuntu.

(Проверено на гостевой системе Ubuntu 14.04 LTS + хост Windows 10 + рабочая станция VMWare 12.1.1)

Изменение размера жесткого диска VMWare :

Расширение динамического виртуального жесткого диска в VMWare легко и больше не требует инструмента командной строки, vmware-vdiskmanager.exe расположенного по умолчанию в C:\Program Files\VMware\VMware Workstation\ .

Для изменения размера используйте следующую команду (откройте командную строку, нажав WIN + R и введите cmd): » C:\Program Files\VMware\VMware Workstation\vmware-vdiskmanager.exe» -x NEWSIZE «diskname.vmdk «

Процедура :

  • Скачать здесь
  • устанавливать
  • открыто
  • Выберите раздел, нажмите «Изменить размер / переместить», перетащите маркер на полную ширину.
  • Нажмите Применить
  • Согласен на перезагрузку
  • Во время запуска не нажимайте никакие клавиши
  • Пусть загрузочный модуль выполнит свою задачу
  • Проверьте, увеличился ли размер системного раздела Windows.

Для визуального изложения шагов и дополнительной информации, смотрите здесь .

Эти шаги отлично сработали для меня:

1) Ноль заполнить неиспользуемое пространство

2) Сжать диск с помощью vmware toolbox

Протестировано на Ubuntu 16.04, VMware Workstation 12.1.0 Player, Windows 7 Host

Усадка дисков возможна на ESXi.

Найдите большой файл и удалите их.

find / -type f -size + 50M

Дефрагментация (не нужно ничего размонтировать / перемонтировать). Игнорировать любые ошибки. Некоторые файлы, такие как символические ссылки и файлы устройств, не могут быть дефрагментированы.

Обнулите все неиспользуемое пространство, чтобы VMware знала, что оно действительно не используется:

dd if = / dev / zero of = wipefile bs = 1M; синхронизации; рм wipefile

Запустите операцию сжатия: если 4 не удается, перейдите к 5.

диск sudo vmware-toolbox-cmd сокращается

Перезагрузите систему Linux с опцией try и отредактируйте таблицу разделов с помощью gparted. Сократите корневую файловую систему и удалите и переместите раздел подкачки рядом с корневым разделом.

SSH к ESXi и выполните эту команду:

vmkfstools -K /vmfs/volumes/volumename/vmname/vmname.vmdk

Нам нужно отредактировать файл * .vmdk. После букв RW, определяет размер виртуального диска VMware (VMDK)

* 40 ГБ = 40 * 1024 * 1024 * 1024/512 = 83886080 *

Перенесите его в другое хранилище данных, чтобы отразить новый размер.

Утончающиеся (сокращающиеся) диски VMDK в гостях ESXi / vSphere Linux

Примечание. «Сокращение» часто используется взаимозаменяемо для обозначения процесса уменьшения размера файла тонкого диска. VMware использует термин «сжатие» для обозначения уменьшения базового размера диска, доступного для гостя, и «утончения», поскольку процесс чаще всего использует повторный захват неиспользуемого пространства без изменения базового доступного размера.

Поскольку ESXi не поддерживает сжатие на основе vmtools для гостей Linux, необходимо выполнить следующие шаги. См. Ссылку ниже для получения дополнительной информации.

(если возможно) Остановите все приложения и службы с интенсивной записью на диск, поскольку следующие шаги на мгновение заполнят целевой том

Дефрагментируйте том (ы) на целевом VMDK и игнорируйте любые ошибки как символические ссылки / файлы устройств / и т.д. нельзя дефрагментировать.

Выключить и выключить гостя

SSH к хосту ESXi и выполните эти команды:

Источник

Удаление файлов в большинстве файловых систем не приведет к их полному удалению; будут изменены только файловые таблицы. Полезно использовать бесплатные утилиты безопасного удаления файлов, такие как Eraser или SDelete, чтобы обнулить пространство, чтобы «обнулить» свободное пространство на томе, эффективно освобождая свободное пространство для данных. Именно тогда диск можно правильно утончать. Затем вы можете использовать команду vmkfstools -K (ESXi / ESX 4.1 и более поздние версии) для завершения восстановления блока или использовать Storage vMotion для миграции виртуальной машины в хранилище данных с другим размером блока VMFS.

Источник

Уменьшение размера тонкого диска в ESXi

Когда я начал работать с ESXi, столкнулся с проблемой нехватки дискового пространства из-за сильно разросшихся тонких дисков. Вообще, лучше создавать диски меньшего размера, потому что увеличить диск в ESXi намного проще, чем уменьшить. Но что же делать, если все-таки возникла необходимость уменьшить диск? Причем, мое положение усугубляли LVM разделы на сервере, которые не распознавал Acronis, и, следовательно, не мог изменить размер раздела.
Опишу способ, которым воспользовался я:

1 этап) Уменьшение диска внутри виртуальной машины
Сперва нужно уменьшить диск внутри самой виртуальной машины, для этого существует множество универсальных программ: Acronis disc director, paragon partition manager, встроенная утилита управления дисками в windows и т.д. Мне ни одна из этих программ не помогла, поэтому пришлось использовать средства линукса и LiveCD.

1) Для начала нужно загрузиться с livecd linux, я использовал для этого centos 7. При загрузке виртуальной машины клавиша ESC для появления меню загрузки.

2) Активируем LVM разделы

3) Проверка активированных логических томов

4) Проверяем файловые системы

5) Уменьшаем размер файловой системы

6) Уменьшаем размер тома до размера файловой системы

Также мы можем добавить это место к другом тому
Для этого:

Увеличиваем том root:

Увеличиваем размер файловой системы на томе root до размера тома:

7) Опять проверяем целостность файловой системы

8) Далее можно запустить виртуальную машину и убедиться, что все корректно работает

2 этап) уменьшение provisioning space.

10) Выключаем виртуальную машину
11) Подключаемся по SSH к физическому серверу, на котором установлен ESXi
12) Переходим в каталог, в котором хранится vmdk файл ВМ (путь можно узнать в свойствах виртуального диска в графическом клиенте vSphere). У меня это

Каталог имеет подобную структуру:

-rw——- 1 root root 3424256 Feb 2 08:24 vmmcores-1.gz
-rw-r—r— 1 root root 240722 Dec 20 20:46 vmware-1.log
-rw-r—r— 1 root root 1252287 Feb 2 08:24 vmware-2.log
-rw-r—r— 1 root root 43555 Feb 2 08:24 vmware-3.log
-rw-r—r— 1 root root 151873 Feb 2 08:25 vmware.log
-rw——- 1 root root 122683392 Feb 2 08:24 vmx-VM_name-186599173-1.vswp
/vmfs/volumes/53114b32-24d88d5a-2cbe-0025b500004f/VM_name #

13) Просмотрим содержимое конфигурационного файла с расширением *.vmdk с помощью команды cat или vi:

# Disk DescriptorFile
version=1
encoding=«UTF-8»
CID=829544ab
parentCID=ffffffff
isNativeSnapshot=«no»
createType=«vmfs»

# Extent description
RW 44000000 VMFS «VM_name-flat.vmdk»

# The Disk Data Base
#DDB

ddb.adapterType = «lsilogic»
ddb.geometry.cylinders = «17884»
ddb.geometry.heads = «255»
ddb.geometry.sectors = «63»
ddb.longContentID = «c78bccbfd4724f0ee20a1ef2829544ab»
ddb.thinProvisioned = «0»
ddb.uuid = «60 00 C2 98 20 ac 05 4a-e5 39 e4 40 e8 a2 d8 d0»
ddb.virtualHWVersion = «8»

14) Размер vmdk диска задается в секции #Extent description (после символов RW). Меняем это значение, например, чтобы установить размер диска в 20Гб ставим 41943040 (20 Гб*1024*1024*1024 / 512)

Я ставлю значение немного больше, чем размер, вычисленный по методике выше (41943040 (20 Гб*1024*1024*1024 / 512)), на всякий случай.
15) Осталось склонировать или смигрировать виртуальную машину, после чего отобразится новый размер диска.

Физическое уменьшение тонкого диска без изменения provisioning
Также возможно только уменьшить размер файла виртуальной машины, путем удаления нулевых блоков.
Для этого:
1) Нужно заполнить все неиспользованное пространство, внутри виртуальной машины, нулями. Создаем файл по размерам неиспользуемой области диска, а потом удаляем его.

2) Подключаемся по SSH к консоли ESXi как описано выше и переходим в каталог с виртуальной машиной.
3) В консоли гипервизора есть специальная утилита, которая позволяет затереть нулевые блоки, тем самым уменьшив физический размер тонкого диска.
Делается это с помощью ключа -K (можно также использовать ключ —punchzero) в консоли сервера ESXi

Надо отметить, что утилита vmkfstools, запущенная с ключом -K, еще и может преобразовать обычный диск (zeroedthick или eagerzeroedthick) в thin disk с вычищением нулевых блоков и, соответственно, уменьшением размера vmdk.

Источник

Читайте также:  Ознакомительная версия windows server 2012 standard
Оцените статью