Глава 4. Работа с дисками и другими носителями данных

Локальное оглавление
Два типа устройств
Жесткие диски
Дискеты
CD-ROM'ы
Стриммеры
Форматирование
Разделы
MBR, boot-секторы и таблица разделов
Расширенные и логические разделы
Типы разделов
Разделение жесткого диска на разделы
Файлы устройств и разделов
Файловые системы
Что такое файловые системы?
Различные файловые системы
Какая файловая система должна использоваться?
Создание файловых систем
Монтирование и демонтирование
Проверка целостности с применением fsck
Поиск дисковых ошибок (бадов) командой badblocks
Борьба с фрагментацией
Другие вспомогательные средства для всех файловых систем
Другие вспомогательные средства для файловой системы ext2
Диски без файловых систем
Распределение места на диске
Схемы разделения на разделы
Требования свободного места
Примеры распределения жесткого диска
Добавление большего количества дискового пространства для Linux
Советы по экономии места на диске

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

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

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

  • Форматирование диска с поиском сбойных секторов (в настоящее время форматирование является необязательной процедурой для многих типов дисков, форматируемых на заводе).

  • Разделение диска, если диск будет использоваться для разных целей. Одна из причин разделения - это хранение разных операционных систем на одном диске. Другая причина - хранение пользовательских и системных файлов в pазных pазделах, что упрощает резервное копирование и восстановление, а также защиту системных файлов от повреждений.

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

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

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

Два типа устройств

В системе UNIX, а следовательно и Linux, существует два типа устройств: блочные устройства с прямым доступом (такие как диски) и символьные устройства (такие как ленточные накопители и последовательные порты), некоторые из них могут быть последовательными, а некоторые с прямым доступом. Каждое поддерживаемое устройство представляется в файловой системе файлом устройства. При выполнении операций чтения или записи с подобным файлом, происходит обмен данными между устройством, на которое указывает этот файл. Такой способ доступа к устройствам позволяет не использовать специальные программы (а также специальные методы програмирования, такие как работа с прерываниями). Например, для распечатки файла на принтере, используется следующая команда:


$ cat filename > /dev/lp1

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

Так как устройства отображаются как файлы в файловой системе (в каталоге /dev), несложно обнаружить с помощью команды ls какие существуют файлы устройств. После выполнения команды ls -l на экран выводится список файлов, причем в первой колонке содержится тип файла и права доступа к нему. Например, для просмотра файла, соответствующего последовательному порту, используется следующая команда:

$ 
ls -l /dev/cua0
crw-rw-rw-   1 root     uucp       5,  64 Nov 30  1999 /dev/cua0
$
Первый символ в первой колонке (crw-rw-rw-), т.е. 'c', показывает тип файла, в данном случае символьное устройство. Для обычных файлов используется символ '-', для каталогов 'd', для блочных устройств 'b' (см. pуководство к команде ls для более подробной информации).

Наличие большого количества файлов устройств совсем не означает, что эти устройства на самом деле установлены. Наличие файла /dev/sda ни о чем не говорит и совсем не означает, что в компьютере установлен жесткий диск SCSI. Это предусмотрено для облегчения установки программ и нового оборудования (нет необходимости искать нужные параметры и создавать файлы для новых устройств).