6

Из руководства по установке Arch Linux:

Файл /etc /fstab содержит статическую информацию о файловой системе. Он определяет, как устройства хранения и разделы должны быть смонтированы и интегрированы в общую систему. Он читается командой mount, чтобы определить, какие опции использовать при монтировании конкретного устройства или раздела.

Вот почему нам нужно сгенерировать этот файл как шаг процесса установки.

Так как же mount монтирование корневого раздела в /mnt в самом начале процесса установки, если fstab в этой точке еще пуст, так как в тот момент он еще не был сгенерирован?

1 ответ1

8

/etc/fstab определяет конфигурацию по умолчанию.  В нем перечислены стандартные комбинации файловой системы / точки монтирования / опции.  Когда вы монтируете файловую систему, если вы не укажете полные параметры и параметры, mount прочитает параметры из вашего fstab .  Например, вы можете ввести

mount /dev/sda1

и mount будет знать где его поставить, а можно набрать

mount /mnt/sda1

и mount будет знать, где его найти.  Но если вы хотите быть особенным, вы можете напечатать

mount /dev/sda1 /mnt/sdq17

и mount сделает это.  Точно так же вы можете указать в командной строке, что файловая система должна быть смонтирована только для чтения.  И наоборот, вы можете указать в /etc/fstab что файловая система должна быть смонтирована по умолчанию только для чтения, а затем переопределить ее в командной строке.  И вы можете вручную монтировать файловые системы, которые вообще не находятся в /etc/fstab .

Кроме того, /etc/fstab определяет, какие файловые системы автоматически монтируются во время загрузки; они монтируются с указанными опциями по умолчанию.

Но также, так же, как вы можете набрать mount /dev/sda1 /mnt/sda1 , программа может выполнить mount с полным списком аргументов, и тогда (в принципе) mount вообще не нужен доступ к /etc/fstab .  И операционная система автоматически знает, где находится ее корневой раздел, и автоматически монтирует корневую файловую систему в самом начале процесса загрузки.  На самом деле, если ОС требуется, чтобы /etc/fstab был доступен до того, как она смогла выполнить монтирование, у нас возникла бы проблема «курица и яйцо», поскольку /etc недоступна, пока не смонтирована корневая файловая система.  Корневой раздел включен в /etc/fstab по другой причине, по которой существует /etc/fstab - чтобы дать fsck список вещей для проверки.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .