Управление дисками и хранилищами
Тема дорожной карты · Linux & Unix Fundamentals
Хранилище в Linux устроено слоями: блочные устройства (/dev/sda, /dev/nvme0n1) → разделы или физические тома LVM → опционально mdadm RAID или логические тома LVM → файловая система (ext4, xfs, btrfs, zfs) → точка монтирования. Повседневные инструменты: lsblk, blkid, parted/fdisk, mkfs.*, mount/umount, fstrim, а для SMART-диагностики — smartctl. На серверах планируйте рост (LVM позволяет расширять тома онлайн), включайте discard/fstrim.timer на SSD и используйте UUID в /etc/fstab вместо имён устройств, которые могут меняться между перезагрузками.
Как это работает
Управление дисками и хранилищами имеет слои: физические диски → разделы (fdisk, parted, gdisk) → опционально LVM (PV/VG/LV) или RAID (mdadm) → файловые системы (mkfs.ext4, mkfs.xfs) → монтирования (в /etc/fstab для persistence). df -h — свободное место; du -sh * — что его жрёт; lsblk — дерево блочных устройств; blkid — UUID. SSD выигрывают от discard или еженедельного fstrim. iostat и iotop — поиск I/O-боттлнеков.
Когда применять
LVM — на серверах, где может понадобиться рост ёмкости или снапшоты; пропустите на ноутах или single-purpose VM. RAID — для избыточности на bare metal; в облаке блок-стор сам справляется (gp3 на AWS, network-ssd на Yandex Cloud). Всегда /etc/fstab с UUID (не /dev/sda1 — имена девайсов меняются после reboot в некоторых конфигах). Алёрты на disk-full — до того, как кусает.
Типичные ошибки
Ловушки Управление дисками и хранилищами: опечатка dd if=/dev/zero of=/dev/sda (мгновенная потеря данных — осторожно с /dev/-путями); resize смонтированной FS в неверном порядке (сначала раздел, потом FS — или LVM, где порядок менее ломкий); игнор исчерпания inode до ENOSPC, несмотря на свободные GB в df; непонимание, что rm файла, открытого процессом, не освобождает место (lsof | grep deleted).