Как указать файлы, которые система должна просматривать

Обновлено: 04.07.2024

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

Доступ к

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

Такая категоризация файлов помогает соотнести функцию каждого файла с разрешениями, назначенными каталогам, в которых они хранятся. То, как операционная система и ее пользователи взаимодействуют с файлом, определяет каталог, в котором он размещен, смонтирован ли этот каталог с разрешениями только для чтения или чтения/записи, а также уровень доступа каждого пользователя к этому файлу. Верхний уровень этой организации имеет решающее значение; доступ к базовым каталогам может быть ограничен, в противном случае могут возникнуть проблемы с безопасностью, если правила доступа с верхнего уровня не придерживаются жесткой структуры.

2.1. Обзор стандарта иерархии файловой системы (FHS)

Red Hat Enterprise Linux использует структуру файловой системы Стандарт иерархии файловой системы (FHS), которая определяет имена, расположения и разрешения для многих типов файлов и каталогов.< /p>

Документ FHS является авторитетной ссылкой на любую файловую систему, совместимую с FHS, но стандарт оставляет многие области неопределенными или расширяемыми. Этот раздел представляет собой обзор стандарта и описание частей файловой системы, не охватываемых стандартом.

Возможность монтировать раздел /usr/ только для чтения. Это особенно важно, так как /usr/ содержит общие исполняемые файлы и не должен изменяться пользователями. Кроме того, поскольку /usr/ монтируется только для чтения, его можно монтировать с дисковода компакт-дисков или с другой машины через монтирование NFS только для чтения.

2.1.1. Организация FHS

2.1.1.1. Сбор информации о файловой системе

Пример 2.1. вывод команды df

По умолчанию df показывает размер раздела в блоках по 1 килобайту и объем используемого и доступного дискового пространства в килобайтах. Для просмотра информации в мегабайтах и ​​гигабайтах используйте команду df -h. Аргумент -h означает «удобочитаемый» формат. Вывод для df -h выглядит примерно так:

Пример 2.2. вывод команды df -h

Примечание

В приведенных выше примерах смонтированный раздел /dev/shm представляет файловую систему виртуальной памяти системы.

Команда du отображает приблизительный объем пространства, используемого файлами в каталоге, а также использование диска для каждого подкаталога. Последняя строка в выводе du показывает общее использование диска каталогом; чтобы увидеть только общее использование диска каталогом в удобочитаемом формате, используйте du -hs . Дополнительные параметры см. в man du .

Чтобы просмотреть системные разделы и использование дискового пространства в графическом формате, используйте системный монитор Gnome, щелкнув Приложения → Системные инструменты → Системный монитор или используя команду gnome-system-monitor . Выберите вкладку «Файловые системы», чтобы просмотреть системные разделы. На рисунке ниже показана вкладка «Файловые системы».

Вкладка

Рисунок 2.1. Вкладка «Файловые системы» системного монитора GNOME

2.1.1.2. Каталог /boot/

Каталог /boot/ содержит статические файлы, необходимые для загрузки системы, например ядро ​​Linux. Эти файлы необходимы для правильной загрузки системы.

Предупреждение

2.1.1.3. Каталог /dev/

Эти узлы устройств необходимы для правильной работы системы. Демон udevd создает и удаляет узлы устройств в /dev/ по мере необходимости.

Устройства в каталоге /dev/ и подкаталогах определяются либо как символьные (обеспечивающие только последовательный поток ввода и вывода, например, мышь или клавиатура), либо как блочные (доступны случайным образом, например, жесткий диск или дисковод). Если установлены GNOME или KDE, некоторые запоминающие устройства автоматически обнаруживаются при подключении (например, через USB) или вставке (например, привод CD или DVD), и появляется всплывающее окно с отображением содержимого.

Таблица 2.1. Примеры общих файлов в каталоге /dev

< /th>
Файл Описание
/dev/hda Главное устройство на основном канале IDE.
/dev/hdb Подчиненное устройство на основном канале IDE.
/dev/tty0 Первая виртуальная консоль.
/dev/tty1< /td> Вторая виртуальная консоль.
/dev/sda Первое устройство на основном канале SCSI или SATA.
/dev/lp0 Первый параллельный порт.
/dev/ttyS0 Последовательный порт.

2.1.1.4. Каталог /etc/

Каталог /etc/ зарезервирован для файлов конфигурации, которые являются локальными для машины. Он не должен содержать двоичных файлов; любые двоичные файлы следует переместить в /bin/ или /sbin/ .

Например, в каталоге /etc/skel/ хранятся "каркасные" пользовательские файлы, которые используются для заполнения домашнего каталога при первом создании пользователя. Приложения также хранят свои файлы конфигурации в этом каталоге и могут ссылаться на них при выполнении. Файл /etc/exports определяет, какие файловые системы экспортируются на удаленные хосты.

2.1.1.5. Каталог /lib/

Каталог /lib/ должен содержать только библиотеки, необходимые для выполнения двоичных файлов в /bin/ и /sbin/ . Эти образы общих библиотек используются для загрузки системы или выполнения команд в корневой файловой системе.

2.1.1.6. Каталог /media/

Каталог /media/ содержит подкаталоги, используемые в качестве точек подключения для съемных носителей, таких как USB-накопители, DVD-диски и компакт-диски.

2.1.1.7. Каталог /mnt/

Каталог /mnt/ зарезервирован для временного монтирования файловых систем, например файловых систем NFS. Для всех съемных носителей используйте каталог /media/. Автоматически обнаруженные съемные носители будут смонтированы в каталоге /media.

Важно

2.1.1.8. Каталог /opt/

Каталог /opt/ обычно зарезервирован для программного обеспечения и дополнительных пакетов, которые не являются частью установки по умолчанию. Пакет, который устанавливается в /opt/, создает каталог с его именем, например /opt/имя_пакета/ . В большинстве случаев такие пакеты имеют предсказуемую структуру подкаталогов; большинство хранит свои двоичные файлы в /opt/packagename/bin/, а свои справочные страницы в /opt/packagename/man/ .

2.1.1.9. Каталог /proc/

Каталог /proc/ содержит специальные файлы, которые либо извлекают информацию из ядра, либо отправляют ему информацию. Примеры такой информации включают системную память, информацию о ЦП и конфигурацию оборудования. Для получения дополнительной информации о /proc/ обратитесь к Разделу 2.3, «Виртуальная файловая система /proc».

2.1.1.10. Каталог /sbin/

В каталоге /sbin/ хранятся двоичные файлы, необходимые для загрузки, восстановления или восстановления системы. Для использования двоичных файлов в /sbin/ требуются привилегии root. Кроме того, /sbin/ содержит двоичные файлы, используемые системой до монтирования каталога /usr/; любые системные утилиты, используемые после монтирования /usr/, обычно помещаются в /usr/sbin/ .

Некоторая информация относится к предварительной версии продукта, которая может быть существенно изменена до ее выпуска. Microsoft не дает никаких явных или подразумеваемых гарантий в отношении представленной здесь информации.

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

Примеры

В следующем примере создается FileSystemWatcher для наблюдения за каталогом, указанным во время выполнения. Компонент настроен на отслеживание изменений времени LastWrite и LastAccess, создание, удаление или переименование текстовых файлов в каталоге. Если файл изменен, создан или удален, путь к файлу выводится на консоль. Когда файл переименовывается, старый и новый пути выводятся на консоль.

Примечания

Используйте FileSystemWatcher для отслеживания изменений в указанном каталоге. Вы можете отслеживать изменения в файлах и подкаталогах указанного каталога. Вы можете создать компонент для просмотра файлов на локальном компьютере, сетевом диске или удаленном компьютере.

