Перейти к содержанию

Резюме

Резюме (Chapter Review)

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

Первой темой стало управление разделами диска. Было отмечено, что перед использованием диска в Linux-системе его необходимо разбить на разделы. Один из вариантов — создание разделов MBR с помощью утилиты fdisk. Были описаны шаги создания нового раздела этой командой. Подчёркивалось, что изменения необходимо сохранить на диск, прежде чем fdisk фактически запишет созданные разделы.

Более новые дистрибутивы Linux также поддерживают разделы GPT. GPT является частью общей спецификации унифицированного расширяемого интерфейса прошивки (Unified Extensible Firmware Interface, UEFI) и призван устранить многие недостатки традиционной схемы разбиения MBR:

  • В GPT нет основных, расширенных и логических разделов.
  • GPT поддерживает огромные диски и разделы.
  • Большинство дистрибутивов Linux поддерживают до 128 разделов GPT на диске.
  • GPT обеспечивает отказоустойчивость разделов, сохраняя копию таблицы разделов в первом и последнем секторах диска.
  • GPT выполняет проверку циклическим избыточным кодом (CRC) для верификации целостности таблицы разделов.

Для управления разделами GPT используется утилита gdisk, позволяющая выполнять следующие задачи:

  • Преобразование таблицы разделов MBR в GPT.
  • Проверка жёсткого диска.
  • Создание и удаление разделов GPT.
  • Отображение информации о разделе.
  • Изменение имени и типа раздела.
  • Резервное копирование и восстановление таблицы разделов диска.

Помимо gdisk, для управления разделами GPT можно использовать команду parted в командной строке — добавлять, удалять и редактировать разделы на диске.

Далее было рассмотрено форматирование раздела с файловой системой с помощью утилиты mkfs. Эта утилита является надстройкой над реальными командами, создающими каждый конкретный тип файловой системы (ext2, ext3, ext4, msdos, vfat и другие). Для создания файловых систем Reiser используется утилита mkreiserfs. Для создания файловых систем extx из командной строки также можно использовать команду mke2fs.

Нужный тип файловой системы указывается с помощью параметра –t. Было отмечено, что для создания файловой системы xfs необходимо сначала добавить поддержку xfs в ядро Linux.

Для форматирования раздела подкачки используется команда mkswap. Сначала тип раздела необходимо изменить на 82 с помощью fdisk, затем ввести mkswap устройство и активировать новый раздел подкачки командой swapon. Для отключения существующего раздела подкачки используется команда swapoff.

После форматирования раздел можно смонтировать командой mount. Было отмечено, что Linux монтирует все разделы в каталоги внутри единой файловой системы — в отличие от Windows с её буквами дисков. Переход в каталог, в котором смонтирован раздел, переводит вас к этому устройству. Был описан синтаксис монтирования раздела командой mount. Было также указано, что mount может использоваться для отображения смонтированных разделов. Для отмонтирования раздела используется команда umount.

Была рассмотрена роль файла /etc/fstab. Было подчёркнуто, что смонтированная файловая система не будет смонтирована повторно после перезагрузки, если не имеет записи в файле /etc/fstab. Описаны шесть полей каждой записи fstab, а также порядок добавления новой записи для обеспечения монтирования файловой системы при загрузке.

Затем было рассмотрено LVM — альтернатива традиционному созданию разделов диска. С помощью LVM создаются группы томов (volume groups) из устройств хранения в системе. Из группы томов выделяется пространство конкретным логическим томам (logical volumes), которыми управляет диспетчер логических томов. Вместо монтирования разделов монтируются логические тома в точках монтирования файловой системы.

LVM позволяет динамически добавлять пространство в систему. Для увеличения ёмкости достаточно установить новый жёсткий диск и выделить его пространство — не нужно резервировать данные и восстанавливать их, как при работе с традиционными разделами. Для создания хранилища LVM в системе применяется следующая процедура:

  1. Создание физических томов командой pvcreate.
  2. Создание группы томов командой vgcreate.
  3. Создание логических томов командой lvcreate.

Далее было рассмотрено обслуживание файловой системы Linux. Сначала — проверка используемого пространства разделами, каталогами и файлами с помощью утилит df и du.

Было отмечено, что разделы иногда могут повреждаться. В этом случае для проверки и восстановления раздела можно использовать утилиту fsck. Было указано, что fsck является надстройкой над различными утилитами восстановления для конкретных файловых систем. Был рассмотрен порядок использования утилиты e2fsck для восстановления повреждённого суперблока.

Были также рассмотрены следующие утилиты обслуживания файловой системы:

  • tune2fs
  • reiserfstune
  • dumpe2fs
  • debugfs
  • xfs_admin
  • xfs_info
  • xfs_metadump

Была рассмотрена команда lsof для проверки открытых файлов в файловой системе. Кроме того, было отмечено, что команда fuser позволяет отображать PID процессов, использующих указанные файлы или файловые системы.

Затем было рассмотрено монтирование съёмных носителей в файловой системе с помощью mount. Как и разделы, съёмные устройства монтируются в каталог файловой системы. Доступ к этим устройствам осуществляется через каталог, в котором они смонтированы (называемый точкой монтирования). Описана процедура монтирования дискет, оптических дисков, USB- и FireWire-устройств. Было указано, что если тип файловой системы съёмного устройства неизвестен, можно использовать параметр –t auto, чтобы утилита mount автоматически определила правильный параметр.

Глава завершилась обсуждением резервного копирования файловой системы Linux. Была подчёркнута важность регулярного выполнения резервного копирования. Затем были рассмотрены элементы плана резервного копирования. Первый шаг — выбор носителя. Были рассмотрены преимущества и недостатки стриммеров, перезаписываемых оптических дисков и съёмных жёстких дисков.

Следующий шаг — выбор стратегии. Было описано, как работают полное, инкрементное и дифференциальное резервное копирование и как их сочетать для разработки собственной стратегии. Была подчёркнута важность ротации носителей и верификации резервных копий.

Далее — определение расписания резервного копирования и решение о том, что именно резервировать. Были описаны каталоги файловой системы, для которых обычно создаются резервные копии: /etc, /home, /opt, /root, /var и /srv.

Глава завершилась обзором утилит резервного копирования Linux. Был рассмотрен синтаксис использования tar как с жёсткими дисками, так и со стриммерами. Был рассмотрен синтаксис использования cpio для создания файловых архивов. Было рассказано, как использовать gzip и bzip2 для сжатия и распаковки архивов tar и cpio. Было также показано, как использовать dd для копирования файлов и создания образов целых разделов диска.

