Jump to content











Photo
* * * * * 1 votes

vMount

vhd

  • Please log in to reply
222 replies to this topic

#26 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 16066 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 18 December 2014 - 08:40 PM

I haven't tested "mounting" yet, but when attempting to unmount an existing VHD, I receive an error:

 

COMMAND: VMOUNT64.exe DETACH C:\Secure.vhdx
STDOUT: OpenVHD failed,1392

COMMAND: VMOUNT64.exe UMOUNT S:\
STDOUT: NULL

 

Any ideas?

Are you saying that you attempted to UNmount a NON mounted VHDx? :unsure:

Then what is corresponding to the S:\ drive? :dubbio:

HOW (which program/driver/whatever) made the C:\secure.vhdx be accessible as drive letter S:\ ?

Do you know that a .vhd is NOT a .vhdx (they are DIFFERENT formats)?

Are you running Windows 7 (which knows nothing about .vhdx) or Windows 8/8.1 (which has "native" support for both .vhd and .vhdx)?

http://www.eightforu...indows-8-a.html

 

:duff:

Wonko



#27 erwan.l

erwan.l

    Platinum Member

  • Developer
  • 3041 posts
  • Location:Nantes - France
  •  
    France

Posted 18 December 2014 - 08:47 PM

I haven't tested "mounting" yet, but when attempting to unmount an existing VHD, I receive an error:

 

COMMAND: VMOUNT64.exe DETACH C:\Secure.vhdx
STDOUT: OpenVHD failed,1392

COMMAND: VMOUNT64.exe UMOUNT S:\
STDOUT: NULL

 

Any ideas?

 

1392 error code basically means file or directory is damaged or unreadable.

and as Wonko mentionned, it will work only if your O.S supports the vhdx format.

 

as for umount, drop the "\", it should be vmount umount s:



#28 erwan.l

erwan.l

    Platinum Member

  • Developer
  • 3041 posts
  • Location:Nantes - France
  •  
    France

Posted 31 December 2016 - 04:06 PM

A quick update 2 years later.

 

New switches on the command line :

vmount compact path_to_vhd
vmount online disk_id
vmount offline disk_id
vmount ro disk_id
vmount rw disk_id
vmount attributes disk_id
 
Added to that, the vmount disks command will now show extra details (bustype and removable).
 
Example:
0       DISK    KINGSTON SVP100S296G    91580MB SATA            NON-REMOVABLE
1       DISK    DT 100 G2               3824MB  USB             REMOVABLE

Cheers and happy new year :)

 

Erwan



#29 erwan.l

erwan.l

    Platinum Member

  • Developer
  • 3041 posts
  • Location:Nantes - France
  •  
    France

Posted 04 November 2018 - 07:18 PM

Small update to vmount.

vmount v0.8 by erwan2212@gmail.com
vmount createfixed path_to_vhd size(MB)
vmount createdynamic path_to_vhd size(MB)
vmount createchild path_to_child path_to_parent
vmount attach path_to_vhd [NOLETTER]
vmount attach path_to_iso
vmount detach \\.\PhysicalDriveX
vmount detach disk_id
vmount detach path_to_vhd
vmount expand path_to_vhd size(MB)
vmount compact path_to_vhd
vmount merge path_to_child
vmount disks [filter]
vmount partitions [filter]
vmount mount x: \device\harddiskX\partitionX
vmount umount letter
vmount online disk_id
vmount offline disk_id
vmount ro disk_id
vmount rw disk_id
vmount attributes disk_id

vmount detach will now accept a disk_id (like vmount detach 2) next to a physicaldrive path (like vmount detach \\.\physicaldrive2).

vmount attach will report the physicaldrive path when attaching a virtual disk.

vmount attach will now accept 'noletter' as extra parameter allowing one to attach a virtual disk without forcibly assigning a drive letter.

vmount will also create (fixed and dynamic) and attach vhdx (next to vhd and iso).

vmount disks will report the serial number for each physicaldrive.


  • Tokener likes this

#30 Tokener

Tokener

    Frequent Member

  • Developer
  • 378 posts

Posted 04 November 2018 - 11:06 PM

Hi erwan

thanks for continuing the development of this great tool. :thumbup: Thumbs up!

 

Sincerely   T.



#31 MJK

MJK

    Newbie

  • Members
  • 13 posts
  •  
    Ireland

Posted 12 November 2018 - 04:08 PM

Many thanks, Erwan, for the support and updates. Merci.

 

  - Mike Kennedy



#32 MJK

MJK

    Newbie

  • Members
  • 13 posts
  •  
    Ireland

Posted 12 November 2018 - 04:21 PM

Small query re the "disks" option:

 

I have a client reporting the following, but I have not been able to run many tests myself yet.

 

It seems that, if a VHD is attached/mounted, then "VMOUNT64 DISKS" (2014 build) reports the VHD slightly differently, depending on whether the command is run with or without ADMIN rights:

  - With admin rights; 1 DISK VIRTUAL DISK 500MB

  - Without admin rights: 1 DISK 500MB
 
I don't know if these strings are built inside VMOUNT or by Windows, and, if within VMOUNT, I don't know if VMOUNT is informed that the drive is a 'virtual' one when run without admin rights?
 
This is causing a small issue because the app that runs VMOUNT is parsing the response from the Disks command, and trying to verify that a "Virtual" drive has been attached/mounted successfully.
 
Thank you for any feedback. Let me know if I can run any specal tests, etc.
 
  - Mike

Edited by MJK, 12 November 2018 - 04:27 PM.


#33 erwan.l

erwan.l

    Platinum Member

  • Developer
  • 3041 posts
  • Location:Nantes - France
  •  
    France

Posted 12 November 2018 - 05:54 PM

 

Small query re the "disks" option:

 

I have a client reporting the following, but I have not been able to run many tests myself yet.

 

It seems that, if a VHD is attached/mounted, then "VMOUNT64 DISKS" (2014 build) reports the VHD slightly differently, depending on whether the command is run with or without ADMIN rights:

  - With admin rights; 1 DISK VIRTUAL DISK 500MB

  - Without admin rights: 1 DISK 500MB
 
I don't know if these strings are built inside VMOUNT or by Windows, and, if within VMOUNT, I don't know if VMOUNT is informed that the drive is a 'virtual' one when run without admin rights?
 
This is causing a small issue because the app that runs VMOUNT is parsing the response from the Disks command, and trying to verify that a "Virtual" drive has been attached/mounted successfully.
 
Thank you for any feedback. Let me know if I can run any specal tests, etc.
 
  - Mike

 

 

Hi Mike,

 

Are you able to copy/paste the output of vmount both with admin and non admin rights?

Also, altough I did not introduce much changes around this "disk" feature, download latest version (from 2018).

 

Regards,

Erwan

 

Edit (with both x86 and x64 versions)

 

non admin

vmount64 disks
0 []    DISK                            114480MB                                NON-REMOVABLE
1 []    DISK                            152627MB                                NON-REMOVABLE
2 []    DISK                            10240MB                                 NON-REMOVABLE

admin

vmount64.exe disks
0 [01020304]    DISK    WDC WDS120G2G0A-00JH30  114480MB                SATA            NON-REMOVABLE
1 [56B682DC]    DISK    Hitachi HDP725016GLA380 152627MB                SATA            NON-REMOVABLE
2 [CE41BBFB]    DISK    Virtual Disk            10240MB                 UNKNOWN         NON-REMOVABLE


#34 erwan.l

erwan.l

    Platinum Member

  • Developer
  • 3041 posts
  • Location:Nantes - France
  •  
    France

Posted 12 November 2018 - 06:02 PM

fixed in x86 version : should now display all datas even if not run as administrator

 

now fixing x64...

 

edit : x64 version fixed as well.

 

@Mjk

 

zip re uploaded...just re download...and report :)

 

I have not tested all functions thus as non admin so cannot tell which will work as non admin and which will work as admin.

 

Note that latest version will also report the physicaldrive id after attaching a vhd.

You can also choose to not assign a letter (and therefore possibly assign your letter afterwards).



#35 MJK

MJK

    Newbie

  • Members
  • 13 posts
  •  
    Ireland

Posted 12 November 2018 - 06:19 PM

WOW!!!!!  MERCI Beaucoup!!

 

Just to answer your earlier questions:

  - The little bits that I posted were actually copy-pasted from the DISKS outputs.

  - And, your outputs exactly matched the outputs that I saw - especially with the word "Virtual Disk" missing in the non-admin runs.

 

I'll get the client to try the latest download - thank you again, Erwan. [I hope this tweak does not break the program for other users].

 

  - Mike



#36 erwan.l

erwan.l

    Platinum Member

  • Developer
  • 3041 posts
  • Location:Nantes - France
  •  
    France

Posted 12 November 2018 - 06:28 PM



WOW!!!!!  MERCI Beaucoup!!

 

Just to answer your earlier questions:

  - The little bits that I posted were actually copy-pasted from the DISKS outputs.

  - And, your outputs exactly matched the outputs that I saw - especially with the word "Virtual Disk" missing in the non-admin runs.

 

I'll get the client to try the latest download - thank you again, Erwan. [I hope this tweak does not break the program for other users].

 

  - Mike

 

This is a minor tweak in one function (GetDiskProperty using IOCTL_STORAGE_QUERY_PROPERTY) called in the "disks" feature only.

The same tweak may be needed on the "partitions" feature later on

 

Next time in Dublin, the first Guinness is on you ;)



#37 MJK

MJK

    Newbie

  • Members
  • 13 posts
  •  
    Ireland

Posted 12 November 2018 - 08:41 PM

Great news that it's only a minor tweak to the "disks" command!

 

Re "partitions": The same app is using this command also, but, so far, I've not heard of any "admin" issue with it. Maybe with "disks" working better (without admin rights), perhaps the app will get further, and maybe the "partitions" option will throw some errors. If so I'll let you know.

 

Thank you again, Erwan, for the extremely fast responses and fixes!

 

And, on that Guinness: it would be my total pleasure to help you sample some really good "black stuff" in Dublin - any time! Don't forget... OK?

 

  - Mike



#38 Sergey Shikharev

Sergey Shikharev
  • Members
  • 2 posts
  • Location:Moscow
  •  
    Russian Federation

Posted 06 December 2018 - 08:21 PM

Hi!

The utility is great!

In Winpe 10 x64 works without problems, but in Winpe 10 x86 I received an error.

 

0948b1dfb6489907237088c9db4ae115.png



#39 Blackcrack

Blackcrack

    Frequent Member

  • Advanced user
  • 458 posts
  •  
    Germany

Posted 07 December 2018 - 07:59 AM

vmount is a great idea/program !

suggestion :
[ ] set a copyleft, the best GPL2 (also like Reactos) && give the code under Github
[ ] add /?,\?, --?, /help,\help, --help for the help of command line parameters , why "/" "\" and "--" ? One from the MS-Win and one of the Linux to have the possibel to use Linuxstyle too.
[ ] Default media folder like in linux, but with the possible for change and save in the regestry : as example : /mnt, \mnt ,media ,vdrives (so C:\vdrive) or other standard folder
[ ] Make it possible to use "/" too to have use in linuxstyle with this binary (make it more easy for linuxpeoples to come to WinNT)
[ ] support unc-path like //linuxserver/the/way/to/iso-name.iso
[ ] support "./../" or ".\..\" to have a possible for use short folder path in the subfolder


C:\windows\SysWOW64\vmount.exe /?
C:\windows\System32\vmount.exe /?

zip:\SysWOW64\vmount.exe [size] //for decide, the x86_64 is more bigger because the 64 extension
zip:\System32\vmount.exe [size] //for decide, the x86_64 is more bigger because the 64 extension
 

(take the \ and / as sub definitions and switches )

/f Folder to add as drive ( as subst equivalent or take subst as sub.binary )
/vf The virtual filesystem wheres mount the vfs,nfs,smb [,other] or iso fs
/ml Letter of the Mounted virtual Drive for the file vfs or Folder (right, why not add subst commands directly?)
/mf Folder of the Mounted virtual Drive for the file vfs or Folder (right, why not add subst commands directly?)
/def Add the Default-folder in front of Folder-mount and set it up in the registry (also if only use vmount /default:/vmount = C:\vmount\)
/lsmb List Samba shares by Server (ip or name with user:passwort possibility)
/lnfs List nfs shares by Server (ip or name with user:passwort possibility)
/p Make it permanent
/rp Remove the Permanent
/um unmount the current image(virtual or real) or mounted other thing (example: vmount -um x:\ or vmount /um C:\vmount\folder)


/lsmb
/lsmb 192.168.0.20 List exported smb folders from Server + /lsmb user:passwd@192.168.0.20/lnfs
/lnfs 192.168.0.20 List exported nfs folders from Server + /lnfs user:passwd@192.168.0.20/export/fs /ml=n: /p
/nfs Use the nfs-protocoll
/smb Use the smb-protocoll
/ftp Use the ftp-protocoll user:passwd@ip/folder/sftp mf:/sftp-donmainname.domain-folder3
/sftp Use the sftp-protocoll user:passwd@ip/folder mf:/sftp-donmainname.domain-folder2 /p
/webdav ... + [ ] enabling custom certificates [copy by first connect] a.s.o.

make it permanent in the regestry as example :
vmount /vf://linuxserver/the/iso-name.iso /ml:c /p
vmount /vf:C:\treat\tinker\iso-name.iso /ml:c
vmount /vf:C:\vmount\iso\iso-name.iso /ml:c /p
vmount /webdav:https:/webdavadress /ml:c /p

vmount /lsmb (if exist user specific exports "Please use user:passwd@ for show User Spezific exports"
vmount /lsmb user:passwd@192.168.0.20
vmount /smb user:passwd@192.168.0.20/the/fs /mf C:\vmount\windowssoft (create the folder and mount it with the switches)
vmount /smb user:passwd@192.168.0.20/the/fs /mf ./windowssoft (create the folder and mount it in this folder with the switches)
vmount /smb user:passwd@192.168.0.20/the/fs /mf \windowssoft (create the folder and mount it with the switches in the default vmount-folder)
vmount /smb user:passwd@192.168.0.20/the/fs /mf windowssoft (create the folder and mount it with the switches in the default vmount-folder)
vmount /smb user:passwd@192.168.0.20/the/fs /ml s: /p (create the folder and mount it with the switches as default letter (mount by next boot/permanent))
vmount /nfs user:passwd@192.168.0.20" vmount /vf 192.168.0.20/the/fs /ml n: /p " (create the folder and mount it with the switches as default letter (mount by next boot/permanent))
vmount /lnfs 192.168.0.20
vmount /lnfs user:passwd@192.168.0.20
vmount /nfs user:passwd@192.168.0.20/the/fs /mf C:\vmount\linuserver1" (create the folder and mount it with the switches)
vmount /nfs user:passwd@192.168.0.20/the/fs /mf ./linuserver1" (create the folder and mount it in this folder with the switches)
vmount /nfs user:passwd@192.168.0.20/the/fs /mf \linuserver2" (create the folder and mount it with the switches in the default vmount-folder)
vmount /nfs user:passwd@192.168.0.20/the/fs /mf windowssoft" (create the folder and mount it with the switches in the default vmount-folder)
vmount /nfs user:passwd@192.168.0.20/the/fs /ml s: /p " (create the folder and mount it with the switches as default letter (mount by next boot/permanent))
vmount /sftp user:passwd@192.168.0.20/the/fs /ml n: /p " (create the folder and mount it with the switches as default letter (mount by next boot/permanent))
vmount /sftp user:passwd@192.168.0.20/the/2fs /ml o: /p " (create the folder and mount it with the switches as default letter (mount by next boot/permanent))
vmount /sftp user:passwd@192.168.0.20/the/3fs /ml p: /p " (create the folder and mount it with the switches as default letter (mount by next boot/permanent))

with this could it possible for handle mounting Sambadrives
or handle installed Samba software as client software as example
also NFS as nfs-client and this permanent also by the next boot in the cmd..

and handled by cmdline in cmd ... :)

need only in Reactos the "MS Virtual Disk API" reprogramming, up to there have we a client side mounter ....
and this vmount can supporting the "MS Virtual Disk API" reprogramming branch ..

this vmount have huge potential !
you can initiate in reactos to programming a MS Virtual Disk API to have at start something..
you must only speak in the #reactos and introduce your program if it's so far..
and reactos is in beta and this is not long . ;)


so, just a suggestion for you :)

best regards
Blacky

#40 antonino61

antonino61

    Gold Member

  • Advanced user
  • 1525 posts
  •  
    Italy

Posted 08 December 2018 - 01:34 AM

excuse me, I am no programmer, I am a mere chainloading enthusiast. After reading the thread thru, I perceive the great potential of vmount64.exe. I usually boot a vhd containing the core boot files and directories (the strictly necessary files to let windows reach the interface stagem, while most of the rest of windows, the whole program files, program files (x86), programdata and users on the drive hosting the above-mentioned vhd. the main reason for this "hybridization", as Wonko would call it, is to have a vhd as tiny as possible in order to reduce preramloading times. So far, I have succeeded booting the vhd both as ramdisk and as filedisk thru grub4dos. In order to make the system tidier and sever "windows stuff" from whatever else (work files, pics, videos, or whatever can be relocated thru the gui), i am thinking of having it on another vhd. Can vmount be useful for this purpose. If so, pls tell me how to go about. If it is not what I need, do u think that anything of the kind

 

find --set-root --ignore-floppies /vhd.vhd
find --set-root --ignore-floppies /vhd1.vhd
map --mem --top (hd0,0)/vhd.vhd (hd0)
map (hd0,1)/vhd.vhd (hd1)
map --hook 
root (hd0,0)
chainloader /bootmgr
 
for ramloading the core (vhd) and fileloading the rest of the OS (vhd1), or, for that mattter,
 
find --set-root --ignore-floppies /vhd.vhd
find --set-root --ignore-floppies /vhd1.vhd
map (hd0,0)/vhd.vhd (hd0)
map (hd0,1)/vhd.vhd (hd1)
map --hook 
root (hd0,0)
chainloader /bootmgr
 

for FILEDISKing both of them, wil do?

 

One thing I know for sure, if the content of vhd.vhd does not see vhd1.vhd at some point of the bootup, it actually will not boot up.

 

suggestions are more than welcome



#41 antonino61

antonino61

    Gold Member

  • Advanced user
  • 1525 posts
  •  
    Italy

Posted 08 December 2018 - 01:37 AM

another thing that encouraged me to ask  this question is the wording I have seen above (something like parent and child in the vmount thread), so I thought, could, in my case and with the correct menu.lst instructions, one of the 2 VHDs of mine be a child or parent of the other? if so, which one? 


Edited by antonino61, 08 December 2018 - 01:38 AM.


#42 misty

misty

    Gold Member

  • Developer
  • 1066 posts
  •  
    United Kingdom

Posted 08 December 2018 - 08:10 AM

another thing that encouraged me to ask this question is the wording I have seen above (something like parent and child in the vmount thread), so I thought, could, in my case and with the correct menu.lst instructions, one of the 2 VHDs of mine be a child or parent of the other? if so, which one?


@antonino61
As far as I recall, a Child disk is a differencing type disk. Lets say that you have a master .vhd with a clean install of windows and you want to test some new software without actually making any changes to the master disk. In this case, a differencing (or Child) disk can be created. The differencng disk will initially appear empty, however when booted it will appear to contain exactly the same files as the parent disk it is linked to. Any changes made to the OS when the differencing disk is booted will be saved only to the differencing disk and not written back to the parent.

In post #40, you mention "...In order to make the system tidier and sever "windows stuff" from whatever else (work files, pics, videos, or whatever can be relocated thru the gui), i am thinking of having it on another vhd....". If your proposed setup has one .vhd with OS files and one .vhd with the "whatever else", then I see no real benefit to using a differencing disk.

I started a topic about differencing disks a while ago - it may answer some of your questions. See VHD Differencing Disks and Native VHD Boot

:cheers:

Misty

#43 erwan.l

erwan.l

    Platinum Member

  • Developer
  • 3041 posts
  • Location:Nantes - France
  •  
    France

Posted 08 December 2018 - 12:20 PM

another thing that encouraged me to ask  this question is the wording I have seen above (something like parent and child in the vmount thread), so I thought, could, in my case and with the correct menu.lst instructions, one of the 2 VHDs of mine be a child or parent of the other? if so, which one? 

 

About differencing VHD's, i have wrote a serie of articles here where I combine PXE, starwind and Windows virtual disk apis to have multiple computers boot differencing disks all based on the same "master" disk.

 

One thing to keep in mind thus : to be able to use differencing disks, you need a host (or software) capable of doing so.

Most softwares out there are able to use plain VHD (which is more or less a 1:1 disk image) but not all them are able to use differencing (aka child) VHD's.

And I am not even mentionning the dynamic disks and/or VHDX format...

 

In short, what I mean here is that I am not sure if Grub4DOS is able to handle differencing disks.



#44 erwan.l

erwan.l

    Platinum Member

  • Developer
  • 3041 posts
  • Location:Nantes - France
  •  
    France

Posted 08 December 2018 - 12:22 PM

excuse me, I am no programmer, I am a mere chainloading enthusiast. After reading the thread thru, I perceive the great potential of vmount64.exe. I usually boot a vhd containing the core boot files and directories (the strictly necessary files to let windows reach the interface stagem, while most of the rest of windows, the whole program files, program files (x86), programdata and users on the drive hosting the above-mentioned vhd. the main reason for this "hybridization", as Wonko would call it, is to have a vhd as tiny as possible in order to reduce preramloading times. So far, I have succeeded booting the vhd both as ramdisk and as filedisk thru grub4dos. In order to make the system tidier and sever "windows stuff" from whatever else (work files, pics, videos, or whatever can be relocated thru the gui), i am thinking of having it on another vhd. Can vmount be useful for this purpose. If so, pls tell me how to go about. If it is not what I need, do u think that anything of the kind

 

find --set-root --ignore-floppies /vhd.vhd
find --set-root --ignore-floppies /vhd1.vhd
map --mem --top (hd0,0)/vhd.vhd (hd0)
map (hd0,1)/vhd.vhd (hd1)
map --hook 
root (hd0,0)
chainloader /bootmgr
 
for ramloading the core (vhd) and fileloading the rest of the OS (vhd1), or, for that mattter,
 
find --set-root --ignore-floppies /vhd.vhd
find --set-root --ignore-floppies /vhd1.vhd
map (hd0,0)/vhd.vhd (hd0)
map (hd0,1)/vhd.vhd (hd1)
map --hook 
root (hd0,0)
chainloader /bootmgr
 

for FILEDISKing both of them, wil do?

 

One thing I know for sure, if the content of vhd.vhd does not see vhd1.vhd at some point of the bootup, it actually will not boot up.

 

suggestions are more than welcome

 

We might be deviating from the main topic here (vmount as a windows command line tool).

Vmount can surely help you perform some tasks around your VHD's but remains a windows command line tool so not related to Grub4DOS.



#45 erwan.l

erwan.l

    Platinum Member

  • Developer
  • 3041 posts
  • Location:Nantes - France
  •  
    France

Posted 08 December 2018 - 12:31 PM

vmount is a great idea/program !

suggestion :
[ ] set a copyleft, the best GPL2 (also like Reactos) && give the code under Github
[ ] add /?,\?, --?, /help,\help, --help for the help of command line parameters , why "/" "\" and "--" ? One from the MS-Win and one of the Linux to have the possibel to use Linuxstyle too.
[ ] Default media folder like in linux, but with the possible for change and save in the regestry : as example : /mnt, \mnt ,media ,vdrives (so C:\vdrive) or other standard folder
[ ] Make it possible to use "/" too to have use in linuxstyle with this binary (make it more easy for linuxpeoples to come to WinNT)
[ ] support unc-path like //linuxserver/the/way/to/iso-name.iso
[ ] support "./../" or ".\..\" to have a possible for use short folder path in the subfolder


C:\windows\SysWOW64\vmount.exe /?
C:\windows\System32\vmount.exe /?

zip:\SysWOW64\vmount.exe [size] //for decide, the x86_64 is more bigger because the 64 extension
zip:\System32\vmount.exe [size] //for decide, the x86_64 is more bigger because the 64 extension
 
with this could it possible for handle mounting Sambadrives
or handle installed Samba software as client software as example
also NFS as nfs-client and this permanent also by the next boot in the cmd..

and handled by cmdline in cmd ... :)

need only in Reactos the "MS Virtual Disk API" reprogramming, up to there have we a client side mounter ....
and this vmount can supporting the "MS Virtual Disk API" reprogramming branch ..

this vmount have huge potential !
you can initiate in reactos to programming a MS Virtual Disk API to have at start something..
you must only speak in the #reactos and introduce your program if it's so far..
and reactos is in beta and this is not long . ;)


so, just a suggestion for you :)

best regards
Blacky

 

The initial intention is to offer an easy command line tool to work around VHD's as I felt batching diskpart was a real PITA.

With time, some (little) extra features appeared but as I have been "educated" by Wonko, I always keep the "featuritis" in my mind, slapping my developper fingers when I am about to introduce a new feature which sometimes may appear exotic afterwards.

 

About "mounting" now : initially vmount could "only" mount VHD's.

Later on, I did add another mount feature for DOS devices.

I was even about to release a new version which can also mount volumes.

 

Adding SMB would be extremely easy but would it be called "featuritis" ?

Adding NFS is really nicely challenging (to me) and I feel I should be able to use windows API's but again would this be called "featuritis" ?

Same goes with FTP, SSH, etc : it becomes difficult, there are other tools who do it well and this is now really deviating from the original intention so it is unlikely I get there.

 

Still, I know where you are coming from (or going to..) and that makes sense : you are more or less trying to reproduce the great "mount" linux tool which can mount a drive using lots of different protocols.

 

About your initial suggestions (GPL, opensource, slash and backslash, etc) : all valid points and I may go on that road in the coming months.

 

ReactOS is another thread : I am quite impressed with this community, as a dev guy I am definitely tempted, but time is scarce and like most of us, developing freewares is a hobby which kicks in after my day job is over and after my family duties so status is "on hold" for now.



#46 erwan.l

erwan.l

    Platinum Member

  • Developer
  • 3041 posts
  • Location:Nantes - France
  •  
    France

Posted 08 December 2018 - 12:43 PM

@antonino61
As far as I recall, a Child disk is a differencing type disk. Lets say that you have a master .vhd with a clean install of windows and you want to test some new software without actually making any changes to the master disk. In this case, a differencing (or Child) disk can be created. The differencng disk will initially appear empty, however when booted it will appear to contain exactly the same files as the parent disk it is linked to. Any changes made to the OS when the differencing disk is booted will be saved only to the differencing disk and not written back to the parent.

In post #40, you mention "...In order to make the system tidier and sever "windows stuff" from whatever else (work files, pics, videos, or whatever can be relocated thru the gui), i am thinking of having it on another vhd....". If your proposed setup has one .vhd with OS files and one .vhd with the "whatever else", then I see no real benefit to using a differencing disk.

I started a topic about differencing disks a while ago - it may answer some of your questions. See VHD Differencing Disks and Native VHD Boot

:cheers:

Misty

 

As you have rightfully highlighted, there is no real benefit to split files over a parent and a child disk as you could achieve the same with 2 plain disks (operating system on C drive, data on D drive for example).

 

My view is that the main purpose here is about snapshot, intending to either merge or revert at some point.

 

Now there are some fun scenarios like boot multiple computers over the network using one master/parent and multiple differencing/child disks but again this would be for fun i.e I would not do in production just like I would not a vmware machine on a snapshot for ever.

 

IO wise, this is consuming and the risk that the parent and child lose sync is real in which case you would lose all data in your child.

 

Your post about "VHD differencing disks and Native VHD boot" is always a very good place to start !

 

Things to remember :

-Native (vhd) boot is only available on some windows version (although it has now being extensively discussed and documented to "work around" that ...)

-Native (vhd) boot is a Microsoft feature and reproducing this with other boot loaders require bits and tricks while not forcibly achieving all MS goodies



#47 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 16066 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 08 December 2018 - 01:39 PM

I guess that I have to make a few notes about "featuritis".

 

It is not IMHO a "bad" thing in itself to have the most features as possible (or even more).

 

The issues arise when one of the two main symptoms of featuritis appear:

1) the documentation of the features becomes confusing or is missing/lacking or lacks of proper examples
2) the UI (if GUI or the command line syntax if CLI) becomes confusing

 

The above derive usually from one of the following:

a. the implementation (it doesn't really matter if because the developer used an improper approach or because the actual final goal - i.e. what the tool is aiming to do - is particularly complex) makes it so that it's use in a "Pareto principle" scenario becomes inconvenient to the large majority of users

b. the complexity becomes so relevant that the developer (in absolutely good faith, mind you) resolves to make "automagic" parts that would be otherwise better left "manual" or "optional" or the opposite:

c.  i.e. in order to leave the more choices to the user the developer introduces an absurd number of settings (or command line parameters) often mutually exclusive that when used together produce an error (which typically is represented as "Oh, oh, something wrong happened") or even worse, go through but produce not was what expected.

 

And now - only to confirm my nature of old and grumpy - I will have to remember to everyone that ONLY using the "native" VHD capabilities of "modern" Windows OS you are actually using a VHD, all the grub4dos mapping stuff is NOT about VHD's, but rather to RAW (or dd-like) images as "plain", "fixed" VHD's are nothing but RAW images with a "descriptive" CONECTIX sector appended.

When grub4dos maps the VHD (try it in a command line) to a hard disk, the grub4dos will show you a warning about an excess sector.

 

 

 

One thing I know for sure, if the content of vhd.vhd does not see vhd1.vhd at some point of the bootup, it actually will not boot up.

 

I presume that this is related to this:

http://reboot.pro/to...b4dos/?p=208399

 

Then it means that the vhd.vhd and the vhd1.vhd contents are not "properly" divided :w00t:

 

A typical case is (on real hardware) having two hard disks, each one with a single partition, that will get drive letters C: and D: and the Windows is installed in such a way that the users directory is on D:.

Then when you physically disconnect the disk with D: the system cannot boot (or boots to a temp profile, etc.).

 

The idea of making two separate images (in order to make the first one smaller and thus save time in booting when the first one is loaded into RAM) is to have on the first one a completely self-standing (even if minimal) Windows install and have all the not-needed at booting time files on the other.

 

:duff:

Wonko



#48 Blackcrack

Blackcrack

    Frequent Member

  • Advanced user
  • 458 posts
  •  
    Germany

Posted 08 December 2018 - 02:54 PM

+ /um unmount the current image(virtual or real) or mounted other thing (example: vmount -um x:\ or vmount /um C:\vmount\folder)
(don't forget, how i have read more the top it works not really, there must be a "unmount" option where make it able to clean remove the mounted )
not only, if i see on reactos, coult reacts need the whole api's and the command line tool vmount also to bring up the other api's in Reactos
to have the possible in cmd mounting and umount different things.. and there is vmount a perfect iniziator where helps by installed samba
and other things to handle that and make it able to programming behind, by possible the apis' where have you bring in with vmount,
also for the developers .. it the are make it possible.. well i have a really bad reputation in reactos because any one have make
a slander or spreading of vicious rumors about me, how ever.. reactos it's really important than that I would go against it
because one bastard of developer and other who believe it.. how ever.. well ..
and vmount can be much more and more mighty, as the simple mount from linux it can use not also the job's from curlfs,
vmount can use other bibliotekes/libararys in WinNt, and can be in this directions be a wollmilchsau(german) a woolmilkpig 1,2 or 3 or more in one..
so can it be a tool for cmd who can handle many and it need only one word, vmount what can mount much more as as is possible in linux with the mount.
And therewith give directly the possible to enhance the winnt in cmd as in linux at moment possible ..

and since Reactos is a WinNT 2003 server replica, you can program that in xp .. maybe in Virtualbox ..
this could be later compatible with Vista/Win7 and 10 .. and ther with it is easy copyable in the Win%System% folder
as portable in zip and if anyone want, as setup ...

and Wonko told also it's not a bad thing..
by 1 Docu, yes it needs, this is also why i have setting up stwiches by my docu, to have a clean way to use different switches like it should be
and this also documented
by 2 and yes, if lack the documentation it become confuse without some /m$ switches, because this it is need really clean switches and documentation by /? and --help or what ever also possible is.


and for sftp and ftp needs only a couples dll's where be able to copy in and vmount is then dependent, but then extends the system as such, so, why not?
samba must be installed also in reactos for works and there be stay vmount as the person in the middle to have a easy cmd-manager
for samba to hang in different sambashares from a server .. later can be anyone programming a service for WinNT to have a unc-path possibility like in WinNT (what i like more as hang in drives with letter)
with vmount could it possible to hang in samba shares in folders, what's more effective... like nfs.. apropo NFS for WinNT(xp) have i store anywhere in my basement server ..
nfs manager vmount.. if i fount the nfs, could you use to build in or copy by side to use is also for xp/2003 server..version ..
 
there :

blackysgate.de/files/folder-root/
https://github.com/r...e/master/dll/np
 
there be also url for open source drivers ..
 

best regards
Blacky

#49 antonino61

antonino61

    Gold Member

  • Advanced user
  • 1525 posts
  •  
    Italy

Posted 08 December 2018 - 04:53 PM

As usual, Wonko is correct in saying that the full potential of vhd deployment is in its windows booting, not in g4d loading, whether in ram or as filedisk. I tried it both last night, and I gotta say that in both cases there is no proper persistence. I use 2 twin vhds (of the type "the first one a completely self-standing (even if minimal) Windows install") and on the host drive I have "all the not-needed-at-booting-time files". I make the former smaller and smaller by alternatively placing the not needed... files on the host drive save the needed... files which are the only ones remaining on the core vhd. it works like a charm on "normal" windows vhd booting, but before I realized this I had tried to do the same via g4d - to no avail. It would boot in a scrappy way, not allowing me to do anything on the newest version. then again, my two cents on wonko about this.  Now, just in case I wanted to place all the not-needed files on a second vhd (here you go with the 2 images of the your post before), when I preramload the core vhd, will g4d be able to find all the not needed files in time on the latter vhd if I have the following menu.lst

 

find --set-root --ignore-floppies /vhd.vhd

find --set-root --ignore-floppies /vhd1.vhd
map --mem --top (hd0,0)/vhd.vhd (hd0)
map (hd0,1)/vhd1.vhd (hd1)
map --hook 
root (hd0,0)
chainloader /bootmgr

 

?

 

this is my core question in the end.

 

as of now of course I have no problem, as the junctions on the core vhd are not pointing to a second vhd that wants mounting, but on the rest of the partition hosting the vhd, so the files and folders they point to are always at hand.

N.B.: to be as accurate as i can, I do not wish to ramload the second vhd as well, nor would I be able to, as it would hugely exceed the amount of ram on my system.

Thank you all in general (and wonko in particular) in advance for your patience.


Edited by antonino61, 08 December 2018 - 04:58 PM.


#50 misty

misty

    Gold Member

  • Developer
  • 1066 posts
  •  
    United Kingdom

Posted 08 December 2018 - 05:11 PM

@antonino61
About your Grub4dos commands -
 
find --set-root --ignore-floppies /vhd.vhd
Search all accessible volumes for the file vhd.vhd - located in the root of the volume. Set the volume on which the first instance of vhd.vhd is found as the root device.
 
find --set-root --ignore-floppies /vhd1.vhd
Search all accessible volumes for the file vhd1.vhd - located in the root of the volume. Set the volume on which the first instance of vhd1.vhd is found as the root device. This could potentially result in changing the root device that was set in the preceding command.
 
map --mem --top (hd0,0)/vhd.vhd (hd0)
Ignore the root device set in the preceding two command(s) and use a hardcoded path to /vhd.vhd.
 
map (hd0,1)/vhd1.vhd (hd1)
Ignore the root device set in the first two command(s) and use a hardcoded path to /vhd1.vhd.

The find --set-root commands are pointless in your setup. Maybe use instead -
map --mem --top (hd0,0)/vhd.vhd (hd0)
map (hd0,1)/vhd1.vhd (hd1)
map --hook 
root (hd0,0)
chainloader /bootmgr
:cheers:

Misty





Also tagged with one or more of these keywords: vhd

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users