Чтобы отслеживать изменения во всех файлах, задайте для свойства Filter пустую строку ("") или используйте подстановочные знаки ("*.*"). Чтобы просмотреть определенный файл, задайте для свойства Filter имя файла. Например, чтобы отслеживать изменения в файле MyDoc.txt, задайте для свойства Filter значение «MyDoc.txt». Вы также можете отслеживать изменения в файлах определенного типа.Например, чтобы отслеживать изменения в текстовых файлах, задайте для свойства Filter значение "*.txt".

Есть несколько типов изменений, которые вы можете отслеживать в каталоге или файле. Например, вы можете следить за изменениями атрибутов, даты и времени LastWrite или размера файлов или каталогов. Это делается путем установки свойства NotifyFilter в одно из значений NotifyFilters. Дополнительную информацию о типах изменений, которые вы можете отслеживать, см. в разделе NotifyFilters.

Вы можете следить за переименованием, удалением или созданием файлов или каталогов. Например, чтобы отслеживать переименование текстовых файлов, задайте для свойства Filter значение "*.txt" и вызовите метод WaitForChanged с параметром Renamed, указанным для его параметра.

Операционная система Windows уведомляет ваш компонент об изменениях файлов в буфере, созданном FileSystemWatcher. При большом количестве изменений за короткое время буфер может переполниться. Это приводит к тому, что компонент теряет отслеживание изменений в каталоге и предоставляет только общее уведомление. Увеличение размера буфера с помощью свойства InternalBufferSize дорого обходится, поскольку оно исходит из невыгружаемой памяти, которую нельзя выгрузить на диск, поэтому сохраняйте буфер как можно меньше, но достаточно большим, чтобы не пропустить ни одного события изменения файла. Чтобы избежать переполнения буфера, используйте свойства NotifyFilter и IncludeSubdirectories, чтобы можно было отфильтровать уведомления о нежелательных изменениях.

Список начальных значений свойств для экземпляра FileSystemWatcher см. в конструкторе FileSystemWatcher.

При использовании класса FileSystemWatcher обратите внимание на следующее.

Скрытые файлы не игнорируются.

В некоторых системах FileSystemWatcher сообщает об изменениях в файлах, используя формат короткого имени файла 8.3. Например, изменение «LongFileName.LongExtension» может быть указано как «LongFil~.Lon».

Этот класс содержит требование связи и требование наследования на уровне класса, которое применяется ко всем членам. Исключение SecurityException возникает, когда либо непосредственный вызывающий объект, либо производный класс не имеют разрешения с полным доверием. Дополнительные сведения о требованиях безопасности см. в разделе Требования к ссылкам.

Максимальный размер, который можно задать для свойства InternalBufferSize для мониторинга каталога по сети, составляет 64 КБ.

Копирование и перемещение папок

Операционная система и объект FileSystemWatcher интерпретируют операцию вырезания и вставки или операцию перемещения как операцию переименования папки и ее содержимого. Если вы вырежете и вставите папку с файлами в отслеживаемую папку, объект FileSystemWatcher сообщит как новую только папку, но не ее содержимое, поскольку они, по сути, только переименовываются.

Чтобы получать уведомления о том, что содержимое папок было перемещено или скопировано в отслеживаемую папку, укажите методы обработчика событий OnChanged и OnRenamed, как показано в следующей таблице.

< td>OnChanged
Обработчик событий Обрабатываемые события Выполняет
Changed, Created, Deleted Сообщать об изменениях в атрибутах файлов, созданных файлах и удаленных файлах.
OnRenamed Переименовано Список старых и новых путей к переименованным файлам и папкам, рекурсивно расширяясь при необходимости.

События и размеры буфера

Обратите внимание, что несколько факторов могут влиять на то, какие события изменения файловой системы вызываются, как описано ниже:

