1dd7040f

ИЗУЧЕНИЕ ДАННЫХ


Когда данные находятся на диске, их можно изучить более тщательно, чем с помощью команд cat, more и других. Делается это командой od(1), которая выдает дамп файла устройства, как показано в следующем примере:

$ od -c /dev/hd01

Если бы вы получали дамп файла НЕСТРУКТУРИРОВАННОГО устройства (/dev/rhd01), то это выглядело бы точно так же. Единственное отличие заключается в том, как драйвер осуществляет доступ к данным. Формат, в котором будут выводиться данные, зависит от того, какой командой производилось копирование: cpio, tar, mkfs или какой-то иной. Некоторые другие способы получения данных с устройства:

$ cat /dev/hd01 $ cat < /dev/hd01 $ tail /dev/fd0

Если вы дампируете файл устройства, содержащего файловую систему, то данные будут представлять собой неупорядоченные блоки по 512 байт. В одном месте вы можете увидеть списки каталогов. Другими словами, одно и то же устройство может рассматриваться двумя совершенно разными способами: как файловая система и как набор неструктурированных битов. Хотя выполнение чтения двумя этими способами может быть поучительным, в большинстве случаев у вас не возникнет желания выполнить ЗАПИСЬ информации на одно и то же устройство двумя способами, поскольку, например, неструктурированное устройство не будет ничего знать о файловой системе в данном разделе и может затереть данные, относящиеся к файловой системе.

Теперь, когда вы знаете, как осуществить доступ к диску, мысленно вернемся к главе 2 и программам копирования. Командный файл cpiobr использует для копирования файлов неструктурированное дисковое устройство /dev/rfd0, в то время как autobkp использует файловую систему.

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

Итак, поскольку вы обычно должны выбрать тот или иной метод использования раздела диска, то ничто не мешает вам завести на устройстве все разделы одинакового типа. Обычным подходом является создание файловых систем во всех возможных разделах, чтобы они могли содержать файлы. Тем не менее, вы можете сочетать файловую систему с "неструктурированными" разделами любым способом, который вам нравится. Одной из возможных схем является использование одного раздела (fd01) в качестве неструктурированного устройства для копирования файлов командой "cpio -o". Этот раздел занимает почти весь диск, но какая-то часть отводится для размещения второго раздела с файловой системой (fd02). Распределенное пространство содержит некоторые справочные (help) файлы и текстовый файл с именами файлов, находящихся в неструктурированном разделе. Такое разбиение на разделы использует преимущества обоих способов. Для того чтобы получить данные, скопированные командой cpio, вы вводите команду "cpio -i < /dev/rfd01". Для получения данных из второго раздела, вы вводите команду "mount /dev/fd02 /mnt", а затем используете команды ls, file, grep и другие, которые относятся к файловой системе. В этом случае раздел с файловой системой служит для документирования неструктурированного раздела.



Содержание раздела