bolt Valebyte VPS від $4/міс — NVMe, запуск за 60 секунд.

Отримати VPS arrow_forward

Розширення дискового простору на VPS сервері

calendar_month March 25, 2025 schedule 9 хв. читання visibility 538 переглядів
person
Valebyte Team
Розширення дискового простору на VPS сервері
summarize

TL;DR

  • ['Розширення VPS вимагає спочатку збільшити диск в панелі хостингу, а потім розширити розділи всередині ОС.', 'Дефіцит місця призводить до зупинки баз даних, збоїв запису логів і неможливості установки оновлень.', 'Основні причини нестачі місця: відсутність ротації логів, розростання БД і накопичення тимчасових файлів.', 'Збільшення обсягу диска в панелі провайдера не змінює розмір файлової системи в ОС автоматично.']

Розширення дискового простору на VPS сервері

Брак дискового простору на VPS-сервері — проблема, з якою рано чи пізно стикається практично кожен адміністратор. Чи то розрослі логи, об'ємні бази даних, файли користувачів чи просто невірний початковий розрахунок, розширення диска стає необхідністю. Розширення дискового простору на VPS-сервері зазвичай складається з двох ключових етапів: спочатку ви збільшуєте розмір віртуального диска на рівні вашого хостинг-провайдера (через панель управління або API), а потім — проводите відповідні маніпуляції всередині операційної системи сервера, щоб вона "побачила" і могла використовувати новий простір, розширюючи розділи і файлові системи. Цей процес вимагає уважності і розуміння структури дисків, але цілком здійсненний для будь-якого досвідченого сисадміна.

Чому місце закінчується і чим це загрожує?

An illustration showing a full server disk icon next to a larger, empty disk icon with an arrow, symbolizing the expansion of VPS disk space. Перш ніж заглиблюватися в технічні деталі розширення, давайте коротко згадаємо, чому дисковий простір має властивість "зникати" і які наслідки це несе. Причини можуть бути різноманітні:
  • Неконтрольоване зростання логів: Журнали веб-серверів, баз даних, системних служб можуть займати гігабайти, якщо їх регулярно не ротувати або не очищати.
  • Розростання баз даних: Особливо актуально для проектів, що активно розвиваються, або систем з великим обсягом транзакцій.
  • Дані користувачів: Файли, завантажені на сайт, поштові скриньки, сховища — все це з часом накопичується.
  • Кеші і тимчасові файли: Деякі програми створюють величезні кеші, які не завжди очищаються автоматично.
  • Встановлення нового ПЗ: Додаткові сервіси і бібліотеки вимагають місця.
  • Невірне планування: Спочатку виділений обсяг диска виявився недостатнім для довгострокових потреб проекту.
Наслідки браку місця на диску можуть бути катастрофічними для роботи сервера:
  • Відмова служб: Бази даних не зможуть записувати нові дані, веб-сервери перестануть створювати кеші, поштові сервери відмовляться приймати листи.
  • Пошкодження даних: У критичних ситуаціях деякі служби можуть пошкодити свої дані через неможливість коректно завершити операції.
  • Падіння продуктивності: Система починає активно використовувати своп, що різко знижує чутливість.
  • Неможливість оновлень: Для установки патчів і оновлень потрібне вільне місце.
Саме тому важливо регулярно моніторити дисковий простір і своєчасно реагувати на його заповнення.

Підготовка — Запорука Успіху

Як і будь-яка операція з дисками, розширення вимагає ретельної підготовки. Не ігноруйте цей етап, щоб уникнути неприємних сюрпризів і втрати даних.

Резервне копіювання і знімки (Snapshots)

Це не просто рекомендація, це обов'язкова умова. Перед будь-якими змінами дискової підсистеми переконайтеся, що у вас є актуальна і працездатна резервна копія всіх важливих даних. В ідеалі, зробіть два типи бекапів:

  • Знімки (Snapshots) VPS: Більшість хостинг-провайдерів, включаючи Valebyte, надають функцію створення знімків сервера. Це миттєва копія всього стану вашого VPS в певний момент часу. У разі помилки ви зможете відкотитися до початкового стану за лічені хвилини. Переконайтеся, що ваш VPS хостинг підтримує таку функцію і вона активна.
  • Локальні бекапи даних: Зробіть резервні копії баз даних, конфігураційних файлів і важливих директорій (наприклад, /var/www, /etc, /home) засобами самої ОС (наприклад, mysqldump, pg_dump, tar). Збережіть ці бекапи на віддаленому сховищі.