Обычные операции с файловой системой могут вызывать более одного события. Например, когда файл перемещается из одного каталога в другой, могут возникнуть несколько событий OnChanged и некоторые события OnCreated и OnDeleted. Перемещение файла — это сложная операция, состоящая из нескольких простых операций, поэтому возникает несколько событий. Аналогичным образом некоторые приложения (например, антивирусное программное обеспечение) могут вызывать дополнительные события файловой системы, которые обнаруживаются FileSystemWatcher.

FileSystemWatcher может наблюдать за дисками до тех пор, пока они не переключаются или не удаляются. FileSystemWatcher не создает события для компакт-дисков и DVD-дисков, поскольку отметки времени и свойства не могут изменяться. Для правильной работы компонента на удаленных компьютерах должна быть установлена ​​одна из необходимых платформ.

Обратите внимание, что FileSystemWatcher может пропустить событие при превышении размера буфера. Чтобы не пропустить события, следуйте этим рекомендациям:

Увеличьте размер буфера, задав свойство InternalBufferSize.

Избегайте просмотра файлов с длинными именами, поскольку длинное имя файла приводит к заполнению буфера. Попробуйте переименовать эти файлы, используя более короткие имена.

Сделайте код обработки событий как можно короче.

Конструкторы

Инициализирует новый экземпляр класса FileSystemWatcher.

Инициализирует новый экземпляр класса FileSystemWatcher, учитывая указанный каталог для мониторинга.

Инициализирует новый экземпляр класса FileSystemWatcher, учитывая указанный каталог и тип файлов для мониторинга.

Свойства

Получает значение, указывающее, может ли компонент инициировать событие.

Получает IContainer, содержащий компонент.

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

Получает или задает значение, указывающее, включен ли компонент.

Получает список обработчиков событий, прикрепленных к этому компоненту.

Получает или задает строку фильтра, используемую для определения того, какие файлы отслеживаются в каталоге.

Получает набор всех фильтров, используемых для определения того, какие файлы отслеживаются в каталоге.

Получает или задает значение, указывающее, следует ли отслеживать подкаталоги по указанному пути.

Получает или задает размер (в байтах) внутреннего буфера.

Получает или задает тип изменений, за которыми нужно следить.

Получает или задает путь к каталогу для просмотра.

Получает или задает ISite для FileSystemWatcher.

Получает или задает объект, используемый для маршалирования вызовов обработчика событий, вызванных изменением каталога.

Методы

Начинает инициализацию FileSystemWatcher, используемого в форме или другим компонентом. Инициализация происходит во время выполнения.

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

Освобождает неуправляемые ресурсы, используемые FileSystemWatcher.

Освобождает все ресурсы, используемые Компонентом.

Освобождает неуправляемые ресурсы, используемые FileSystemWatcher, и, при необходимости, освобождает управляемые ресурсы.

Завершает инициализацию FileSystemWatcher, используемого в форме или другим компонентом. Инициализация происходит во время выполнения.

Определяет, равен ли указанный объект текущему объекту.

Освобождает ресурсы, удерживаемые текущим экземпляром.

Служит хеш-функцией по умолчанию.

Получает текущий объект службы времени жизни, который управляет политикой времени жизни для этого экземпляра.

Возвращает объект, представляющий услугу, предоставляемую Компонентом или его Контейнером.

Получает тип текущего экземпляра.

Получает объект службы времени жизни для управления политикой времени жизни для этого экземпляра.

Создает поверхностную копию текущего объекта.

Создает поверхностную копию текущего объекта MarshalByRefObject.

Вызывает событие Changed.

Вызывает событие Created.

Вызывает событие Deleted.

Вызывает событие Error.

Вызывает событие Renamed.

Возвращает строку, содержащую имя компонента, если он есть. Этот метод не следует переопределять.

Возвращает строку, представляющую текущий объект.

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

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

События

Происходит при изменении файла или каталога по указанному пути.

Происходит при создании файла или каталога по указанному пути.

Происходит при удалении файла или каталога по указанному пути.

Происходит, когда компонент удаляется вызовом метода Dispose().

