Часто бывает так, что при использовании vagrant + virtual box не хватает стандартного размера диска. Например, нужно загрузить большой дамп в базу данных Гб так 100, а виртуалка ограничена например всего 20Гб.
Далее пойдет речь о конкретной конфигурации Vagrantfile с версией линукс ubuntu/xenial.
Vagrantfile:
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/xenial64"
Чтобы посмотреть, сколько же там доступного и использованного пространства, есть удобная команда:
df -h
Она выведет таблицу использования дискового пространства по разделам, например, такую:
Filesystem Size Used Avail Use% Mounted on udev 488M 0 488M 0% /dev tmpfs 100M 3.1M 97M 4% /run /dev/sda1 9.7G 1.2G 8.6G 12% / tmpfs 496M 0 496M 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 496M 0 496M 0% /sys/fs/cgroup vagrant 238G 166G 72G 70% /vagrant tmpfs 100M 0 100M 0% /run/user/1000
Увеличить размер диска можно средствами vagrant - для этого нужно установить плагин:
vagrant plugin install vagrant-disksize
и дописать в Vagrantfile:
config.disksize.size = '100GB'
Теперь нужно выключить и снова запустить виртуальную машину, например:
vagrant halt vagrant up
Если теперь попробовать проверить размер диска и их использование, ничего не изменится, потому что добавленное пространство нужно еще распределить. Сделать это можно при помощи утилиты fdisk:
sudo fdisk /dev/sda
Для удаления существующего раздела нужно ввести команду:
d
Затем, для создания нового раздела, нужно ввести последовательно команды:
n
p
1
Дальше выбрать точки начала и окончания монтированная по умолчанию ENTER ENTER.
А затем можно сохранять изменения командой:
w
Теперь нужно опять выключить и включить машину.
После требуется «растянуть» файловую систему на все доступное пространство:
sudo resize2fs /dev/sda1
Теперь можно опять посмотреть использование дискового пространства:
df -h
Filesystem Size Used Avail Use% Mounted on udev 487M 0 487M 0% /dev tmpfs 100M 3.1M 97M 4% /run /dev/sda1 49G 1.2G 48G 3% / tmpfs 496M 0 496M 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 496M 0 496M 0% /sys/fs/cgroup vagrant 238G 165G 74G 70% /vagrant tmpfs 100M 0 100M 0% /run/user/1000
Профит!