Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

Команды mount и umount

Пред. 

Глава 8. Файловые системы и точки монтирования

 След.


Команды mount и umount

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

mount [опции] <-t тип> [-o опции монтирования] <устройство> <точка монтирования>

В нашем случае, мы хотим временно примонтировать наш раздел в /mnt (или в любую другую выбранную вами точку монтирования; но помните, что точка монтирования должна существовать). Команда для монтирования нашего нового созданного раздела:

$ mount -t ext3 /dev/hdb1 /mnt

Опция -t используется для указания типа файловой системы, которая предположительно находится на разделе. Вот файловые системы, с которыми вы будете встречаться наиболее часто: ext2FS (файловая система GNU/Linux) или ext3FS (усовершенствованная версия ext2FS с возможностями журналирования), VFAT (для всех разделов DOS/Windows®: FAT 12, 16 или 32) и ISO9660 (файловая система CD-ROM'ов). Если вы не указали никакого типа, mount попробует самостоятельно определить, какая файловая система находится в разделе, путем считывания суперблока.

Опция -o используется для указания одной или нескольких опций монтирования. Опции, применимые к отдельным файловым системам, будут зависеть от используемой файловой системы. За более подробной информацией обращайтесь к странице руководства mount(8).

Теперь, когда вы примонтировали свой новый раздел, настало время скопировать в него весь каталог /usr:

$ (cd /usr && tar cf - .) | (cd /mnt && tar xpvf -)

После того, как файлы скопированы, мы можем отмонтировать наш раздел. Для этого воспользуйтесь командой umount. Ее синтаксис прост:

umount <точка монтирования|устройство>

Таким образом, чтобы отмонтировать наш новый раздел, мы можем ввести:

$ umount /mnt

или:

$ umount /dev/hdb1

[Tip]

Подсказка

Иногда может статься так, что устройство (обычно CD-ROM) оказывается занятым. В этом случае большинство пользователей решают эту проблему перезагрузкой своего компьютера. Например, если команда umount /dev/hdc не срабатывает, тогда вы можете попробовать «ленивый» umount. Ее синтаксис предельно прост:

umount -l <точка монтирования|устройство>

Этак команда отключает устройство и, если это возможно, закрывает все открытые хендлы (handle) этого устройства. Обычно вы можете извлечь диск при помощи команды eject <точка монтирования|устройство>. Что ж... если команда eject не смогла ничего сделать, а вы не хотите перезагружаться, используйте ленивое размонтирование.

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

/dev/hda1   /           ext2    defaults        1 1
/dev/hda5   /home       ext2    defaults        1 2
/dev/hda6   swap        swap    defaults        0 0
/dev/hdc    /mnt/cdrom  auto umask=0,user,noauto,ro,exec,users 0 0
none        /mnt/floppy supermount dev=/dev/fd0,fs=ext2:vfat,--,sync,umask=0 0 0
none        /proc       proc    defaults        0 0
none        /dev/pts    devpts  mode=0622       0 0

Каждая строка состоит из:

  • устройства, содержащего файловую систему;
  • точки монтирования;
  • типа файловой системы;
  • опций монтирования;
  • флага для утилиты резервирования dump;
  • порядка проверки файловой системы посредством fsck (FileSystem ChecK).

Всегда присутствует пункт для корневой файловой системы. Разделы swap являются специальными, поэтому их не видно в древовидной структуре, а поле точки монтирования для этих разделов всегда содержит ключевое слово swap. Что же касается файловой системы /proc, более подробно она будет описана в Глава 10, Файловая система /proc. Другой особой файловой системой является /dev/pts.

На данный момент мы перенесли всю иерархию /usr на /dev/hdb1, и теперь нам нужно, чтобы этот раздел был примонтирован как /usr во время загрузки системы. Для этого добавьте следующий пункт в файл /etc/fstab:

/dev/hdb1        /usr         ext2    defaults  1 2

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

Существуют две специальные опции: noauto и user. Опция noauto указывает на то, что файловая система не должна монтироваться при загрузке, а монтируется она только тогда, когда вы захотите это сделать. Опция user указывает на то, что любой пользователь сможет примонтировать или размонтировать эту файловую систему. Эти две опции обычно используются для приводов CD-ROM и дисководов. Существует еще много других опций, а для файла /etc/fstab имеется страница man (fstab(5)), которую вы можете прочитать для получения дополнительной информации.

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

$ mount /mnt/floppy

или:

$ mount /dev/fd0

Чтобы закончить с нашим примером переноса раздела, давайте проанализируем, что мы уже сделали. Мы скопировали иерархию /usr и изменили /etc/fstab, чтобы новый раздел монтировался при загрузке системы. Но, минуточку, ведь старые файлы /usr все еще остаются на своем старом месте на диске, поэтому мы должны удалить их, чтобы освободить дисковое пространство (что, в конце концов, и было нашей исходной целью). Для этого вам сначала необходимо переключиться в однопользовательский режим, выполнив в командной строке команду telinit 1.

  • Далее мы удаляем все файлы из каталога /usr. Помните, что мы все еще ссылаемся на «старый» каталог, т.к. новый (большего размера) еще не примонтирован. rm -Rf /usr/*.
  • И, наконец, мы монтируем новый каталог /usr: mount /usr/.

Вот и все. Теперь возвращаемся назад в многопользовательский режим (telinit 3 для стандартного текстового режима или telinit 5 для X Window System), и, если больше не осталось никакой административной работы, выходим из учетной записи root'а.


Пред. 

Уровень выше

 След.

Разметка жесткого диска, форматирование разделов 

Начало

 Глава 9. Файловая система Linux