4.6.4 Установка файловой системы
Файловая система устанавливается, т.е. инициализируется, при
помощи команды mkfs(8). В действительности, существуют отдельные
программы для каждого типа файловой системы. Команда mkfs только
запускает требуемую программу в зависимости от типа
устанавливаемой системы. Тип файловой системы указывается при
помощи опции -t fstype.
Параметры, передаваемые программам, вызываемым mkfs, слегка
различаются. Наиболее важные из них рассмотрены ниже (для более
подробной информации см. руководство).
-t fstype Указывается тип файловой системы.
-c Производится поиск плохих блоков и, соответственно,
инициализация списка плохих блоков.
-l filename Считывается начальный список плохих блоков из файла
filename.
Для установки файловой системы ext2 на дискету, используется
следующая последовательность команд:
ttyp5 root ~ $ fdformat -n /dev/fd0H1440
Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 kB.
Formatting ... done
ttyp5 root ~ $ badblocks /dev/fd0H1440 1440 > bad-blocks
ttyp5 root ~ $ mkfs -t ext2 -l bad-blocks /dev/fd0H1440
mke2fs 0.5a, 5-Apr-94 for EXT2 FS 0.5, 94/03/10
360 inodes, 1440 blocks
72 blocks (5.00%) reserved for the super user
First data block=1
Block size=1024 (log=0)
Fragment size=1024 (log=0)
1 block group
8192 blocks per group, 8192 fragments per group
360 inodes per group
Writing inode tables: done
Writing superblocks and filesystem accounting information: done
ttyp5 root ~ $
В первую очередь дискета форматируется (параметр -n
предотвращает проверку на наличие плохих блоков). Затем
производится поиск плохих блоков при помощи команды badblocks,
вывод которой перенаправлен в файл bad-blocks. И, наконец,
файловая система устанавливается с инициализацией списка найденных
плохих блоков.
Вместо использования badblocks, команде mkfs может быть
указан параметр -c, как это видно из примера, рассмотренного ниже.
ttyp5 root ~ $ mkfs -t ext2 -c /dev/fd0H1440
mke2fs 0.5a, 5-Apr-94 for EXT2 FS 0.5, 94/03/10
360 inodes, 1440 blocks
72 blocks (5.00%) reserved for the super user
First data block=1
Block size=1024 (log=0)
Fragment size=1024 (log=0)
1 block group
8192 blocks per group, 8192 fragments per group
360 inodes per group
Checking for bad blocks (read-only test): done
Writing inode tables: done
Writing superblocks and filesystem accounting information: done
ttyp5 root ~ $
Указание параметра -c намного удобнее, чем применение команды
badblocks, но ее использование необходимо для проверки файловой
системы после ее установки.
Установка файловых систем на жесткий диск или его раздел
аналогична установке на дискету, исключая форматирование.
4.6.5 Монтирование и демонтирование
Перед работой с файловой системой, она должна быть
смонтирована. При этом операционная система выполняет некоторые
действия, обеспечивающие функционирование монтируемой системы. Так
как все файлы в системе UNIX принадлежат одной структуре
каталогов, то эта операция обеспечивает работу с файловой
системой, как с каталогом уже смонтированной.
Рассмотрим три различные файловые системы. Если две последние
системы (2-ю и 3-ю) соответственно смонтировать к каталогам /home
и /usr первой системы, то в итоге образуется файловая система с
единой структурой каталогов (4).
1] 2] 3]
/ ддбддддд bin / ддбдддддд abc / ддбдддддд bin
Ё Ё Ё
цддддд dev цдддддд liw цдддддд etc
Ё Ё Ё
цддддд home юдддддд ftp юдддддд lib
Ё
цддддд etc
Ё
цддддд lib
Ё
юддддд usr
4]
/ ддбдддбд usr
Ё Ё
Ё цдддддд lib
Ё Ё
Ё цдддддд etc
Ё Ё
Ё юдддддд bin
Ё
цддддд lib
Ё
цддддд etc
Ё
цдддбд home
Ё Ё
Ё цдддддд ftp
Ё Ё
Ё цдддддд liw
Ё Ё
Ё юдддддд abc
Ё
цддддд bin
Ё
юддддд dev
В примере, рассмотреном ниже, показано, как это сделать.
ttyp5 root ~ $ mount /dev/hda2 /home
ttyp5 root ~ $ mount /dev/hda3 /usr
ttyp5 root ~ $
Команда mount(8) принимает два параметра. Первый их них -
файл устройства, соответствующий диску или разделу, на котором
раположена файловая система. Вторым параметром является имя
каталога, к которому будет монтироваться система. После выполнения
этих команд содержимое файловых систем отображается в каталогах
/home и /usr соответственно. Также можно сказать, что раздел
/dev/hda2 смонтирован к каталогу /home, а /dev/hda3 - к каталогу
/usr. Существует различие между файлом устройства, /dev/hda2, и
монтируемым каталогом, /home. Файл устройства предоставляет доступ
к 'сырым' данным, расположенным на диске, а монтируемый каталог -
к файлам. Такой каталог называется узлом монтирования.
Монтируемый каталог не обязательно должен быть пустым, хотя
он должен существовать. Однако все файлы, в нем расположенные,
будут недоступны после монтирования файловой системы. (Открытые
ранее файлы будут также доступны, а файлы, являющиеся жесткими
ссылками из других каталогов, будут доступны с использованием имен
ссылок.) Таким образом, никакого ущерба не наносится и это даже
может быть полезно. Например, некоторые делают каталог /tmp
символической ссылкой на каталог /usr/tmp. При загрузке системы,
когда файловая система /usr не смонтирована, каталог размещается в
системе root. После того, как /usr смонтирована, каталог /usr/tmp,
расположенный в файловой системе root, становится недоступным.
Если же /usr/tmp не существует в системе root, то перед
монтированием /usr создание и pабота с временными файлами будет
невозможна.
Для защиты файловой системы от записи, команда mount
запускается с опцией -r, после чего монтирование производится в
режиме read-only. После этого ядро пресекает любые попытки записи,
включая модификацию времени доступа к файлам в индексном
дескрипторе. Монтирование с защитой от записи используется при
работе с такими устройствами, как CD-ROM.
Возникает вопрос: каким же образом монтируется самая первая
файловая система (т.е. система root), так как очевидно, что она не
может быть смонтирована на какую-либо другую. Система root
монтируется во время загрузки, поэтому считается, что она всегда
установлена (если бы она не была установлена, то компьютер не смог
бы загрузиться). Название файловой системы, используемой для
монтирования root, либо встроено в ядро, либо устанавливается при
помощи LILO или rdev.
Обычно сначала система root монтируется в режиме read-only.
Затем запускается программа fsck(8) для проверки ее целостности и
если все в порядке, то система монтируется снова в режиме
read-write. fsck не следует запускать на смонтированной файловой
системе, так как изменения, произведенные при ее выполнении, могут
привести к повpеждению системы. Так как система root сначала
монтируется в режиме read-only, то после ее проверки все неполадки
могут быть полностью устранены при повторном монтировании.
На многих системах существуют и другие файловые системы,
которые должны быть смонтированы во время загрузки. Их список
содержится в файле /etc/fstab (см. руководство к fstab(5)).
Если файловая система для работы больше не требуется, то она
может быть демонтирована. Для этого используется команда umount(8)
с одним параметром. Это может быть как файл устройства, так и узел
монтирования. Например, для демонтирования каталогов,
рассмотренных в предыдущем примере, используются следующие
команды:
ttyp5 root ~ $ umount /dev/hda2
ttyp5 root ~ $ umount /usr
ttyp5 root ~ $
После работы с дисководом следует каждый раз применять эту
команду, так как до демонтирования системы нельзя быть уверенным,
что данные были записаны на диск, а не остались в буфере.
Для выполнения операций монтирования и демонтирования
требуется наличие прав доступа пользователя root. Однако, многие
пользователи довольно часто работают с дисководом и для решения
этой проблемы существует несколько способов:
Сообщить всем пароль пользователя root. Это самый простой, но
далеко не лучший выход. Он может использоваться на некоторых
системах, не нуждающихся в защите (обычно не подключенных к
какой-либо сети).
Применять какую-либо программу (например, sudo(8)),
позволяющую всем использовать команду mount. Это также не лучший
способ по причине плохой защиты, хотя его применение не
предоставляет напpямую права root каждому пользователю.
Применение пакета mtools, используемого только для работы с
файловой системой MS-DOS без выполнения операции монтирования.
Используется только в тех случаях, когда дисковод применяется для
работы с дисками системы MS-DOS.
Поместить список файлов устройств, используемых при работе с
гибкими дисками, и доступных узлов монтирования вместе с нужными
опциями в файл /etc/fstab.
Последний метод может быть реализован путем добавления в файл
/etc/fstab следующей строки:
/dev/fd0 /floppy msdos user,noauto
Сначала указывается файл устройства, затем каталог, на
который монтируется устройство, тип файловой системы и опции.
Опция noauto запрещает автоматическое монтирование при начальной
загрузке системы. Опция user позволяет любому пользователю
монтировать указанную файловую систему и, по причине защиты
системы, запрещает выполнение программ и работу с файлами
устройств, расположенных на смонтированной системе. После этого,
любой пользователь может выполнить следующую команду:
ttyp5 root ~ $ mount /floppy
ttyp5 root ~ $
Для демонтирования системы используется команда umount с
соответствующими параметрами.
... пользователей. Разделение может существенно отличатся от выше указанного в зависимости от работы системного администратора и конфигурации аппаратного обеспечения. В главе 5 сруктура файловой системы рассматривается более подробно (см. также Linux Filesystem Standard). . - 16 - Глава 3 Запуск Системы и Перезагрузка В ...
... каталог с логом непосредственно пользователем root и убедиться, что доступ для самого пользователя в заданный каталог разрешен. Заключение В данной работе была освещен Security-Enhanced Linux — линукс с улучшенной безопасностью. Достоинства данной технологии очевидны, т.к. он базируется на принципе наименьших прав, т.е. запущенному процессу дается именно столько прав, сколько ему требуется. ...
... в RAM диск (для этого ядро, расположенное на дискете должно быть сконфигурировано соответствующим образом). Это позволяет использовать дисковод для других целей.ЗАКЛЮЧЕНИЕ Linux является Unix-подобной операционной системой, которая используется на различных компьютерах PC-386. Впервые она была представлена как pасшиpение к операционной системе Minix и ее первые версии включали поддержку только ...
... с обслуживанием сотрудников и как следствие снижение эффективности их работы, и как следствие снижение производительности работы организации в целом, что может привести к значительным финансовым потерям. 2. Практические аспекты внедрения корпоративного сервера на базе ОС Linux. 2.1 Основания для внедрения системы Решение любой задачи состоит из двух этапов. Первый этап теоретический ...
0 комментариев