Администрирование файловых систем ос linux

Содержание
  1. Администрирование систем Linux. Монтирование файловых систем
  2. Глава 7. Монтирование файловых систем
  3. 7.1. Монтирование локальных файловых систем
  4. 7.2. Вывод списка смонтированных файловых систем
  5. 7.3. Процесс монтирования файловой системы от начала до конца
  6. 7.4. Монтирование файловых систем на постоянной основе
  7. 7.5. Безопасное монтирование файловых систем
  8. 7.6. Монтирование удаленных файловых систем
  9. 7.7. Практическое задание: монтирование файловых систем
  10. 7.8. Процедура корректного выполнения практического задания: монтирование файловых систем
  11. Администрирование систем Linux. Файловые системы
  12. Глава 6. Файловые системы
  13. 6.1. Информация о файловых системах
  14. 6.2. Часто используемые файловые системы
  15. 6.3. Создание файловой системы в разделе
  16. 6.4. Настройка файловой системы
  17. 6.5. Проверка файловой системы
  18. 6.6. Практическое задание: файловые системы
  19. 6.7. Корректная процедура выполнения практического задания: файловые системы

Администрирование систем Linux. Монтирование файловых систем

Глава 7. Монтирование файловых систем

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

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

7.1. Монтирование локальных файловых систем

7.1.1. Создание точки монтирования с помощью утилиты mkdir

В данном примере демонстрируется методика создания новой точки монтирования с помощью утилиты mkdir .

7.1.2. Утилита mount

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

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

7.1.3. Файл /etc/filesystems

На самом деле использование параметра -t ext2 утилиты mount для явного указания типа файловой системы не всегда является необходимым. Утилита mount имеет возможность автоматической идентификации типов множества файловых систем.

В случае монтирования файловой системы без явного указания ее типа утилита mount в первую очередь попытается идентифицировать файловую систему как одну из файловых систем, перечисленных в файле /etc/filesystems . При этом утилита mount будет пропускать строки с директивой nodev .

7.1.4. Файл /proc/filesystems

В том случае, если файла /etc/filesystems не существует или данный файл заканчивается строкой с одним символом *, утилита mount будет читать файл /proc/filesystems .

7.1.5. Утилита umount

Вы можете отмонтировать файловую систему с помощью утилиты umount .

7.2. Вывод списка смонтированных файловых систем

Для вывода списка смонтированных файловых систем следует использовать команду mount . Также можно прочитать содержимое файлов /proc/mounts и /etc/mtab .

7.2.1. Утилита mount

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

7.2.2. Файл /proc/mounts

Ядро ОС предоставляет информацию о смонтированных файловых системах посредством файла /proc/mounts , причем данный файл не хранится на жестком диске. При чтении информации из файла /proc/mounts осуществляется чтение информации, переданной непосредственно ядром ОС.

Содержимое файла /etc/mtab не обновляется средствами ядра ОС, а поддерживается в актуальном состоянии средствами утилиты mount . Не редактируйте файл /etc/mtab вручную.

Более удобный для пользователя способ получения списка смонтированных файловых систем заключается в использовании утилиты df . Утилита df (название расшифровывается как diskfree — свободное пространство диска) имеет полезную дополнительную возможность, заключающуюся в выводе данных об объеме свободного пространства в каждой из смонтированных файловых систем, расположенных в разделах жестких дисков. Как и большинство утилит из состава Linux, утилита df поддерживает параметр -h , предназначенный для активации режима вывода данных в формате, облегчающем чтение.

7.2.5. Команда df -h

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

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

Хотя утилита du и может осуществлять рекурсивный обход дерева директорий с последующим выводом информации о каждой из директорий, параметр -s позволит вам получить обобщенную информацию о размере родительской директории. Этот параметр чаще всего используется вместе с параметром -h . Поэтому команда du -sh по отношению к точке монтирования позволит получить информацию обо всем пространстве раздела диска, использованном файловой системой.

7.3. Процесс монтирования файловой системы от начала до конца

В приведенном ниже примере показана полная последовательность действий, начинающаяся с определения имени файла устройства жесткого диска (/dev/sdb) и заканчивающаяся монтированием созданной в разделе этого жесткого диска файловой системы в директорию /mnt .

7.4. Монтирование файловых систем на постоянной основе

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

7.4.1. Файл /etc/fstab

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

Читайте также:  Windows посмотреть кто логинился

Ниже приведен пример файла /etc/fstab .

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

7.4.2. Команда mount /точка_монтирования

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

7.5. Безопасное монтирование файловых систем

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

7.5.1. Параметр ro

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

7.5.2. Параметр noexec

Параметр noexec позволяет предотвратить исполнение бинарных файлов и сценариев, расположенных в смонтированной файловой системе.

