Я запускаю докер-контейнеры на своем компьютере, и все это помещается в / var /. DF показывает, что / var / занимает 6,9 ГБ и нет свободного места. Система Linux работает под VMWare, и я выделил серверу дополнительные 100 ГБ в консоли VMWare. Как увеличить "/ var" в linux vm без перезапуска сервера?
root@TB-IOT02:/var# df -a | grep sda
/dev/sda1 19276020 4530700 13743080 25% /
/dev/sda5 6722700 6706316 0 100% /var
/dev/sda7 1182728 3748 1100852 1% /tmp
/dev/sda8 74238884 65640 70359052 1% /home
root@TB-IOT02:~# fdisk --list
Disk /dev/sda: 100 GiB, 107374182400 bytes, 209715200 sectors
Disk model: Virtual disk
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x0b21c5c6
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 39436287 39434240 18.8G 83 Linux
/dev/sda2 39438334 209713151 170274818 81.2G 5 Extended
/dev/sda5 39438336 53231615 13793280 6.6G 83 Linux
/dev/sda6 53233664 55326719 2093056 1022M 82 Linux swap / Solaris
/dev/sda7 55328768 57798655 2469888 1.2G 83 Linux
/dev/sda8 57800704 209713151 151912448 72.4G 83 Linux
Спасибо
Поскольку на сервере используется традиционная схема разбиения на разделы, расширение невозможно. /var
раздел без перезапуска сервера.
На вашем месте я бы создал новую файловую систему и смонтировал ее в каталог, в котором Docker хранит свои файлы.
В зависимости от того, как вы добавили пространство, есть два варианта:
Если вы увеличили размер существующего виртуального диска 1.1. Использовать fdisk
создавать /dev/sda9
раздел 1.2. Использовать mke2fs /dev/sda9
создать файловую систему
Если вы добавили новый виртуальный диск в ВМ 2.1. Использовать fdisk
создать раздел на новом устройстве 2.2. Использовать mke2fs
создать файловую систему
Затем выполните следующие действия:
Бегать mount /dev/sda9 /mnt
смонтировать новую файловую систему
Остановить докер
Бегать mv /var/lib/docker/* /mnt
Бегать umount /mnt
Добавить следующую строку в /etc/fstab
/ dev / sda9 / var / lib / docker ext4 relatime 0 1
Смонтируйте новую файловую систему, выполнив mount /var/lib/docker
Запустить Docker
Заменить /dev/sda9
с именем раздела добавленного виртуального диска в приведенных выше инструкциях.
После этого файлы Docker находятся в новой файловой системе на добавленном пространстве.
Ответ Теро правильный. Тем не менее, если вы собираетесь выключить виртуальную машину, вы можете добавить динамический расширяемый диск, чтобы вам не нужно было снова выключать его по той же причине в будущем.
Вы можете расширить диски виртуальных машин Linux на ESXi (или других гипервизорах) вживую. Но только если:
или (более экзотично, но со временем проще, и это работает)
fdisk
, форматируйте диски напрямую. Например mkfs.ext4 /dev/sdb
не mkfs.ext4 /dev/sdb1
это обычное дело. Вполне возможно.Поэтому добавьте новый диск, используя любой из вышеуказанных способов, назначьте его чему-нибудь вроде /vartemp
, скопируйте все файлы из /var
к /vartemp
, затем удалите /var
изменение /vartemp
к /var
и вы уходите. Живое расширение диска /var
теперь возможно.