 Виртуализация позволяет гибко настраивать использование ресурсов хост системы.
Виртуализация позволяет гибко настраивать использование ресурсов хост системы.
Большинство изменений, как то объём оперативной памяти или количество ядер процессора, применяются автоматически и от администратора не требуется никакой реакции.
Иначе ситуация состоит с размерами хранилища. Несмотря на то, что на гипервизоре увеличить размер выделяемого хранилища легко, гостевая система самостоятельно не сможет его использовать. Ситуация аналогична тому, как если в обычный стационарный компьютер добавить ещё один HDD/SSD — без разметки и форматирования его использовать не получится.
Сегодня я покажу как расширить файловую систему на гостевой системе, которой «докинули» жесткого диска.
С чем будем работать
# freebsd-version 11.0-RELEASE-p1
Первоначальное состояние
# gpart show da0
=>       63  419430337  da0  MBR  (200G)
         63          1       - free -  (512B)
         64  419430335    1  freebsd  [active]  (200G)
  419430399          1       - free -  (512B)
Увеличиваем размер HDD на виртуалке и ребутимся
# gpart show da0
=>        63  1048575937  da0  MBR  (500G)
          63           1       - free -  (512B)
          64   419430335    1  freebsd  [active]  (200G)
   419430399   629145601       - free -  (300G)
Видим что свободное место увеличилось. Первый шаг успешный.
Так как делаем всё на примонтированной системе, то выполним команду подавлния обильного вывода
# sysctl kern.geom.debugflags=16 kern.geom.debugflags: 0 -> 16
После перезагрузки это значение вернётся к значению по умолчанию
На момент работ по расширению раздела рекомендую отключить своп.
Проверим
# swapinfo Device 1K-blocks Used Avail Capacity /dev/da0s1b 4194268 0 4194268 0%
Отключаем и снова проверяем
# swapoff /dev/da0s1b # swapinfo Device 1K-blocks Used Avail Capacity
Увеличиваем размер нашего раздела. Он имеет номер 1
# gpart resize -i 1 -a 4k -s 499G da0 da0s1 resized
Проверяем
# gpart show da0
=>        63  1048575937  da0  MBR  (500G)
          63           1       - free -  (512B)
          64  1046478848    1  freebsd  [active]  (499G)
  1046478912     2097088       - free -  (1.0G)
После этого я перегрузился в Single User Mode и выполнил там
# growfs -y /dev/da0s1
После включения на рабочей системе получаем
# df -Ph Filesystem Size Used Avail Capacity Mounted on /dev/da0s1a 484G 165G 280G 37% / devfs 1.0K 1.0K 0B 100% /dev fdescfs 1.0K 1.0K 0B 100% /dev/fd