
Цель урока: Решить проблему, с которой мы столкнулись в прошлом уроке - временный характер монтирования. Мы изучим структуру и назначение одного из важнейших конфигурационных файлов Linux - /etc/fstab. Вы научитесь правильно и, что самое главное, безопасно добавлять в него записи для автоматического монтирования файловых систем при каждой загрузке сервера.
Часть 1: Теория. Что такое fstab и почему он так важен?
fstab (File Systems Table) - это "книга инструкций" для системы, которая читается на очень раннем этапе загрузки. В этой "книге" записано, какие диски и разделы (файловые системы) нужно автоматически смонтировать, куда их смонтировать и с какими параметрами.
Без правильной записи в /etc/fstab ваш дополнительный диск для данных, который вы так старательно форматировали и монтировали, после каждой перезагрузки будет оставаться "невидимым" для системы, пока вы снова не выполните команду mount вручную.
КРИТИЧЕСКИ ВАЖНОЕ ПРЕДУПРЕЖДЕНИЕ
Файл /etc/fstab является критически важным для загрузки системы. Одна-единственная синтаксическая ошибка в этом файле может привести к тому, что ваш сервер не сможет загрузиться и уйдет в аварийный режим (emergency mode), из которого выбраться новичку будет очень сложно.
Золотое правило работы с fstab: Прежде чем перезагружать сервер после внесения изменений, всегда проверяйте правильность монтирования с помощью специальной команды. Мы изучим ее ниже.
Часть 2: Практика. Структура файла /etc/fstab
Давайте посмотрим, как выглядит этот файл. Каждая строка в нем описывает одну точку монтирования и состоит из шести полей, разделенных пробелами или знаками табуляции.
Шаг 1: Просмотр файла
Используем уже знакомую нам команду cat для просмотра содержимого.
cat /etc/fstab
Результат (типичный для VDS):
# <file system> <mount point> <type> <options> <dump> <pass>
UUID=a1b2c3d4-... / ext4 errors=remount-ro 0 1
Разбор полей на этом примере:
-
<file system> (Что монтировать): UUID=a1b2c3d4-...
Это не имя устройства (/dev/vda1), а его UUID (Universally Unique Identifier) - уникальный идентификатор, который "прожигается" в файловую систему в момент ее создания. Использование UUID - это современный и самый надежный способ, потому что имена устройств (/dev/sda, /dev/sdb) могут измениться, если вы физически переключите диски, а UUID всегда остается неизменным. -
<mount point> (Куда монтировать): /
Наш раздел монтируется в корень файловой системы. -
<type> (Тип файловой системы): ext4
Здесь указывается тип файловой системы, который мы создавали командой mkfs. -
<options> (Опции монтирования): errors=remount-ro
Это набор параметров, разделенных запятой, которые определяют, как будет работать файловая система. defaults - это стандартный набор полезных опций. errors=remount-ro - важная опция, которая говорит системе: "если при загрузке возникнут ошибки на этом диске, перемонтируй его в режим 'только для чтения', чтобы не усугубить проблему". -
<dump> (Для резервного копирования): 0
Это поле использовалось старой утилитой резервного копирования dump. В 99.9% случаев сегодня здесь ставится 0 (не делать бэкап). -
<pass> (Порядок проверки): 1
Это поле говорит утилите fsck (проверка файловой системы) о порядке проверки дисков при загрузке.-
0: Не проверять.
-
1: Проверять первым. Используется только для корневого раздела (/).
-
2: Проверять вторым. Используется для всех остальных автоматически монтируемых разделов.
-
Часть 3: Практический сценарий. Добавляем новый диск в fstab
Давайте продолжим наш гипотетический сценарий из прошлого урока. У нас есть:
-
Раздел: /dev/vdb1
-
Файловая система на нем: ext4
-
Точка монтирования: /mnt/data
Наша задача - сделать так, чтобы он монтировался автоматически.
Шаг 1: Получение UUID нашего раздела
Никогда не используйте имена /dev/vdb1 в fstab. Всегда используйте UUID. Узнать его можно с помощью команды blkid (block id).
# В нашем гипотетическом сценарии:
blkid /dev/vdb1
Результат будет примерно таким:
/dev/vdb1: UUID="e5a8f2b1-a9d5-4e8c-8f3b-0b1c5e2d4f6a" TYPE="ext4" ...
Нам нужна часть UUID="...". Скопируйте ее.
Шаг 2: Редактирование /etc/fstab
Открываем файл с помощью nano. Будьте предельно осторожны.
nano /etc/fstab
Перейдите в конец файла и добавьте новую, аккуратно отформатированную строку.
Наша новая строка:
# <file system> <mount point> <type> <options> <dump> <pass>
UUID=e5a8f2b1-a9d5-4e8c-8f3b-0b1c5e2d4f6a /mnt/data ext4 defaults 0 2
-
Вставляем наш скопированный UUID.
-
Указываем точку монтирования /mnt/data.
-
Указываем тип ext4.
-
Используем defaults - это хороший, безопасный набор опций по умолчанию (включает rw - чтение/запись, exec - исполнение и др.).
-
<dump> ставим 0.
-
<pass> ставим 2, так как это не корневой раздел.
Сохраните файл (Ctrl+O, Enter) и выйдите (Ctrl+X).
Шаг 3: Проверка без перезагрузки (ЗОЛОТОЕ ПРАВИЛО!)
Мы внесли изменения, но как проверить, что мы не допустили ошибку, не рискуя перезагрузкой?
Для этого используется команда mount с ключом -a (all). Эта команда читает файл /etc/fstab и пытается смонтировать все, что там перечислено, но еще не смонтировано.
-
Сначала убедимся, что наш раздел отмонтирован:
# (гипотетически) umount /mnt/data -
Запускаем проверку:
mount -a-
Если команда выполнилась молча, без ошибок: ПОЗДРАВЛЯЮ! Ваша запись в fstab корректна.
-
Если команда выдала ошибку: НЕ ПЕРЕЗАГРУЖАЙТЕСЬ! Откройте fstab снова, найдите и исправьте опечатку, сохраните и повторите mount -a до тех пор, пока она не выполнится без ошибок.
-
-
Финальная проверка с df:
df -hTВы должны увидеть, что ваш раздел снова смонтирован в /mnt/data.
Теперь вы можете быть на 100% уверены, что после перезагрузки сервер загрузится корректно и ваш новый диск будет автоматически подключен.
Часть 4: Заключение
Сегодня мы освоили один из самых ответственных, но и самых важных аспектов администрирования - автоматическое монтирование. Вы изучили:
-
Назначение и структуру критически важного файла /etc/fstab.
-
Почему использование UUID является единственно правильным подходом.
-
Значение всех шести полей в строке fstab.
-
Самое главное: вы освоили безопасную методику работы с fstab - сначала вносим изменения, а затем проверяем их командой mount -a до перезагрузки.
На следующем, 30-м уроке, мы завершим наш глубокий блок по работе с дисками и познакомимся с LVM (Logical Volume Management). Это более продвинутая технология управления дисками, которая позволяет гибко изменять размеры разделов "на лету" и объединять несколько физических дисков в один большой логический том.
Перейти к просмотру - УРОК №30.
Промо-код: PROMO15 - скидка 15%!
Введите при оформлении первого заказа на сайте: Hosting-VDS.com