Происходит, когда экземпляр FileSystemWatcher не может продолжать отслеживать изменения или когда внутренний буфер переполняется.

Мы узнали, как использовать pwd для определения нашего текущего местоположения в нашей файловой системе. Мы также узнали, как использовать cd для изменения местоположения и ls для просмотра содержимого каталога. Теперь мы изучим некоторые дополнительные команды для перемещения по нашей файловой системе.

Используйте команды, которые мы уже изучили, чтобы перейти в каталог shell_data/untrimmed_fastq, если вы еще этого не сделали.

Что, если мы хотим вернуться назад и выйти из этого каталога в наш каталог верхнего уровня? Можем ли мы ввести cd shell_data ? Попробуйте и посмотрите, что получится.

Ваш компьютер искал каталог или файл с именем shell_data в каталоге, в котором вы уже находились. Он не знал, что вы хотите посмотреть на уровень каталога выше того, в котором вы находились.

У нас есть специальная команда, которая сообщает компьютеру, что нужно переместить нас назад или вверх на один уровень каталога.

Теперь мы можем использовать pwd, чтобы убедиться, что находимся в каталоге, к которому собирались перейти, и ls, чтобы проверить правильность содержимого каталога.

Из этого вывода видно, что .. действительно возвращает нас на один уровень назад в нашей файловой системе.

Вы можете связать их вместе следующим образом:

распечатывает содержимое /home .

Поиск скрытых каталогов

Сначала перейдите в каталог shell_data. В этом каталоге есть скрытый каталог. Изучите параметры ls, чтобы узнать, как увидеть скрытые каталоги.Перечислите содержимое каталога и определите имя текстового файла в этом каталоге.

Подсказка: скрытые файлы и папки в Unix начинаются с . , например .my_hidden_directory

Решение

Сначала используйте команду man, чтобы просмотреть параметры ls .

Опция -a является сокращением от all и говорит, что она заставляет ls «не игнорировать записи, начинающиеся с ». Это тот вариант, который нам нужен.

Имя скрытого каталога — .hidden . Мы можем перейти в этот каталог, используя cd .

А затем выведите список содержимого каталога с помощью ls .

Имя текстового файла — youfoundit.txt .

В большинстве команд флаги можно комбинировать в произвольном порядке для получения желаемых результатов/вывода.

Просмотр содержимого других каталогов

По умолчанию команды ls выводят список содержимого рабочего каталога (то есть каталога, в котором вы находитесь). Вы всегда можете найти каталог, в котором находитесь, с помощью команды pwd. Однако вы также можете указать ls имена других каталогов для просмотра. Перейдите в свой домашний каталог, если вы еще этого не сделали.

Затем введите команду:

Это отобразит содержимое каталога shell_data, и вам не нужно будет туда переходить.

Команда cd работает аналогичным образом.

Это приведет вас к каталогу untrimmed_fastq без необходимости перехода через промежуточный каталог.

Практика навигации

Перейдите в свой домашний каталог. Оттуда перечислите содержимое каталога untrimmed_fastq.

Решение

Полный и относительный пути

Команда cd принимает в качестве аргумента имя каталога. Каталоги можно указать с помощью относительного пути или полного абсолютного пути. Каталоги на компьютере организованы в иерархию. Полный путь сообщает вам, где находится каталог в этой иерархии. Перейдите в домашний каталог и введите команду pwd.

Это полное имя вашего домашнего каталога. Это говорит вам, что вы находитесь в каталоге с именем dcuser, который находится внутри каталога с именем home, который находится внутри самого верхнего каталога в иерархии. На самом верху иерархии находится каталог с именем /, который обычно называют корневым каталогом. Итак, подведем итог: dcuser — это каталог в доме, который является каталогом в / . Подробнее о root и home в следующем разделе.

Теперь введите следующую команду:

Это позволяет перейти на несколько уровней вперед к каталогу .hidden. Теперь вернитесь в домашний каталог.

Вы также можете перейти в каталог .hidden, используя:

Эти две команды имеют одинаковый эффект, они обе ведут нас в каталог .hidden. Первый использует абсолютный путь, задавая полный адрес из домашнего каталога. Второй использует относительный путь, задавая только адрес из рабочего каталога. Полный путь всегда начинается с / . Относительный путь — нет.

Относительный путь подобен получению указаний от кого-то на улице. Они говорят вам «идти направо на знаке остановки, а затем повернуть налево на главную улицу». Это отлично работает, если вы стоите там вместе, но не так хорошо, если вы пытаетесь рассказать кому-то, как туда добраться из другой страны. Полный путь подобен GPS-координатам. Он точно сообщает вам, где что находится, независимо от того, где вы сейчас находитесь.

Обычно можно использовать полный или относительный путь, в зависимости от того, что удобнее. Если мы находимся в домашнем каталоге, то удобнее вводить полный путь. Если мы находимся в рабочем каталоге, удобнее вводить относительный путь, так как это требует меньшего набора текста.

Со временем вам станет легче запоминать структуру используемых вами каталогов и способы быстрой навигации по ним.

Относительное разрешение пути

  1. ../backup: Нет такого файла или каталога
  2. 01.12.2012 08.01.2013 27.01.2013
  3. 01.12.2012/08.01.2013/27.01.2013/
  4. исходный pnas_final pnas_sub

Решение

  1. Нет: есть резервная копия каталога в /Users .
  2. Нет: это содержимое Users/thing/backup , но с .. мы запросили один уровень выше.
  3. Нет: см. предыдущее объяснение. Кроме того, мы не указали -F для отображения / в конце имен каталогов.
  4. Да: ../backup относится к /Users/backup .

Быстрые клавиши навигации

Корневой каталог — это каталог самого высокого уровня в вашей файловой системе, содержащий файлы, важные для ежедневной работы вашего компьютера. Хотя вы будете использовать корень ( / ) в начале ваших абсолютных путей, важно избегать работы с данными в этих каталогах более высокого уровня, поскольку ваши команды могут навсегда изменить файлы, необходимые для работы операционной системы.Во многих случаях для запуска команд в корневых каталогах потребуются специальные разрешения, которые здесь не обсуждаются, поэтому лучше избегать их и работать в своем домашнем каталоге. Работа с домашним каталогом очень распространена. Символ тильды ~ — это ярлык для вашего домашнего каталога. В нашем случае корневой каталог находится на два уровня выше нашего домашнего каталога, поэтому cd или cd ~ приведет вас к /home/dcuser, а cd / приведет вас к / . Перейдите в каталог shell_data:

Затем введите команду:

Это распечатает содержимое вашего домашнего каталога, и вам не нужно вводить полный путь.

Команды cd и cd ~ очень полезны для быстрого возврата в домашний каталог. В последующих уроках мы будем использовать символ ~ для указания нашего домашнего каталога.

Таблицы файловой системы

За последние годы операционные системы прошли долгий путь. Они занимают меньше места, более эффективно управляют ресурсами и стали намного быстрее, чем ранние вычислительные системы. Несмотря на все сделанные улучшения, все еще есть кусочки головоломки «старой школы», без которых мы просто не можем жить. Файловые системы и, по необходимости, таблицы файловых систем являются одной из этих констант. Это может показаться сложным для многих пользователей, поэтому мы рассмотрим /etc/fstab ( fstab ) немного подробнее.