Краткий обзор (Accelerated Review)

  • Перед монтированием диск необходимо разбить на разделы и отформатировать.
  • Утилита fdisk используется для создания разделов MBR на жёстких дисках.
  • При разбиении дисков на разделы необходимо устанавливать тип раздела.
  • Изменения разделов сохраняются только в памяти до их записи на диск.
  • Новые дистрибутивы Linux поддерживают разделы GPT, призванные устранить многие недостатки устаревших разделов MBR.
  • Для управления разделами GPT используется утилита gdisk или parted.
  • После разбиения диска на разделы необходимо отформатировать его с помощью mkfs или mkreiserfs.
  • После форматирования диск можно смонтировать командой mount.
  • Файл /etc/mtab может использоваться для просмотра смонтированных файловых систем.
  • Для просмотра смонтированных файловых систем также можно использовать /proc/mounts.
  • Для отмонтирования смонтированной файловой системы используется команда umount.
  • Перед завершением работы Linux все файловые системы должны быть отмонтированы.
  • Смонтированные файловые системы не будут смонтированы повторно после перезагрузки, если не имеют записи в /etc/fstab.
  • Файл /etc/fstab задаёт точки монтирования и другие параметры для конкретных устройств.
  • LVM является альтернативой традиционному процессу создания разделов диска.
  • С помощью LVM создаются группы томов из устройств хранения в системе.
  • Из группы томов выделяется пространство конкретным логическим томам.
  • Вместо монтирования разделов монтируются логические тома в точках монтирования файловой системы.
  • LVM позволяет динамически добавлять пространство в систему.
  • Для создания хранилища LVM в системе применяется следующая процедура:
    • Создание физических томов командой pvcreate.
    • Создание группы томов командой vgcreate.
    • Создание логических томов командой lvcreate.
  • Для мониторинга дискового пространства и использования индексных дескрипторов используются утилиты df и du.
  • Утилита fsck используется для проверки и восстановления файловых систем.
  • Утилита e2fsck может использоваться для восстановления повреждённого суперблока на файловых системах ext2/¾.
  • Утилита tune2fs используется для настройки различных параметров файловой системы ext2/¾.
  • Утилита reiserfstune является аналогом tune2fs для файловых систем Reiser.
  • Утилита dumpe2fs может отображать полезную информацию о файловых системах ext2/¾.
  • Утилита debugfs является интерактивным отладчиком файловой системы.
  • Утилита xfs_admin является аналогом tune2fs для xfs.
  • Утилита xfs_info отображает полезную информацию о файловых системах xfs.
  • Утилита xfs_metadump выгружает метаданные файловой системы xfs (например, имена и размеры файлов) в файл.
  • Для отображения списка открытых файлов из командной строки используется команда lsof.
  • Команда fuser отображает PID процессов, использующих указанные файлы или файловые системы.
  • Съёмные устройства необходимо смонтировать в файловой системе Linux перед использованием.
  • Команда mount может использоваться для монтирования дискет.
  • Дискеты как правило используют тип файловой системы vfat.
  • Первая дискета в системе — /dev/fd0.
  • Для автоматизации монтирования дискеты можно использовать /etc/fstab.
  • Для отмонтирования дискеты перед её извлечением необходимо использовать umount.
  • Оптические диски необходимо смонтировать в файловой системе перед использованием.
  • Оптические диски монтируются с типом файловой системы iso9660.
  • Оптические диски обычно монтируются в /media/cdrom, /media/cdrecorder, /media/dvd или /mnt/cdrom.
  • Linux воспринимает USB- и FireWire-устройства как SCSI-устройства.
  • USB- и FireWire-устройства монтируются командой mount.
  • Если тип файловой системы USB- или FireWire-устройства неизвестен, можно использовать –t auto, чтобы mount попытался определить правильный тип файловой системы.
  • Регулярное резервное копирование системы является абсолютно необходимым.
  • Стриммеры широко используются для резервного копирования данных.
  • Стриммеры вмещают большой объём данных и сравнительно недороги.
  • Стриммеры также медленны и склонны к износу.
  • Перезаписываемые CD и DVD могут использоваться для резервного копирования, однако их ёмкость слишком мала.
  • Съёмные жёсткие диски становятся популярным решением для резервного копирования.
  • Съёмные жёсткие диски очень быстры и вмещают много данных; однако они подвержены тем же проблемам повреждения, что и резервируемый жёсткий диск.
  • Полное резервное копирование копирует всё и помечает файлы как скопированные.
  • Инкрементное резервное копирование копирует всё, изменённое с момента последнего полного или инкрементного копирования, и помечает файлы как скопированные.
  • Дифференциальное резервное копирование копирует всё, изменённое с момента последнего полного копирования. Файлы при этом не помечаются как скопированные.
  • Можно сочетать полное резервное копирование с инкрементным или дифференциальным, но нельзя смешивать инкрементное и дифференциальное.
  • Следует поддерживать ротацию резервных копий за три-четыре недели.
  • Резервные копии необходимо верифицировать.
  • Для резервных копий следует устанавливать расписание.
  • Необходимо тщательно определять, какие каталоги резервировать.
  • Следует рассмотреть резервное копирование /etc, /home, /opt, /root, /var и /srv.
  • Для создания резервных копий можно использовать tar.
  • Утилита tar работает с большинством носителей для резервного копирования.
  • Для архивирования данных также можно использовать cpio.
  • Командой dd можно преобразовывать и копировать файлы.
  • Утилита dd может скопировать целый раздел или даже весь жёсткий диск в единый файл.