Аналіз поточного стану дискової підсистеми

Перш ніж що-небудь міняти, потрібно зрозуміти поточну конфігурацію.

# Проверяем общее использование диска и точки монтирования
df -h

# Находим крупные директории (может занять время на больших дисках)
du -sh /* 2>/dev/null | sort -rh | head -n 10

# Определяем имя диска, разделы и их файловые системы
lsblk -f

# Просматриваем таблицу разделов (для MBR обычно /dev/sda, для GPT может быть /dev/vda, /dev/nvme0n1 и т.д.)
sudo fdisk -l /dev/sda
# Или для GPT разделов
sudo parted -l /dev/sda

# Проверяем, какие файловые системы примонтированы
mount | grep /dev/sd

Зверніть увагу на ім'я диска (наприклад, /dev/sda, /dev/vda, /dev/nvme0n1), номери розділів (/dev/sda1, /dev/sda2), їх файлові системи (ext4, xfs) і наявність LVM (Logical Volume Management).

Планування і вікно обслуговування

Визначте, скільки додаткового простору вам потрібно. Заплануйте операцію на період мінімального навантаження на сервер. Хоча багато кроків можна виконати "на льоту", деякі операції (особливо з перезавантаженням або зміною таблиці розділів) можуть вимагати короткого простою.

Потрібен більший обсяг диска для вашого VPS?

Ваш проект росте і вимагає більше простору? Виберіть ідеальний VPS-тариф, щоб масштабувати ваш сервер без проблем. — від 4.49 €/міс.

Вибрати VPS-тариф →
rocket_launch Швидкий вибір

Шукаєте сервер, який просто працює?

Valebyte VPS — NVMe, підтримка 24/7, розгортання за 60 секунд.

Переглянути тарифи VPS arrow_forward

Крок 1: Збільшення розміру диска на рівні провайдера

Це перший і найпростіший крок, який виконується не в командному рядку сервера, а в панелі управління вашого хостинг-провайдера. У кожного провайдера цей процес може трохи відрізнятися, але загальна логіка така:

  1. Авторизуйтесь в панелі управління вашого VPS-хостингу.
  2. Знайдіть розділ управління вашим сервером або дисками.
  3. Виберіть опцію "Змінити розмір диска", "Розширити диск" або аналогічну.
  4. Вкажіть новий, більший розмір диска.
  5. Підтвердіть зміни.

Зазвичай ця операція займає всього кілька хвилин. Залежно від провайдера і технології віртуалізації, для того щоб ОС "побачила" новий розмір диска, може знадобитися перезавантаження VPS. Якщо провайдер явно про це не повідомляє, спробуйте спочатку без перезавантаження, але будьте готові до нього.

# Если требуется перезагрузка
sudo reboot

Крок 2: Оновлення інформації про диск в ОС

Після того як ви збільшили розмір диска у провайдера, операційна система вашого VPS повинна "дізнатися" про це. Іноді це відбувається автоматично, але частіше потрібне невелике втручання.

# Проверяем, видит ли ОС новый размер диска
sudo fdisk -l /dev/sda
# Или
sudo lsblk

# Якщо розмір диска не оновився, спробуйте перечитати таблицю розділів
# Для більшості систем:
sudo partprobe
# Або, якщо partprobe не допомагає або недоступний:
# echo 1 > /sys/class/block/sda/device/rescan # Замініть sda на ім'я вашого диска

У виводі fdisk -l або lsblk ви повинні побачити, що загальний розмір диска (наприклад, /dev/sda) збільшився, але розмір існуючих розділів (наприклад, /dev/sda1) залишився таким самим. Це нормально, ми займемося ними на наступному кроці.

Крок 3: Розширення розділів і файлових систем

Тепер, коли ОС бачить додатковий простір, нам потрібно розширити існуючий розділ або створити новий, а потім розширити файлову систему, щоб вона могла використовувати цей простір. Цей крок сильно залежить від того, як налаштовано вашу дискову підсистему.

Сценарій 1: Простий розділ (без LVM)

Це найпоширеніший сценарій для невеликих VPS, де кореневий розділ (/) або інший розділ займає весь диск без використання LVM. Припустимо, ваш основний розділ — /dev/sda1.

Варіант А: Видалення та перестворення розділу (з обережністю!)

Цей метод підходить для MBR-дисків і вимагає крайньої уважності. Ми видаляємо старий розділ і створюємо новий, використовуючи весь доступний простір, але з тими ж початковими параметрами, щоб не втратити дані.

УВАГА: Це потенційно небезпечна операція. Найменша помилка у вказівці початкового сектора призведе до втрати даних. Переконайтеся, що у вас є свіжий знімок і бекапи!

# Запускаємо fdisk для вашого диска (наприклад, /dev/sda)
sudo fdisk /dev/sda

# Всередині fdisk:
# 1. Натисніть 'p' для виводу таблиці розділів і запам'ятайте початковий сектор розділу, який потрібно розширити (наприклад, /dev/sda1).
#    Зазвичай це '2048'.
# 2. Натисніть 'd', потім номер розділу (наприклад, '1'), щоб видалити його.
# 3. Натисніть 'n', потім 'p' (для основного розділу) або 'e' (для розширеного), потім номер розділу (наприклад, '1').
# 4. Введіть початковий сектор, який ви запам'ятали на кроці 1 (дуже важливо!).
# 5. При запиті кінцевого сектора просто натисніть Enter, щоб використовувати весь доступний простір.
# 6. Натисніть 'p' ще раз, щоб переконатися, що новий розділ виглядає правильно.
# 7. Натисніть 'w' для запису змін на диск і виходу.

Після запису змін може знадобитися перезавантаження, щоб ядро оновило інформацію про розділи:

sudo reboot

Варіант Б: Використання growpart (рекомендується, якщо доступно)

Утиліта growpart (частина пакета cloud-guest-utils або cloud-utils-growpart) набагато безпечніша і простіша, оскільки вона автоматично розширює розділ до кінця диска.

# Встановіть, якщо відсутня (для Debian/Ubuntu)
# sudo apt update && sudo apt install cloud-guest-utils
# Для CentOS/RHEL
# sudo yum install cloud-utils-growpart

# Розширюємо розділ /dev/sda1
sudo growpart /dev/sda 1

growpart автоматично визначить новий доступний простір і розширить вказаний розділ. Перезавантаження після цього зазвичай не потрібне.

Розширення файлової системи

Після розширення розділу необхідно повідомити файловій системі, що у неї тепер є більше місця.

  • Для файлових систем ext2/ext3/ext4:
  • sudo resize2fs /dev/sda1

    Ця команда розширить файлову систему на розділі /dev/sda1 до максимально доступного розміру. Її можна виконувати на примонтованій файловій системі (крім кореневої, якщо не впевнені, але для кореневої теж часто працює).

  • Для файлової системи XFS:
  • sudo xfs_growfs /mount/point

    Важливо: xfs_growfs працює з точкою монтування, а не з іменем пристрою. Наприклад, якщо /dev/sda1 примонтовано як /, то команда буде sudo xfs_growfs /. Якщо примонтовано як /mnt/data, то sudo xfs_growfs /mnt/data.

Сценарій 2: Використання LVM (Logical Volume Manager)

LVM надає набагато більше гнучкості в управлінні дисковим простором і є кращим вибором для багатьох сисадмінів. Якщо ваш сервер використовує LVM, процес розширення буде виглядати так:

1. Розширення Physical Volume (PV)

Припустимо, ваш LVM знаходиться на розділі /dev/sda2.

# Якщо ви розширили розділ /dev/sda2, на якому знаходиться PV
sudo pvresize /dev/sda2

Ця команда повідомить LVM, що Physical Volume /dev/sda2 тепер має більший розмір.

2. Перевірка Volume Group (VG)

Після розширення PV, Volume Group (VG) автоматично "побачить" новий вільний простір.

# Перевіряємо вільний простір в VG
sudo vgdisplay

У виводі ви побачите поле Free PE / Size, яке повинно показувати доступний новий простір.

3. Розширення Logical Volume (LV)

Тепер потрібно розширити потрібний Logical Volume (наприклад, lv_root в vg_system).

  • Розширити на весь доступний вільний простір:
  • sudo lvextend -l +100%FREE /dev/mapper/vg_system-lv_root

    (Замініть vg_system-lv_root на ім'я вашої групи томів і логічного тома)

  • Розширити на певний об'єм (наприклад, на 10 ГБ):
  • sudo lvextend -L +10G /dev/mapper/vg_system-lv_root

4. Розширення файлової системи (для LV)

Як і у випадку з простим розділом, після розширення LV необхідно розширити файлову систему.

  • Для файлових систем ext2/ext3/ext4:
  • sudo resize2fs /dev/mapper/vg_system-lv_root
  • Для файлової системи XFS:
  • sudo xfs_growfs /mount/point

    Наприклад, якщо ваш LV vg_system-lv_root примонтовано як /, то sudo xfs_growfs /.

Сценарій 3: Розширення XFS файлової системи

Як вже згадувалося, для XFS використовується утиліта xfs_growfs, яка працює з точкою монтування. Це важливо пам'ятати, так як для ext-файлових систем ми вказуємо ім'я пристрою.

# Розширити кореневу XFS файлову систему
sudo xfs_growfs /

# Розширити XFS файлову систему, примонтовану в /mnt/data
sudo xfs_growfs /mnt/data

xfs_growfs можна запускати на примонтованій і активній файловій системі.

rocket_launch Швидкий вибір

Шукаєте сервер, який просто працює?

Valebyte VPS — NVMe, підтримка 24/7, розгортання за 60 секунд.

Переглянути тарифи VPS arrow_forward

Перевірка та підтвердження

Після виконання всіх кроків обов'язково переконайтеся, що дисковий простір дійсно розширився і доступний операційній системі.

# Перевіряємо вільне місце
df -h

# Перевіряємо розміри розділів і файлових систем
lsblk -f

Вивід df -h повинен показати збільшений розмір розділу, який ви розширювали. Якщо все зроблено правильно, ви побачите, що дисковий простір збільшився, і тепер ваша система може ним користуватися.

Можливі проблеми та поради

  • "Partition 1 starts at X but ends at Y, disk size Z": Це означає, що ядро все ще використовує стару таблицю розділів. Спробуйте sudo partprobe або перезавантажте сервер.
  • "Bad magic number in super-block while trying to open /dev/sda1": Скоріш за все, ви вказали неправильне ім'я пристрою або намагаєтесь розширити файлову систему, яка не відповідає типу (наприклад, resize2fs для XFS).
  • Неправильне ім'я пристрою: Завжди двічі перевіряйте імена дисків та розділів (/dev/sda, /dev/sda1, /dev/mapper/vg-lv). Помилка тут може призвести до непрацездатності системи або втрати даних.
  • Відсутність утиліти: Якщо команда не знайдена (наприклад, growpart, pvresize), встановіть відповідний пакет (cloud-guest-utils/cloud-utils-growpart для growpart, lvm2 для LVM утиліт).
  • Завжди читайте man-сторінки: Якщо ви не впевнені в команді, використовуйте man [команда] (наприклад, man fdisk, man lvextend) для отримання детальної інформації.

Висновки

Розширення дискового простору на VPS-сервері — рутинне, але відповідальне завдання для системного адміністратора. Ключ до успіху тут — це ретельна підготовка, розуміння структури дискової підсистеми та послідовне виконання кроків.

Завжди починайте з бекапів та знімків. Переконайтеся, що ви розумієте, чи працюєте ви з простими розділами, чи з LVM, оскільки це кардинально змінює підхід. Використання LVM з самого початку значно спрощує управління дисковим простором у майбутньому, надаючи гнучкість у зміні розмірів логічних томів без необхідності перерозмітки фізичних розділів.

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

Потрібна максимальна продуктивність та обсяг?

Для найвимогливіших проєктів, де важлива кожна мілісекунда та кожен гігабайт. Відкрийте для себе міць виділених серверів.

Знайти сервер →
support_agent
Valebyte Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.