Как настроить автоматическое монтирование дисков в системах Linux
Правила монтирования разделов в Linux определяются файлом fstab. Рассмотрим примеры его использования.
Описание файла fstab
Монтирование по имени
Монтирование по UUID
Сетевой диск
Дополнительные материалы
Синтаксис файла fstab
При загрузке Linux на определенном этапе выполняется чтение файла /etc/fstab, в котором описаны правила монтирования разделов. Рассмотрим синтаксис его заполнения.
Каждый раздел, который должен быть смонтирован записывается с новой строки. Формат такой:
<device> <dir> <type> <options> <dump> <fsck>
Где:
- device — накопитель, который мы монтируем. Это может быть путь до устройства или его идентификатор.
- dir — каталог, в который выполняем монтирование device.
- type — файловая система.
- options — опции монтирования, например, владелец каталога или параметры аутентификации. Рекомендую ознакомится с полным их перечнем на Википеции.
- dump — указываем, нужно ли создать резервную копию с помощью утилиты dump.
- fsck — нужно ли проверять файловую систему при помощи fsck. Стоит очень аккуратно относится к данному параметру, так как не со всеми файловыми системами утилита fsck корректно работает. Если нет уверенности, ставим 0. Доступны значения:
- 0 — не выполнять проверку.
- 1 — проверять с высоким приоритетом. Рекомендовано только для корневого раздела.
- 2 — проверять с низким приоритетом.
Пример файла fstab:
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/pve/root / ext4 errors=remount-ro 0 1
/dev/pve/swap none swap sw 0 0
* в данном примере будут смонтированы 2 раздела:
- /dev/pve/root — в корневой раздел с файловой системой ext4.
- /dev/pve/swap — файл подкачки.
Монтирование по имени диска
Открываем на редактирование следующий файл:
vi /etc/fstab
и добавляем в него следующую строчку:
/dev/sda1 /db xfs defaults 0 0
Где:
- /dev/sda1 — диск, который мы монтируем
- /db — каталог, в который монтируем диск
- xfs — файловая система
- defaults — стандартные опции. Полный их перечень можно посмотреть на Википеции.
- 0 0 — первый отключает создание резервных копий при помощи утилиты dump, второй отключает проверку диска.
Теперь создаем каталог, в который монтируем диск (в данном примере, /db):
mkdir /db
И монтируем вручную диск, чтобы проверить правильность настроек fstab:
mount /db
Должен появиться новый диск. Это можно проверить следующей командой
mount
Монтирование по идентификатору
Данный способ не сильно отличается от монтирования по имени диска — вместо имени мы указываем идентификатор. Такой подход считается более надежным, так как при переподключении дисков к другим портам материнской платы может поменяться приоритет и, как следствие, имя устройства — это может привести к проблемам монтирования. UUID диска не меняется и поэтому, данная проблема при таком монтировании не страшна.
И так, смотрим идентификатор диска командой:
blkid
Мы получим ответ на подобие:
/dev/sdb: UUID="3e53fc7e-a417-4fa5-b034-b227bea2474c" BLOCK_SIZE="4096" TYPE="ext4"
/dev/sda1: UUID="358f032e-3efb-42ab-b3ba-05ddc82fedfd" BLOCK_SIZE="512" TYPE="xfs" PARTUUID="0beca126-01"
* допустим, диск который мы хотим примонтировать — sda1. Его идентификатор 358f032e-3efb-42ab-b3ba-05ddc82fedfd.
Открываем на редактирование следующий файл:
vi /etc/fstab
и добавляем в него следующую строчку:
UUID=358f032e-3efb-42ab-b3ba-05ddc82fedfd /db xfs defaults 0 0
Монтирование можно проверить командой:
mount -a
Пример монтирования сетевого диска
//192.168.0.1/network /mnt cifs user,rw,noauto,credentials=/root/.smbclient 0 0
* в данном примере выполняется монтировние общей папки network на сервере с IP-адресом 192.168.0.1 в каталог /mnt. В качестве сетевой файловой системы используется cifs (протокол SMB: сервер samba или общая папка Windows). Параметры для подключения — user: позволяет выполнить монтирование любому пользователю, rw: с правом на чтение и запись, noauto: не монтировать автоматически при старте системы, credentials: файл, в котором написаны логин и пароль для подключения к общей папке.
Теперь создадим файл аутентификации (credentials):
vi /root/.smbclient
и приведем его к следующему виду:
username=backup
password=backup
* username: имя пользоватля, password: пароль. Само собой, в вашем случае указываются свои данные.
Теперь вводим следующую команду:
mount /mnt
Должна примонтироваться сетевая папка //192.168.0.1/network. Это можно проверить следующей командой:
mount
Читайте также
Дополнительная информация по теме:
1. Как в Linux монтировать шару CIFS.