← Назад к вопросам

Как примонтировать диск в Linux

1.0 Junior🔥 241 комментариев
#Linux и администрирование

Комментарии (1)

🐱
deepseek-v3.2PrepBro AI5 апр. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Монтирование дисков в Linux: полное руководство

Монтирование дисков в Linux — фундаментальная операция, которую я выполнял тысячи раз за свою карьеру DevOps. В отличие от Windows, где диски автоматически получают буквы, в Linux требуется явное монтирование — процесс связывания файловой системы устройства с определенной точкой в дереве каталогов.

Основные этапы монтирования

1. Идентификация диска

Сначала нужно определить, какие диски доступны в системе:

# Просмотр всех блочных устройств
lsblk

# Более детальная информация
sudo fdisk -l

# Информация о UUID (универсальный уникальный идентификатор)
sudo blkid

lsblk — мой основной инструмент, так как он показывает древовидную структуру дисков, разделов и их точек монтирования.

2. Создание точки монтирования

Точка монтирования — это обычный каталог, куда будет "привязана" файловая система:

# Создание каталога для монтирования
sudo mkdir /mnt/mydisk

# Или в домашнем каталоге (для съемных носителей)
mkdir ~/external_drive

3. Монтирование диска

Основная команда для монтирования:

# Базовое монтирование
sudo mount /dev/sdb1 /mnt/mydisk

# Монтирование с указанием типа файловой системы
sudo mount -t ext4 /dev/sdb1 /mnt/mydisk

# Монтирование с опциями (read-only в данном случае)
sudo mount -o ro /dev/sdb1 /mnt/mydisk

Автоматическое монтирование через /etc/fstab

Для автоматического монтирования при загрузке системы используется файл /etc/fstab:

# Пример записи в /etc/fstab
UUID=123e4567-e89b-12d3-a456-426614174000 /mnt/data ext4 defaults 0 2

Формат записи:

  • UUID устройства или путь (/dev/sdb1)
  • Точка монтирования
  • Тип файловой системы (ext4, xfs, ntfs, vfat)
  • Опции монтирования (defaults, nofail, noexec)
  • Поле dump (обычно 0)
  • Порядок проверки fsck (0 - не проверять, 1 для root, 2 для остальных)

Критические опции монтирования

В DevOps-среде особенно важны:

  • nofail — система загрузится даже если диск недоступен
  • noexec — запрет выполнения бинарных файлов с диска (безопасность)
  • nosuid — игнорирование битов SUID/SGID
  • defaults — стандартные опции: rw, suid, dev, exec, auto, nouser, async

Работа со съемными носителями

Современные дистрибутивы часто автоматически монтируют USB-диски в /media/ или /run/media/, но для тонкого контроля:

# Монтирование FAT32/NTFS (Windows диски)
sudo mount -t vfat /dev/sdc1 /mnt/usb -o uid=1000,gid=1000,umask=022

Управление LVM-дисками

В enterprise-среде часто используется LVM (Logical Volume Manager):

# Активация группы томов
sudo vgchange -ay vg_name

# Монтирование логического тома
sudo mount /dev/vg_name/lv_name /mnt/data

Размонтирование и устранение проблем

Важно: Перед физическим отключением всегда размонтируйте диск:

# Базовое размонтирование
sudo umount /mnt/mydisk

# Если устройство занято (lsof поможет найти процесс)
sudo lsof +f -- /mnt/mydisk
sudo umount -l /mnt/mydisk  # ленивое размонтирование

Советы из практики DevOps

  1. Всегда используйте UUID в /etc/fstab, так как имена вроде /dev/sdb1 могут меняться при перезагрузке
  2. Для NFS/CIFS сетевых дисков добавляйте опцию _netdev в fstab
  3. Мониторинг свободного места — настройте алерты при заполнении дисков более чем на 80-90%
  4. Используйте /etc/mtab или mount без параметров для просмотра текущих точек монтирования
  5. Для docker-контейнеров используйте volumes или bind-mounts вместо прямого монтирования в host-систему

Пример скрипта для автоматизации

#!/bin/bash
# Скрипт безопасного монтирования бэкап-диска

DISK_UUID="123e4567-e89b-12d3-a456-426614174000"
MOUNT_POINT="/backup"

# Проверка существования точки монтирования
if [ ! -d "$MOUNT_POINT" ]; then
    mkdir -p "$MOUNT_POINT"
    chmod 750 "$MOUNT_POINT"
fi

# Проверка, не смонтирован ли уже диск
if mountpoint -q "$MOUNT_POINT"; then
    echo "Диск уже смонтирован в $MOUNT_POINT"
    exit 0
fi

# Монтирование с обработкой ошибок
if mount UUID="$DISK_UUID" "$MOUNT_POINT"; then
    echo "Диск успешно смонтирован"
    # Проверка свободного места
    df -h "$MOUNT_POINT"
else
    echo "Ошибка монтирования!" >&2
    exit 1
fi

Правильное монтирование дисков — критически важный навык для DevOps, особенно при работе с облачными инстансами, где добавление дисков происходит регулярно. Всегда тестируйте записи в fstab с опцией nofail сначала, и помните, что mount -a применяет все изменения из fstab без перезагрузки.

Как примонтировать диск в Linux | PrepBro