7.5.3. Параметр nosuid

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

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

Но пользователи не смогут воспользоваться привилегиями, обусловленными наличием битов setuid .

7.5.4. Параметр noacl

Для предотвращения использования механизма управления правами доступа к файлам на основе списков контроля доступа следует использовать параметр noacl .

Описания других параметров монтирования файловых систем доступны на странице руководства для утилиты mount .

7.6. Монтирование удаленных файловых систем

7.6.1. Файловая система SMB/CIFS

Команда разработчиков проекта Samba (samba.org) осуществляет разработку системной службы для Unix/Linux, которая совместима с протоколом SMB/CIFS. Данный протокол используется главным образом компьютерами, работающими под управлением ОС производства компании Microsoft.

Соединение с сервером Samba (или компьютером, работающим под управлением ОС производства компании Microsoft) также может осуществляться с помощью утилиты mount.

В данном примере показана методика соединения с сервером, имеющим IP-адрес 10.0.0.42 , для доступа к разделяемому ресурсу с именем data2 .

Для корректного соединения с использованием описанного протокола необходимо установить дополнительные программные компоненты с помощью команды yum install cifs-client .

7.6.2. Файловая система NFS

Серверы Unix обычно используют протокол NFS (расшифровывается как Network File System — сетевая файловая система) для предоставления доступа к директориям по сети. Настройка сервера NFS будет обсуждаться позднее. Соединение же с сервером NFS со стороны клиента осуществляется также с помощью утилиты mount и очень похоже на соединение с локальным дисковым хранилищем.

Данная команда демонстрирует методику соединения с сервером NFS с именем server42 , который предоставляет доступ к директории /srv/data . Точка монтирования (путь к которой приведен в конце строки команды) должна существовать.

В том случае, если сервер с именем server42 имеет IP-адрес 10.0.0.42 , вы также можете использовать запись:

7.6.2. Специфичные для NFS параметры монтирования

bg : в случае неудачи при монтировании файловой системы повторять попытки в фоновом режиме.

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

soft : прекратить процесс монтирования файловой системы после X неудачных попыток.

hard : (используется по умолчанию) продолжать предпринимать попытки монтирования файловой системы после неудач.

Комбинация параметров soft+bg позволяет осуществить наиболее быструю загрузку клиентской системы в случае неполадок с сервером NFS.

retrans=X : Попытаться соединиться с сервером X раз (по протоколу UDP).

tcp : Принудительно использовать протокол TCP (используется по умолчанию и всегда поддерживается).

udp : Принудительно использовать протокол UDP (не всегда поддерживается).

7.7. Практическое задание: монтирование файловых систем

1. Смонтируйте файловую систему, созданную в рамках малого раздела размером в 200 МБ, в точку монтирования /home/project22.

2. Смонтируйте файловую систему, созданную в рамках большого первичного раздела размером в 400 МБ, в точку монтирования /mnt, после чего скопируйте некоторые системные файлы в эту директорию (рекомендуется скопировать все содержимое директории /etc). После этого отмонтируйте файловую систему и повторно смонтируйте ее в точку монтирования /srv/nfs/salesnumbers в режиме только для чтения. Где оказались скопированные вами ранее файлы?

3. Проверьте корректность своих выполненных действий с помощью утилит fdisk , df и mount . Также изучите содержимое файлов /etc/mtab и /proc/mounts .

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

5. Что случится, если вы смонтируете файловую систему в директорию, в которой уже содержатся файлы?

6. Что случится, если вы смонтируете две файловых системы в одну и ту же точку монтирования?

7 (дополнительное задание). Дайте пояснения относительно различий между данными утилитами: find, locate, updatedb, makewhatis, whereis, apropos, which и type.

8 (дополнительное задание). Выполните проверку файловой системы, созданной в разделе, который смонтирован в директорию /srv/nfs/salesnumbers.

7.8. Процедура корректного выполнения практического задания: монтирование файловых систем

1. Смонтируйте файловую систему, созданную в рамках малого раздела размером в 200 МБ, в точку монтирования /home/project22.

2. Смонтируйте файловую систему, созданную в рамках большого первичного раздела размером в 400 МБ, в точку монтирования /mnt, после чего скопируйте некоторые системные файлы в эту директорию (рекомендуется скопировать все содержимое директории /etc). После этого отмонтируйте файловую систему и повторно смонтируйте ее в точку монтирования /srv/nfs/salesnumbers в режиме только для чтения. Где оказались скопированные вами ранее файлы?

Теперь вы можете обнаружить скопированные ранее файлы в директории /srv/nfs/salenumbers .

Но физически эти файлы все также хранятся в рамках файловой системы ext3 на разделе жесткого диска, представленном файлом устройства /dev/sdb1

