монтаж без -o петли - PullRequest
       47

монтаж без -o петли

6 голосов
/ 17 марта 2010

Я написал драйвер блочного устройства (RAM-диск) для ядра Linux. Когда драйвер загружен, я вижу его как /dev/mybd.

Я могу успешно перенести на него данные с помощью команды dd, сравнить скопированные данные успешно.

Проблема в том, что когда я создаю на нем файловую систему ext2 / 3, я должен использовать цикл -o вариант с командой монтирования. В противном случае монтирование завершится неудачно со следующим результатом:

mount: неверный тип fs, неверный параметр, плохой суперблок на mybd, отсутствует кодовая страница или вспомогательная программа, или другая ошибка

В чем может быть проблема? Пожалуйста, помогите.

Спасибо.

Ответы [ 4 ]

3 голосов
/ 07 июня 2010

Хм, если он работает с -o loop и не работает без, тогда у меня для вас плохие новости: ваше «устройство» на самом деле является простым файлом в / dev. Что показывает ls -l /dev/mybd? Если его размер файла не равен нулю, это обычный файл, и он не имеет никакого отношения к вашему драйверу.

Используйте mknod, чтобы самостоятельно создать файл устройства.

1 голос
/ 26 апреля 2010

Я вижу, вы начинаете все сначала. В качестве краткого замечания о вашей предыдущей попытке, вы убедились, что ваше устройство отображается в / dev как устройство block , а не как символ one?

0 голосов
/ 20 апреля 2010

Циклическое устройство используется для монтирования блочных специальных файлов в файловой системе Linux, эмулируя их как блочные устройства. Следовательно, монтирование выдает ошибку.

0 голосов
/ 17 марта 2010

Создайте файловый элемент на устройстве перед его монтированием:

mkfs -t ext2 /dev/mybd

или

mke2fs /dev/mybd
...