Прямое копирование образа Ramdisk на устройство Ramdisk - PullRequest
0 голосов
/ 10 мая 2011

Правильно, у меня есть образ Ramdisk на смонтированном устройстве, например, по адресу /mnt/sda1/Ramdisk.img. Я хочу скопировать необработанные данные непосредственно на устройство ramdisk по адресу / dev / ram0 таким образом, чтобы не было необходимости использовать mke2fs: я мог бы смонтировать образ и устройство и обнаружить, что оба они идентичны.

В идеале это будет использовать только команды linux.

Мои идеи на данный момент: монтировать изображение в петлю и использовать базовый ввод-вывод для передачи данных с одного устройства на другое. Я мог бы сделать это с C. Кроме того, каким-то образом можно найти физический адрес устройства ramdisk и использовать команды linux или C, чтобы поместить файл непосредственно в память.

Заранее спасибо.

P.S .: Я знаю, что ядро ​​каким-то образом помечает память, которая использовалась для виртуальных дисков, поэтому система не восстанавливает ее. Кто-нибудь знает, где эти флаги?

1 Ответ

1 голос
/ 10 мая 2011

Любая команда копирования будет требовать раздела и файловой системы в месте назначения. Однако dd может работать на уровне диска или раздела, просто указав уровень диска (например, / dev / sda) или раздела (например, (dev / sda1)). Таким образом, теоретически вы можете сделать

dd if=ramdisk_image_file of=/dev/ram0
...