3. Проверьте корректность своих выполненных действий с помощью утилит fdisk , df и mount . Также изучите содержимое файлов /etc/mtab и /proc/mounts .

Читайте также:  Linux bash условные операторы

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

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

Добавьте следующие строки в файл /etc/fstab

5. Что случится, если вы смонтируете файловую систему в директорию, в которой уже содержатся файлы?

Уже имеющиеся файлы будут скрыты до момента отмонтирования файловой системы, к примеру, с помощью утилиты umount .

6. Что случится, если вы смонтируете две файловых системы в одну и ту же точку монтирования?

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

7 (дополнительное задание). Дайте пояснения относительно различий между данными утилитами: find, locate, updatedb, makewhatis, whereis, apropos, which и type.

8 (дополнительное задание). Выполните проверку файловой системы, созданной в разделе, который смонтирован в директорию /srv/nfs/salesnumbers.

Источник

Администрирование систем Linux. Файловые системы

Глава 6. Файловые системы

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

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

6.1. Информация о файловых системах

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

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

6.1.1. Страница руководства man fs

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

6.1.2. Файл /proc/filesystems

Ядро Linux проинформирует вас о загруженных на данный момент драйверах файловых систем с помощью файла /proc/filesystems .

6.1.3. Файл /etc/filesystems

Файл /etc/filesystems содержит список автоматически определенных файловых систем (на случай использования утилиты mount без параметра -t ).

Информация о данном файле содержится на странице руководства, которая может быть открыта с помощью команды man mount .

6.2. Часто используемые файловые системы

6.2.1. Файловые системы ext2 и ext3

В прошлом наиболее часто используемой файловой системой в Linux была файловая система ext2 («вторая расширенная файловая система»). Недостаток данной файловой системы заключался в значительных затратах времени на ее проверку.

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

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

6.2.2. Создание файловых систем ext2 и ext3

Вы можете создать данные файловые системы с помощью утилит /sbin/mkfs и /sbin/mke2fs . Используйте команду mke2fs -j для создания файловой системы ext3.

Также вы можете преобразовать файловую систему ext2 в ext3 с помощью команды tune2fs -j . При этом вы можете смонтировать файловую систему ext3 как ext2, но в этом случае вы потеряете функцию журналирования. Не забывайте о необходимости выполнения команды mkinitrd в том случае, если устройство с данной файловой системой должно использоваться в процессе загрузки системы.

6.2.3. Файловая система ext4

Новейшим воплощением расширенной файловой системы является файловая система ext4 , код для поддержки которой включен в состав ядра Linux в 2008 году. Файловая система ext4 поддерживает файлы большего размера (до 16 терабайт), а также позволяет создавать файловые системы на разделах больших размеров, чем в случае файловой системы ext3 (кроме того, она предоставляет множество дополнительных возможностей).

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

6.2.4. Файловая система xfs

Файловая система xfs используется по умолчанию в дистрибутиве Redhat Enterprise Linux 7. Это хорошо масштабируемая высокопроизводительная файловая система.

Файловая система xfs была создана специально для операционной системы Irix и в течение нескольких лет также использовалась в операционной системе FreeBSD. Она поддерживается ядром Linux, но редко используется в дистрибутивах, не имеющих отношения к дистрибутивам Redhat/CentOS.

6.2.5. Файловая система vfat

Файловая система vfat существует в нескольких форматах: fat12 для дискет, fat16 для операционной системы ms-dos и fat32 для поддержки дисков большего объема. Реализация файловой системы vfat из состава ядра Linux поддерживает все упомянутые форматы, но при этом в данной реализации отсутствует поддержка ряда возможностей, таких, как механизм контроля доступа и ссылки на файлы. Диски с файловой системой fat могут читаться средствами любой операционной системы и широко используются в цифровых камерах и накопителях с интерфейсом USB, причем данная файловая система очень удобна для осуществления обмена данными между операционными системами, установленными на компьютере домашнего пользователя.

Читайте также:  Vmware при установке mac os

6.2.6. Файловая система iso 9660

Файловая система iso 9660 является стандартной файловой системой для оптических дисков CD-ROM. Высока вероятность того, что вы также встретите данную файловую систему на вашем жестком диске в форме образов дисков CD-ROM (которые обычно имеют расширение .iso). Стандарт iso 9660 ограничивает длину имен файлов форматом 8.3. Это ограничение было воспринято негативно в мире Unix, в результате чего в стандарт было добавлено расширение Rock Ridge , позволяющее использовать имена файлов длиной в 255 символов, режимы доступа и идентификаторы владельцев файлов в стиле Unix, а также символьные ссылки. Другим расширением для стандарта iso 9660 являются расширение Joliet , которое добавляет возможность использования до 64 символов Unicode в именах файлов. Расширение El Torito также относится к стандарту iso 9660 и позволяет осуществлять загрузку системы с дисков CD-ROM.

