Skip to content
VDS · Резервні копії та диск

Диск закінчується: як його збільшити

Що робити, коли місця на диску не вистачає: очищення, винесення даних назовні або перехід на вищий тариф — і чому не можна зменшити диск назад.

Оновлено 23 серпня 2026 р.

Обсяг дискового простору на VDS прив'язаний до тіру: 40 ГБ на VDS-1 і до 250 ГБ на VDS-6. Купити додатковий простір окремо не можна — обсяг змінюється разом із тарифом. Перш ніж платити більше, перевірте, чи справді простір зайнятий даними.

Крок перший: переконайтеся, що простір справді використовується

df -h /
sudo du -x -h -d1 / | sort -h | tail -10
docker system df
journalctl --disk-usage

Дуже часто логи, кеш збірки та старі образи займають половину диска. Детальний розбір дивіться в дисковий простір. Звільнивши 30-40 % за допомогою очищення, ви відкладете апгрейд на кілька місяців.

Крок другий: винесіть те, що не мусить жити тут

  • Бекапи — їм місце на іншому майданчику, а не на тому самому диску.
  • Файли, завантажені користувачами — до об'єктного сховища S3; застосунок роздаватиме посилання.
  • Архіви та медіа — до окремого дешевого сховища з доступом через SFTP.
  • Реєстр образів — найбільш ресурсомісткий сервіс, дивіться власний реєстр.

Крок третій: перейдіть на вищий тір

Тариф ви змінюєте в панелі керування машиною, і працює це лише в бік підвищення. Доплату рахують за дні, що залишилися до кінця оплаченого періоду — гроші, які ви вже внесли, не втрачаються.

З тіруНа тірДиск стає
VDS-1VDS-280 ГБ
VDS-2VDS-3120 ГБ
VDS-3VDS-4160 ГБ
VDS-4VDS-5200 ГБ
VDS-5VDS-6250 ГБ

Разом із диском зростають ядра, пам'ять і обмеження швидкості запису — дивіться швидкість диска.

Зниження тіру недоступне: диск не зменшується. Можна стиснути файлову систему, але не віртуальний диск під нею без ризику втратити дані. Тож обирайте тір із запасом на рік, а не «про всяк випадок, на два роки вперед».

Після апгрейду

Зазвичай розділ і файлова система розширюються автоматично під час завантаження. Перевірте:

lsblk
df -h /

Якщо lsblk показує більший диск, а df — старий розмір, розширте вручну:

sudo growpart /dev/sda 1
sudo resize2fs /dev/sda1        # ext4
sudo xfs_growfs /               # xfs

Для розмітки з LVM порядок інший:

sudo pvresize /dev/sda3
sudo lvextend -l +100%FREE /dev/mapper/vg-root
sudo resize2fs /dev/mapper/vg-root

Докладніше дивіться в розділи та файлові системи. Розширення файлової системи виконують на змонтованому розділі, і воно не зачіпає дані, але бекап перед цим усе одно обов'язковий.

Що робити, якщо місце закінчилося прямо зараз

Коли диск заповнений ущерть, частина команд перестає працювати: система не може навіть записати тимчасовий файл. Порядок дій:

journalctl --vacuum-size=100M
apt clean
docker builder prune -f
sudo truncate -s 0 /var/lib/docker/containers/*/*-json.log

Це звільнить гігабайт-два й поверне контроль. Далі виконуйте кроки вище.

Типові помилки

  • Ви видалили файли, але простір не повернувся. Процес тримає видалений файл відкритим: sudo lsof +L1 і перезапустіть сервіс.
  • Ви підвищили тір, не розібравшись у причині. Витік логів займе і 250 ГБ, просто пізніше.
  • Ви розширили розділ без бекапу. Помилка в номері розділу в growpart коштує вам усіх даних. Спершу зробіть бекап.
  • Ви забули про inode. df -i: місце є, але файли не створюються. Допомагає видалення купи дрібних файлів, а не збільшення диска.