UNIX Использование файла fstab для монтированиядисков

В процессе настройки файлов инициализации операционной системы Linux стоит уделить время и такому файлу, как /etc/fstab. Этот файл содержит описание различных файловых систем, установленных на компьютере. Различные программы считывают необходимую информацию из этого файла и используют ее в своей работе. Задача системного администратора - правильно его настроить. Каждая файловая система (жесткий диск, CD-ROM, флоппи-дисковод) описывается отдельной строкой. Поля в этой строке разделяются символами пробела или табуляции. Порядок записей в файле /etc/fstab имеет особое значение, потому что программы fsck, mount, umount часто обращаются к нему.
Первое поле, которое в различных версиях Linus называется либо <device>, либо <fs_spec>, описывает конкретное дисковое устройство Вашего компьютера или удаленную файловую систему.Второе поле, <mountpoint> либо <fs_file>, содержит название каталога, на который монтируется этот диск. Для свопинг-раздела диска это поле должно быть "none".

Третье поле, <filesystemtype> или <fs_vfstype>, содержит тип файловой системы. Если это поле описано как "ignored", то соответствующий диск не будет замонтирован, служит для неиспользуемых дисков. Вот типы поддерживаемых в настоящее время файловых систем:

— minix — файловая система (фс) операционной системы minix, поддерживающая имена файлов длиной 14 или 30 символов.
— ext — фс, поддерживающая длинные имена файлов. После того как ей на смену пришла фс ext2, она больше не используется.
— ext2 — фс, поддерживающая длинные имена файлов.
— xiafs — фс, поддерживающая длинные имена файлов.
— msdos — фс для дисковых разделов формата MSDOS.
— hpfs — фс для разделов HPFS.
— iso9660 — фс, используемая для приводов CD-ROM.
— nfs — фс для монтирования дисков удаленных компьютеров.
— swap — раздел диска, используемый для своппинга.

Четвертое поле, <fs_mntops> или <options>, содержит параметры файловых систем. Параметры отделяются друг от друга запятыми. Наиболее распространенные параметры для всех файловых систем — noauto (не монтировать при загрузке операционной системы) и user (разрешить монтирование пользователям).

Пятое поле, <dump> или <fs_freq>, используется командой dump и может принимать значение 0 либо 1.

Шестое поле, <fsckorder> или <fs_passno>, используется программой fsck для определения порядка подключения файловых систем во время загрузки операционной системы. Корневой (root) файловой системе присваивается номер 1, остальным — 2. Файловые системы без этого параметра либо с нулевым значением не проверяются программой fsck.

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

Файл fstab выглядит примерно так:

#
# /etc/fstab
#
# можно использовать команду fstool для редактирования!
#
# <device> <mountpoint> <filesystemtype> <options> <dump> <fsckorder>
/dev/hda1 / ext2 defaults,usrquota 1 1
/dev/hda2 /usr ext2 defaults,usrquota 1 2
/dev/hda3 /var ext2 defaults,usrquota 1 2
/dev/hdb1 /mnt/dos_d msdos defaults 1 2
none /proc proc defaults
/dev/hda4 none swap sw
#
# Последние пять строк описывают флоппи-дисководы и CD-ROM
# параметр 'noauto' отключает проверку этих дисков в процессе
# загрузки. Параметр 'user' позволяет любому пользователю
# монтировать эти файловые системы
#
/dev/fd0 /mnt/floppy0 ext2 noauto,user 0 0
/dev/fd1 /mnt/floppy1 ext2 noauto,user 0 0
/dev/fd0 /mnt/a msdos noauto,user 0 0
/dev/fd1 /mnt/b msdos noauto,user 0 0
/dev/cdrom /mnt/cdrom iso9660 noauto 0 0

При загрузке операционной системы автоматически монтируются все диски, которые не содержат параметра noauto. В нашем примере будут замонтированы три раздела Linux (/dev/hda1, /dev/hda2 и /dev/hda3), свопинг-раздел /dev/hda4, ДОС'овский раздел /dev/hdb1 и раздел /proc.

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

Но зато при необходимости работы с этими накопителями, вместо ввода команды с полным набором параметров:
mount -r -t iso9660 /dev/sbpcd /mnt/cdrom
можно ввести следующую:
mount /mnt/cdrom

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

/mnt/dos_d
/mnt/cdrom
/mnt/floppy0
/mnt/floppy1
/mnt/a
/mnt/b
Каталог /mnt уже существует.

Описав соответствующие параметры для /mnt/a и /fd0, а также для /mnt/b и /fd1, можно легко монтировать дискеты, отформатированные DOS или Linux, введя команды:
mount /mnt/a для DOS'овских дискет или
mount /fd0 для дискет с файловой системой ext2.

Параметр "user" позволяет монтировать эти устройства любому пользователю, а не только администратору root.

Игорь Грень


Компьютерная газета. Статья была опубликована в номере 43 за 1998 год в рубрике soft :: unix

©1997-2024 Компьютерная газета