Топ-10 утилит для работы с диском на VDS: от мониторинга до реанимации

Itnull

Admin
Регистрация
22.05.13
Сообщения
28.596
Реакции
13.198
Веб-сайт
itnull.me
Рано или поздно каждый администратор VDS сталкивается с дисковыми проблемами: внезапно кончилось место (привет, разросшиеся логи!), «упал» IOPS, или нужно срочно переразтить разделы без потери данных. Работа в консоли виртуального сервера накладывает свои ограничения, поэтому под рукой всегда нужно иметь правильный софт.

В этой подборке мы собрали 10 незаменимых утилит для работы с дисковой подсистемой в Linux, которые спасут ваш сервер и сберегут нервы.

Блок 1: Анализ свободного места и поиск «пожирателей» диска​

1. ncdu (NCurses Disk Usage)​

Классическая консольная утилита df -h показывает общую картину, но не говорит, какая именно папка сожрала всё пространство. Здесь на сцену выходит ncdu. Она сканирует выбранную директорию и выводит удобный псевдографический интерфейс, где папки отсортированы по размеру.

  • Для чего: Быстрый поиск и удаление «тяжелого» мусора прямо из интерфейса утилиты.
  • Фишка: Работает неприхотливо и очень быстро даже по SSH.

2. duf (Disk Usage/Free Utility)​

Современная, стильная и гораздо более информативная альтернатива стандартной df. Написана на Go.

  • Для чего: Оценка общего состояния дисков, точек монтирования и типов файловых систем.
  • Фишка: Выводит данные в виде красивых цветных таблиц со шкалами заполненности (progress bars) и автоматически скрывает служебные виртуальные файловые системы, не перегружая экран.

3. dust​

Еще один современный преемник старой доброй команды du, написанный на Rust.

  • Для чего: Визуализация структуры папок.
  • Фишка: Выводит дерево каталогов, где размер каждой папки показан в процентах и снабжен графическим блоком. Идеально, чтобы за один взгляд понять архитектуру занятого пространства.

Блок 2: Мониторинг нагрузки и диагностика (IOPS/Пропускная способность)​

4. iotop​

Если ваш VDS начал жутко тормозить, а процессор при этом свободен, скорее всего, сервер уперся в лимиты дискового ввода-вывода (I/O). iotop — это аналог команды top, но для диска.

  • Для чего: Поиск конкретного процесса (например, «зависшего» скрипта или тяжелой базы данных), который насилует диск в данный момент.
  • Фишка: Показывает скорость чтения/записи и процент времени (IO%), затраченный процессом на ожидание диска.

5. iostat (из пакета sysstat)​

Инструмент для более глубокого и системного анализа производительности.

  • Для чего: Позволяет оценить среднюю нагрузку на дисковые устройства с момента загрузки системы или за определенный интервал времени.
  • Фишка: Показывает критически важные метрики, такие как %util (процент времени, когда диск был занят работой) и await (среднее время ожидания выполнения запроса на чтение/запись). Если await исчисляется сотнями миллисекунд — у вашего хостера проблемы с хранилищем.

6. fio (Flexible I/O Tester)​

Эталонный инструмент для бенчмаркинга. Если вы только что купили VDS и хотите проверить, соответствуют ли заявленные хостером IOPS реальности, используйте fio.

  • Для чего: Тестирование реальной скорости диска при симуляции различных типов нагрузок (последовательное чтение, случайная запись, глубина очереди и т.д.).
  • Фишка: Общепризнанный стандарт в индустрии. Результатам тестирования fio сложно что-то противопоставить в споре с техподдержкой хостинга.

Блок 3: Управление разделами и файловыми системами​

7. fdisk / cfdisk​

Базовые инструменты для создания, удаления и изменения таблиц разделов.

  • Для чего: Разметка нового диска или расширение текущего (например, когда вы доплатили хостеру за дополнительные гигабайты).
  • Фишка: Если fdisk требует ввода буквенных команд и может показаться сложным новичкам, то cfdisk предоставляет интуитивный интерактивный интерфейс прямо в консоли.

8. resize2fs (и сопутствующие xfs_growfs)​

Утилиты низкого уровня для изменения размера самих файловых систем.

  • Для чего: Когда вы увеличили размер диска в панели хостера и расширили раздел в cfdisk, файловая система всё еще «думает», что она старого размера. resize2fs (для ext4) или xfs_growfs (для XFS) расширяют ФС на всё доступное пространство.
  • Фишка: Современные Linux-системы позволяют делать это «на лету» (онлайн), без перезагрузки VDS и остановки сервисов.

9. lvextend / lvcreate (LVM — Logical Volume Manager)​

Если ваш хостер разворачивает шаблоны ОС с использованием LVM, эти команды станут вашими лучшими друзьями.

  • Для чего: Управление логическими томами. Позволяет гибко «нарезать» дисковое пространство, объединять несколько виртуальных дисков в один или мгновенно выделять место под новые нужды.
  • Фишка: Абстракция от физических дисков. С LVM администрирование становится по-настоящему гибким.

Блок 4: Проверка здоровья и реанимация​

10. smartctl (из пакета smartmontools)​

Важно для VDS: Стоит оговориться, что на виртуальных серверах (KVM/Hyper-V) прямой доступ к SMART-данным физического диска чаще всего закрыт гипервизором. Однако, если хостер использует "проброс" диска или вы администрируете выделенный сервер (Dedicated), эта утилита незаменима.
  • Для чего: Мониторинг аппаратного здоровья накопителя (SSD/HDD), просмотр счетчиков ошибок и запуск тестов самодиагностики.
  • Фишка: Позволяет вовремя заметить, что диск «умирает», и успеть перенести бэкапы до фатального сбоя.

Бонус-совет: Что делать, если диск забит на 100% и команды не работают?​

Типичная ситуация: диск заполнился так, что утилиты автоматизации падают с ошибками, сессия SSH не может создать временный файл, а apt install ncdu выбивает ошибку.

В этом случае используйте встроенную магию Linux для быстрого поиска виновника:

Bash:
du -h --max-depth=1 / | sort -hr

А если вам нужно мгновенно освободить место, никогда не удаляйте открытые логи командой rm (место не освободится, пока процесс держит файл). Вместо этого очищайте их обнулением:
Bash:
> /var/log/nginx/access.log

А каков ваш дежурный набор утилит при работе с дисками на виртуальных машинах? Пользуетесь ли вы современным софтом на Rust/Go или доверяете только олдскульным утилитам? Рассказывайте в комментариях!
 

Создайте аккаунт или войдите в систему, чтобы комментировать

Вы должны быть зарегистрированным, чтобы оставить комментарий

Создать аккаунт

Создайте аккаунт в нашем сообществе.

Войти

У вас уже есть аккаунт? Войдите здесь.

Похожие темы

Назад
Сверху Снизу