Skip to contentSkip to conversation

How to also Mount hdimage file at /

DISCUSSION [email protected] 3 participants 5 messages Nov 11, 2003

lore
Share & tools
lore
#0 lore raw

I made a mkfatimage16 file which works fine with
dosemu. I have a need to let Windows (samba) to
mount the same via the network.

I can use mtools to see the file as drive m:
but I need to mount it under /dosc so that windows can also write to it.

When the hdimage was a real dos partition mounted on /dosc, I could use dosemu and windows would also see myhost://dosc

Does anyone know how I can mount the hdimage (now a file) also as /dosc. Also tried using the loop device: mount filname /mnt -t msdos -o loop, but it complains about the file's format.

Thanks
TonyB

Signature · 4 lines
  __      __  _     I N C.               http://www.sysdev.org
/ __|\\// __||  \  __   __          /         [email protected]
\__ \ \/\__ \||)|/ O_)\/ /        \/  System Tools / Utilities
|___/ || ___/|_ /\___|\_/        WIntel / Linux Device Drivers
#1 lore raw
Quoted 8 lines · On Mon, 10 Nov 2003 20:00:01 -0800 [email protected] wrote:

I made a mkfatimage16 file which works fine with dosemu. I have a need to let Windows (samba) to mount the same via the network.

I can use mtools to see the file as drive m:
but I need to mount it under /dosc so that windows can also write to it.

Quoted 6 lines

When the hdimage was a real dos partition mounted on /dosc, I could use dosemu and windows would also see myhost://dosc

Does anyone know how I can mount the hdimage (now a file) also as /dosc. Also tried using the loop device: mount filname /mnt -t msdos -o loop, but it complains about the file's format.

By looking at hdimage file created by mkfatimage16m I noticed that the boot sector was at offset 0x2280, rather than at 0, if it was a device /dev/hda1. So I truncated the hdimage file by cutting off the first 8832 bytes and redid the mount command above and it worked!

However, dosemu will not work if $_hdimage is set to the truncated image. So I need a way to specify the file starting at offset 0x2280, while leaving it intact... But I do not know how to specify a file starting at a byte offset...

TonyB

Signature · 4 lines
  __      __  _     I N C.               http://www.sysdev.org
/ __|\\// __||  \  __   __          /         [email protected]
\__ \ \/\__ \||)|/ O_)\/ /        \/  System Tools / Utilities
|___/ || ___/|_ /\___|\_/        WIntel / Linux Device Drivers
#2 lore raw
Quoted 4 lines · On Tue, 11 Nov 2003 06:57 pm, [email protected] wrote:

However, dosemu will not work if $_hdimage is set to the truncated image. So I need a way to specify the file starting at offset 0x2280, while leaving it intact... But I do not know how to specify a file starting at a byte offset...

According to "man losetup", maybe "losetup -o" but I've never tried it myself.

Cheers,
Clarence

--
KolourPaint - http://sf.net/projects/kolourpaint
LibMSWrite - http://sf.net/projects/libmswrite

"Studying is a waste of time" -- John Plaice

#3 lore raw
Quoted 8 lines · On Tue, 11 Nov 2003 06:57 pm, [email protected] wrote:
Quoted 3 lines

However, dosemu will not work if $_hdimage is set to the truncated image. So I need a way to specify the file starting at offset 0x2280, starting at a byte offset...

Cheers,
Clarence

Thanks I will try it when I come back ffrom my
root canal, if am still conscious...

TonyB

#4 lore raw
In reply to Clarence Dang
Quoted 7 lines · On Tue, 11 Nov 2003 23:31:30 +1100 Clarence Dang <[email protected]> wrote:
Quoted 5 lines · On Tue, 11 Nov 2003 06:57 pm, [email protected] wrote:

However, dosemu will not work if $_hdimage is set to the truncated image. So I need a way to specify the file starting at offset 0x2280, while leaving it intact... But I do not know how to specify a file starting at a byte offset...

Quoted 5 lines

According to "man losetup", maybe "losetup -o" but I've never tried it myself.

Cheers,
Clarence

Great discovery. It did work!

----------------------------------------------------------------
losetup -d /dev/loop3 <detach and clear loop3>
losetup -o 8832 /dev/loop3 /hdimage-32MB.mdos <attach to loop3 @off=8832>
mount /dev/loop3 /dosc -t msdos <voila!, done deal!>
----------------------------------------------------------------

Then export the drive's /dosc with smb.conf and MS-Access can read/write to a file that dosemu is using inside of a partition inside a Linux file in a networked embedded linux appliance.

Great capability for dosemu, since starting with Windows 2K/sp4 and also to a lesser extent XP/sp1 Dos mapped drives are no longer allowed in the Windows network. Samba2 and 3 still work fine!

Gracias,
TonyB

Signature · 4 lines
  __      __  _     I N C.               http://www.sysdev.org
/ __|\\// __||  \  __   __          /         [email protected]
\__ \ \/\__ \||)|/ O_)\/ /        \/  System Tools / Utilities
|___/ || ___/|_ /\___|\_/        WIntel / Linux Device Drivers