Файлы блочных устройств обрабатываются драйверами, которые осуществляют ввод-вывод данных цельными блоками. В данном случае, на уровне ядра выполняется буферизация данных ввода-вывода. К блочным устройствам относятся такие устройства как жесткие диски, DVD приводы, модули памяти, а так же все остальные устройства, поддерживающие произвольный доступ к данным.
Файлы блочных и символьных устройств характеризуются двумя номерами: старшим (major) и младшим (minor). Старший номер устройства позволяет ядру определить, к какому драйверу относится файл, а младший номер идентифицирует конкретное физическое устройство.
Просмотреть номера файлов устройств можно, используя команду Is:
[root@rhe!5 ~]# Is -1 /dev/
brw-г-------- 1 root disk 8, 0 Dec 22 13:30 sda
brw-r-------- 1 root disk 8, 2 Dec 22 13:30 sda2
brw-rw------- 1 root disk 22, 0 Dec 22 13:30 hdc
crw-rw--------- 1 root root 4, 0 Dec 22 16:29 ttyO
crw--w--------- 1 root tty 4, 1 Dec 23 00:05 ttyl
crw-------------- 1 rootroot 5, 1 Dec 22 16:43 console
Из данного листинга видно, что блочному устройству sda2 соответствует старший номер 8 (номер драйвера) и младший номер 2 (номер устройства). Номер драйвера 8 в ОС Linux соответствует драйверу SCSI дисков sd. Младший номер устройства 2 является порядковым номером данного устройства, т.е, по сути, файл /dev/sda2 представляет второй раздел, созданный на жестком диске SCSIsda.
Информацию о старших и младших номерах, используемых конкретным драйвером устройства, можно найти в четвертом разделе справочного руководства man для данного драйвера.
Основные команды управления файлами
В ОС Linux имена файлов могут быть представлены как в нижнем, так и в верхнем регистре, причем регистр символов имеет значение. Два одинаковых имени файла, записанных в разных регистрах, будут являться физически разными файлами. В имени файла допускается использовать символы «.», «-», «_», «~», а также ряд других символов, однако их использование может иметь специальное значение для ОС Linux.
К специальным относятся символам «*», «?», «/», «\», «"», «~». С помощью символов «*» и «?» можно указывать шаблоны" подстановки имен, которые могут иметь достаточно сложную структуру. Символ «/» недопустимо использовать в качестве имени файла, поскольку он предназначен для разделения каталогов при указании пути к файлу. Символ «\» в основном используется для переноса ввода текста на следующую строку. Использования данного символа в имени файла, как правило, заключается в экранировании пробелов между отдельными словами имени файла. В ОС Linux имена файлы могут содержать пробелы, однако их необходимо экранировать при помощи символа «\» или записывать имя файла в кавычки. Единичный символ «~» имеет особое значение и используется как ссылка на домашний каталог пользователя.
В предыдущем разделе уже упоминались специальные каталоги «.» и «..», которые используются, соответственно, для обращения к текущему рабочему каталогу и родительскому каталогу. В случае использования символа «.» в качестве первого символа имени файла, данный файл будет скрыт для обычного просмотра, а так же для команды удаления, если при запуске данной команды не была указана соответствующая опция.
Длина имени файла в ОС Linux зависит от типа файловой системы, на которой располагается данный файл. На файловой системе ext3, используемой в ОС Linux по умолчанию, максимальная длина имени файла не может превышать 255 символов.
Следующие команды являются базовыми для проведения повседневных операций администрирования ОС. К таким командам относятся команды, позволяющие просматривать, копировать, перемещать, переименовывать и удалять файлы.