LINUX.ORG.RU

mount file.img


0

0

[andrew@windows95 qemu]$ file freedos.img
freedos.img: x86 boot sector, FREE-DOS MBR

Мне необходимо тестировать кое что на эмуляторе но при этом постоянно обновлять содержимое диска. Как это лучше сделать чтобы все быстрее делать?
Замонтировать наподобии iso неполучается.

Ответ на: комментарий от anonymous

а можно mount сделать для raw диска?

NoName
() автор топика

> Замонтировать наподобии iso неполучается.

делаешь losetup. Смотришь fdisk -l на этот диск. Смотришь смещение FAT раздела относительно начала. Переводишь смещение из секторов в байты.

Потом делаешь losetup -d, а потом опять losetup но уже с ключом -o, где указываешь смещение. После этого можешь монтировать..

dilmah ★★★★★
()

#!/bin/sh

# Mount partitions within a disk image file

# 29 Jun 2005: Initial release
# 01 Dec 2005: Handle bootable (DOS) parititons

if [ "$#" -ne "3" ]; then
    echo "Usage: `basename $0` <image_filename> <partition # (1,2,...)> <mount point>" >&2
    exit 1
fi

if ! fdisk -v > /dev/null 2>&1; then
    echo "Can't find the fdisk util. Are you root?" >&2
    exit 1
fi

FILE=$1
PART=$2
DEST=$3

UNITS=`fdisk -lu $FILE 2>/dev/null | grep $FILE$PART | tr -d '*' | tr -s ' ' | cut -f2 -d' '`
OFFSET=`expr 512 '*' $UNITS`
mount -o loop,offset=$OFFSET $FILE $DEST

ananas ★★★★★
()
Ответ на: комментарий от dilmah

Disk /dev/loop7: 10 MB, 10653696 bytes
4 heads, 17 sectors/track, 306 cylinders
Units = cylinders of 68 * 512 = 34816 bytes

      Device Boot      Start         End      Blocks   Id  System
/dev/loop7p1   *           1         302       10234    1  FAT12
Partition 1 has different physical/logical endings:
     phys=(301, 3, 17) logical=(301, 0, 17)


и где тут начало раздела? 1?

NoName
() автор топика
Ответ на: комментарий от ananas

expr: синтаксическая ошибка mount: you must specify the filesystem type

сделал: mount -t vfat -o loop,offset=$OFFSET $FILE $DEST

тогда: expr: синтаксическая ошибка mount: wrong fs type, bad option, bad superblock on /dev/loop5, missing codepage or other error In some cases useful info is found in syslog - try dmesg | tail or so

NoName
() автор топика
Ответ на: комментарий от NoName

[root@windows95 qemu]# /sbin/losetup -o512 /dev/loop7 freedos.img
[root@windows95 qemu]# mount -t vfat /dev/loop7 /mnt
mount: wrong fs type, bad option, bad superblock on /dev/loop7,
       missing codepage or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

NoName
() автор топика
Ответ на: комментарий от ananas

[root@windows95 qemu]# sudo ./cr.sh freedos.img vfat /mnt
expr: синтаксическая ошибка
mount: you must specify the filesystem type
[root@windows95 qemu]# sudo ./cr.sh freedos.img raw /mnt
expr: синтаксическая ошибка
mount: you must specify the filesystem type

NoName
() автор топика
Ответ на: комментарий от NoName

> [root@windows95 qemu]# sudo ./cr.sh freedos.img vfat /mnt

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

./cr.sh freedos.img 1 /mnt

ananas ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.