6.2.7. Файловая система udf

При создании большинства оптических дисков (включая диски CD и DVD) в настоящее время используется файловая система udf , название которой расшифровывается как Universal Disk Format (универсальный дисковый формат).

6.2.8. Файловая система swap

Если принимать во внимание все детали, swap не является файловой системой. Но для использования раздела в качестве раздела подкачки он должен быть отформатирован и смонтирован как пространство для хранения данных подкачки.

6.2.9. Файловая система gfs

Кластеры на основе Linux обычно используют отдельную кластерную файловую систему, такую, как GFS, GFS2, ClusterFS,

6.2.10. Другие файловые системы.

В более старых системах Linux вы можете встретить файловую систему reiserfs . Также не исключено, что вы столкнетесь с файловой системой zfs , разработанной в компании Sun, или открытой файловой системой btrfs . Для описания возможностей последней, скорее всего, потребуется отдельная глава.

6.2.11. Файл /proc/filesystems

Файл /proc/filesystems содержит список поддерживаемых файловых систем. В момент монтировании файловой системы без явного указания ее типа утилита mount в первую очередь попытается идентифицировать файловую систему как одну из файловых систем, описанных в файле /etc/filesystems , после чего в случае необходимости попытается идентифицировать эту же файловую систему как одну из файловых систем, описанных в файле /proc/filesystems за исключением тех, для которых установлена метка nodev . В том случае, если в последней строке файла /etc/filesystems расположен только символ звездочки (*), будут использоваться оба упомянутых файла.

6.3. Создание файловой системы в разделе

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

Самое время прочитать страницы руководств утилит mkfs и mke2fs . С помощью приведенного ниже примера вы можете проследить процесс создания файловой системы ext2 в разделе, представленном файлом устройства /dev/sdb1. В реальной жизни вам также могут понадобиться такие параметры данной утилиты, как -m0 и -j.

6.4. Настройка файловой системы

Вы можете использовать утилиту tune2fs для вывода списка параметров файловой системы и установки их значений. В первом примере показана методика вывода информации о зарезервированном для пользователя root пространстве в рамках раздела (текущее значение равно пяти процентам от общего размера раздела).

А в примере ниже данное значение увеличивается до 10 процентов от общего размера раздела. Вы можете использовать утилиту tune2fs в процессе эксплуатации файловой системы, даже в том случае, если данная файловая система содержит корневую директорию (как в примере ниже).

6.5. Проверка файловой системы

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

Значение из последнего столбца файла /etc/fstab используется в качестве флага проверки файловой системы в процессе загрузки операционной системы.

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

Но после размонтирования файловой системы ext2 утилиты fsck и e2fsck могут успешно использоваться для ее проверки.

6.6. Практическое задание: файловые системы

1. Выведите список файловых систем, известных вашей операционной системе.

2. Создайте файловую систему ext2 в разделе размером в 200 МБ.

3. Создайте файловую систему ext3 в одном из логических разделов размером в 300 МБ.

4. Создайте файловую систему ext4 в разделе размером в 400 МБ.

5. Установите размер резервируемого пространства для пользователя root в разделе с файловой системой ext3 равным 0 процентов от общего размера раздела.

6. Проверьте корректность выполненных действий с помощью утилит fdisk и df .

7. Выполните проверки всех недавно созданных файловых систем.

6.7. Корректная процедура выполнения практического задания: файловые системы

1. Выведите список файловых систем, известных вашей операционной системе.

2. Создайте файловую систему ext2 в разделе размером в 200 МБ.

mke2fs /dev/sdc1 (замените sdc1 на корректное имя файла устройства, представляющего необходимый раздел жесткого диска)

3. Создайте файловую систему ext3 в одном из логических разделов размером в 300 МБ.

mke2fs -j /dev/sdb5 (замените sdb5 на корректное имя файла устройства, представляющего необходимый раздел жесткого диска)

4. Создайте файловую систему ext4 в разделе размером в 400 МБ.

mkfs.ext4 /dev/sdb1 (замените sdb1 на корректное имя файла устройства, представляющего необходимый раздел жесткого диска)

5. Установите размер резервируемого пространства для пользователя root в разделе с файловой системой ext3 равным 0 процентов от общего размера раздела.

6. Проверьте корректность выполненных действий с помощью утилит fdisk и df .

Использование утилиты mkfs (mke2fs) не должно стать причиной принципиальных различий в выводе предложенных для осуществления диагностики утилит.

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

7. Выполните проверки всех недавно созданных файловых систем.

Источник

Оцените статью