Таблица файловой системы вашей системы Linux, также известная как fstab , представляет собой таблицу конфигурации, предназначенную для облегчения бремени монтирования и размонтирования файловых систем на машине. Это набор правил, используемых для управления тем, как обрабатываются разные файловые системы каждый раз, когда они вводятся в систему. Возьмем, к примеру, USB-накопители. Сегодня мы настолько привыкли к принципу plug and play наших любимых внешних накопителей, что можем совершенно забыть о том, что за кулисами выполняются операции по монтированию накопителя и чтению/записи данных.

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

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

  • Устройство: обычно имя или UUID подключенного устройства (sda1/sda2/и т. д.).
  • Точка монтирования: указывает каталог, в который будет смонтировано устройство.
  • Тип файловой системы: здесь нет ничего сложного, показывает тип используемой файловой системы.
  • Параметры: список всех активных параметров монтирования. При использовании нескольких параметров они должны быть разделены запятыми.
  • Операция резервного копирования: (первая цифра) это двоичная система, где 1 = резервная копия раздела утилитой дампа. 0 = нет резервной копии. Это устаревший метод резервного копирования, и его НЕЛЬЗЯ использовать.
  • Порядок проверки файловой системы: (вторая цифра). Здесь мы видим три возможных результата. 0 означает, что fsck не будет проверять файловую систему. Числа выше этого представляют собой порядок проверки. Для корневой файловой системы должно быть установлено значение 1, а для других разделов — значение 2.

Расположение и параметры

Очевидно, что ваша таблица будет отличаться в зависимости от вашей среды, однако я хочу рассмотреть пример с использованием виртуальной машины, чтобы мы могли увидеть, какая информация предоставляется, и разбить то, что мы видим. Вы увидите мой fstab ниже:

Эта таблица состоит из шести столбцов, определяющих определенные параметры для данной файловой системы. Первое, что бросается в глаза, это комментарии в шапке. На данный момент игнорируйте раздел Кто создал и переходите к разделу Доступные файловые системы. Эти каталоги и справочные страницы заслуживают внимания и могут предоставить ценную информацию, если она вам понадобится. Затем перейдите к разделу После редактирования и обратите внимание на команду systemctl daemon-reload, используемую для обновления компонентов systemd после внесения изменений в этот файл.

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

Первая (и единственная в данном случае) файловая система, которую вы видите, — это корневая файловая система для этой виртуальной машины /dev/mapper/rhel-root . Вы также видите, что это файловая система xfs. Здесь вы можете увидеть любое количество параметров, таких как ext3, ext4, толстые файловые системы и т. д. Непосредственно под корневой файловой системой вы найдете универсальный уникальный идентификатор (UUID).UUID остается постоянно привязанным к файловой системе. UUID — отличный способ маркировать файловые системы, особенно в небольших средах. Однако они могут привести к проблемам в больших средах, где используются сетевые диски. Я отвлекаюсь от UUID моей файловой системы: UUID=64351209-b3d4-421d-8900-7d940ca56fea

Вы также видите, что в этом месте есть раздел подкачки, а также точка монтирования для корневой файловой системы / . Двигаясь вправо, вы видите пару нулей. Первый ноль — это бинарная опция (0=false и 1=true) для «сброса». Это устаревший метод резервного копирования, и его следует установить равным нулю или не использовать. Следующая цифра справа указывает системе запустить проверку файловой системы или fsck. Здесь вариант 0 = пропустить. Корневая файловая система должна быть установлена ​​на 1, а все остальные, которые вы хотите проверить, должны быть назначены после этого.

ПРИМЕЧАНИЕ. Эти параметры должны быть перечислены по порядку, чтобы конфигурация работала правильно.

Есть и другие параметры для более продвинутых пользователей, которые я здесь не настроил (поэтому примеры не показаны). Тем не менее, в Интернете есть несколько отличных ресурсов, объясняющих эти варианты. Я бы проверил следующие:

  1. auto/noauto: определяет, монтируется ли раздел автоматически при загрузке (или нет).
  2. exec/noexec: определяет, может ли раздел выполнять двоичные файлы. В целях безопасности обычно устанавливается значение noexec.
  3. ro/rw: управляет правами на чтение и запись. ro = только чтение, где rw= чтение-запись.
  4. nouser/user: определяет, есть ли у пользователя права на монтирование. По умолчанию это noexec для всех учетных записей пользователей.

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

Читайте также: