Jump to content











Photo
- - - - -

Create Grub4Dos CDFS partition


  • Please log in to reply
13 replies to this topic

#1 snivlem

snivlem

    Newbie

  • Members
  • 10 posts
  •  
    Spain

Posted 03 July 2018 - 06:44 PM

Hi all,

I'm trying to do this as seen in the video below, so far with no success.

Please note that I'm doing it on a Windows 7 OS.

If someone could help it would be greatly appreciated.

 

https://www.youtube....h?v=FIcWNDdfUBQ



#2 Wonko the Sane

Wonko the Sane

    The Finder

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

Posted 03 July 2018 - 07:49 PM

Well, that video is rather pointless.

 

It sums up to:

1) use gparted

2) I am not telling you what is in this needed step

3) nor I am going to tell you about this step

4) and of course I omit this vital step

5) use grub4dos

6) enjoy.

 

The general idea is as in this thread: http://reboot.pro/to...os-isohybrided/

BUT starting from here (the first part is a different thing): http://reboot.pro/to...brided/?p=88531

that::

1) any extent on a disk can be mapped to one of the four entries in the MBR

2) any entry in the MBR oartition table that has a Partition ID of 00 will be ignored by Windows but will normally be mounted (if it contains something valid) by Linux

3) the above - summed with the capabilities of grub4dos - allows most (if not all) Linux "Live" CD/DVD to be booted from hard disk without modifications

 

The extent on disk that is mapped to a (free) entry of the MBR can be:

a. the extent of a contiguous .iso file

OR:

b. an area on disk that is currently unallocated (and to which a .iso is copied, from the beginning)

 

In the referenced thread (and in most of the derivatives, including Easy2boot) approach #a. is used, in the video linked to, approach #b. is used instead (without detailing how to actually do it).

 

Prerequisites:

P1) some unallocated space on disk (if needed one must resize an existing partition to create it) with enough space (i.e. equal to or larger than the intended .iso)

P2) a free entry in the MBR partition table

 

Steps:

S1) get to know the exact extent (in bytes or sector) of the unallocated space (offset and size)

S2) create a partition entry with ID 00 with the offset and size above

S3) write (dd) to that extent a bootable Linux .iso file

S4) boot to grub4dos [1] and use it to map the extent to a (virtual) CD-like device (usually drive (0xff)) then chainload the contents

 

I need to know if this is exactly what you want to achieve and if you have any doubt in the above steps (ask in case something is not clear to you).

If everything is clear to you, then we can go on and enter in the details on HOW exactly the prerequisites can be fulfilled and the steps be performed.

 

:duff:

Wonko

 

[1] How to boot to grub4dos from an otherwise booting Windows 7 machine (BIOS) can be achieved in several ways, the BEST (and recommended) one (because it is the least intrusive) is this one:

 http://reboot.pro/to...sults/?p=184060

(anything else is more complex or involves modifying existing files or "system reserved" areas on disk, this method is simple, you only need to add two files to the root of the volume where the BOOTMGR in use is)



#3 snivlem

snivlem

    Newbie

  • Members
  • 10 posts
  •  
    Spain

Posted 03 July 2018 - 08:16 PM

I need to know if this is exactly what you want to achieve and if you have any doubt in the above steps (ask in case something is not clear to you).

My actual goal is to create a CDFS partition on an external hard disk (for backup purposes) because I want an autorun.inf file and an EXE in the CDFS partition.

The reason is that Windows 7 doesn't "autorun" the EXE because that function is disabled unless the drive is formatted as CDFS.

 

EDIT:

 

I have another external hard disk that is made just like that (two partitions: one large NTFS partition that stores the backup files and another small CDFS partition that does the autorun).

I don't know if it would be possible to copy the CDFS partition to my other EDD and edit/modify/rename the autorun.inf file and the EXE to my own created files.


Edited by snivlem, 03 July 2018 - 09:06 PM.


#4 steve6375

steve6375

    Platinum Member

  • Developer
  • 7566 posts
  • Location:UK
  • Interests:computers, programming (masm,vb6,C,vbs), photography,TV,films
  •  
    United Kingdom

Posted 03 July 2018 - 09:50 PM

I have never seen Windows mount a CDFS filesystem on a hard disk let alone run an autorun.inf from what is 'non-removable' media.

 

Can you describe this external hard disk that you have?

What is it exactly and how was it made?



#5 snivlem

snivlem

    Newbie

  • Members
  • 10 posts
  •  
    Spain

Posted 03 July 2018 - 10:30 PM

I have never seen Windows mount a CDFS filesystem on a hard disk let alone run an autorun.inf from what is 'non-removable' media.
 
Can you describe this external hard disk that you have?
What is it exactly and how was it made?


It's an EHD I bought called HP SimpleSave. It has backup software on it and as I said it has two partitions. The CDFS partition has the EXE that launches the program.
When I connect the disk to my PC the launcher is shown in the autoplay/autorun window and asks if I want to run it.
In Windows 7 this function works only with optical devices (CD/DVD) and in this case with a drive that is formatted as a CD-ROM-like file system or CDFS.


Edited by snivlem, 03 July 2018 - 10:45 PM.


#6 steve6375

steve6375

    Platinum Member

  • Developer
  • 7566 posts
  • Location:UK
  • Interests:computers, programming (masm,vb6,C,vbs), photography,TV,films
  •  
    United Kingdom

Posted 03 July 2018 - 11:05 PM

I think you are mistaken in thinking that the HP drive has a normal CDFS partition. Most likely is has special firmware which makes the enclosure appear as two separate USB devices (2 endpoints). One as a CD and one as a Hard Disk.

This is similar to the firmware used in U3 USB Flash drives or Zalman/IODD HDD enclosures which can emulate a CD\DVD drive.

 

I suspect if you used some software such as RMPrepUSB (Drive Info - 0) to look at the HP HDD partitions, they will appear perfectly normal and will not have any 'CDFS' partition table entry. If they did, then you could 'clean' the drive by writing 0's to the first sector (or Diskpart clean or use a linux partition tool) and the CDFS filesystem would be wiped.

 

Secondly, the video you saw shows LINUX has mounted the CDFS partition, made by grub4dos partnew, as an ISO9660 partition - this is perfectly normal for LINUX, but Windows will just completely ignore it. 



#7 snivlem

snivlem

    Newbie

  • Members
  • 10 posts
  •  
    Spain

Posted 03 July 2018 - 11:32 PM

I think you are mistaken in thinking that the HP drive has a normal CDFS partition. Most likely is has special firmware which makes the enclosure appear as two separate USB devices (2 endpoints). One as a CD and one as a Hard Disk.

 

I suspect if you used some software such as RMPrepUSB (Drive Info - 0) to look at the HP HDD partitions, they will appear perfectly normal and will not have any 'CDFS' partition table entry. 

 

I checked with GParted and no CDFS partition is seen. Just the NTFS partition. So it looks that you're right.



#8 snivlem

snivlem

    Newbie

  • Members
  • 10 posts
  •  
    Spain

Posted 03 July 2018 - 11:36 PM

the video you saw shows LINUX has mounted the CDFS partition, made by grub4dos partnew, as an ISO9660 partition - this is perfectly normal for LINUX, but Windows just will just completely ignore it. 

 

So can't it be done in Windows? Maybe using a Linux virtual machine?



#9 snivlem

snivlem

    Newbie

  • Members
  • 10 posts
  •  
    Spain

Posted 03 July 2018 - 11:52 PM

Would it be possible to somehow copy the CDFS part of my HP SimpleSave EHD to the other EHD?

Maybe using a method like this?: http://reboot.pro/to...ded/#entry86188



#10 steve6375

steve6375

    Platinum Member

  • Developer
  • 7566 posts
  • Location:UK
  • Interests:computers, programming (masm,vb6,C,vbs), photography,TV,films
  •  
    United Kingdom

Posted 04 July 2018 - 08:13 AM

Even if you could copy the CD drive sectors, it would not be of any use unless you had a drive like the HP SimpleSave with special firmware AND had their factory software so you could update the virtual CD drive contents.

 

The best way to achieve what you want to do is to purchase a Zalman or IODD HDD drive enclosure and then create an ISO file with your autorun.inf and other files inside it and then mount it as a CD\DVD using the Zalman\IODD. It will then appear as a USB CD\DVD to Windows.

https://rmprepusb.bl...disk-drive.html



#11 Wonko the Sane

Wonko the Sane

    The Finder

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

Posted 04 July 2018 - 12:46 PM

Most probably the device at hand has a controller that shows two LUN's, one is a CD-like device and one is a harddisk-like one, as Steve6375 mentioned similar to how quite a few USB  stick controllers can be programmed.

 

But the "feature" can be "manipulated" in the Windows Registry:

http://www.samlogic....typeautorun.htm

https://docs.microso...ll/autoplay-reg

 

But if the idea is that you plug the hard disk into *any* Windows 7 computer and it will autorun, then you need something capable of emulating a CD drive (lie the mentioned IODD/Zalman) and in any case you cannot be sure it will work because - as seen above - a specific machine can well have been set (actually should have been set) to disable autorun/autoplay on ALL media.

 

Again it is not fully-fully clear (to me at least) the actual final goal.

If the idea is that you chose this approach to "automate" some form of backup (i.e. the use simply connects the hard disk and the backup program starts[1]) you can either use the NoDriveType Registry or a program that monitors the connection and triggers an action as soon as a given device is connected, using USBdeview or similar.

 

:duff:

Wonko

 

[1] If this is the case the user that *needs* to be there to connect the USB cable can well also open the drive and start a program IMHO



#12 snivlem

snivlem

    Newbie

  • Members
  • 10 posts
  •  
    Spain

Posted 04 July 2018 - 10:00 PM

Thanks guys for the help. All is clear now.



#13 snivlem

snivlem

    Newbie

  • Members
  • 10 posts
  •  
    Spain

Posted 04 July 2018 - 10:09 PM

If the idea is that you chose this approach to "automate" some form of backup (i.e. the use simply connects the hard disk and the backup program starts[...]) you can [...] use [...] a program that monitors the connection and triggers an action as soon as a given device is connected

 

I found this to be the best if not only option.

 

Freeware: http://www.visualdes...run-in-Windows/

Trialware: http://www.samlogic....run-creator.htm



#14 Wonko the Sane

Wonko the Sane

    The Finder

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

Posted 07 July 2018 - 10:27 AM

I found this to be the best if not only option.

 

Freeware: http://www.visualdes...run-in-Windows/

Trialware: http://www.samlogic....run-creator.htm

 

Yep, good :) .

The mentioned Nirsoft USBDeview would also do, I believe:

https://www.nirsoft....vices_view.html

 

Also, specifically targeted to (among other things) automated backups:

https://mattcollinge...ect-and-launch/

 

The above is in theory "safer" than anything enabling autorun.inf or similar as the actual launched script resides on the internal disk AND it is triggered only if a given Volume is found.

 

Also, Uwe Sieber's excellent USBLDM:

https://www.uwe-sieb...e/usbdlm_e.html

can also enable autorun.inf "selectively" and/or do many more things:

https://www.uwe-sieb...p_e.html#config

 

:duff:

Wonko






0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users