Solved

Change System Ramdisk Drive Letter in NTLDR

Posted on 2008-06-19
15
2,085 Views
Last Modified: 2010-04-21
How can I change the system drive letter in BartPE from X: to something else? (Such as R:) I have a program that requires the use of X: and wish to run it in BartPE.

What area of the NTLDR file should I hexedit (if necessary)?

Is it possible to use a plugin for this? (even though the letter is assigned before the GUI?
0
Comment
Question by:AllKnowing1
  • 8
  • 4
  • 2
  • +1
15 Comments
 
LVL 80

Assisted Solution

by:David Johnson, CD, MVP
David Johnson, CD, MVP earned 150 total points
ID: 21824152
13. Under the Start menu, click Run, type in regedit and click OK
14. Open the following: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Ramdisk\Parameters
To set the size of the Ram Disk Drive, right click on DiskSize and choose Modify. Type in the new size under Value data. The maximum is 3,200,000 (in hexadecimal) which equals 32MB
15. If you need to, modify the DriveLetter enrty too. (the default is "Z")
16. Now navigate to:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Fastfat
change the value of Start from 4 to 1
17. Exit the Registry Editor and Reboot

You will have to edit this in the registry on your PE

This link has a good tutorial http://www.911cd.net/forums//index.php?showtopic=11048

http://www.picobay.com/projects/2006/06/how-to-make-windows-xp-ram-disk-drive.html

Open in new window

0
 
LVL 7

Author Comment

by:AllKnowing1
ID: 21825177
This is not what I am looking for. There is a simpler way of doing the solution you are posting, but that is for the extra drive in PE. I need to change the SYSTEM drive letter from X: (which is also a ramdrive) (not the temp ramdrive (B:))
0
 
LVL 44

Expert Comment

by:scrathcyboy
ID: 21827519
Bart PE doesn't use NTLDR to get the system drive letter.  The system drive letter in NTLDR is ALWAYS specified by the REAL physical disk assignment in the BOOT.INI file.

It would almost NEVER be X in windows.  If you are finding that X is the system drive, it is BartPE, not NTLDR.

www.pcguide.com/vb/showthread.php?t=55329
forums.tweakguides.com/showthread.php?t=3296
www.annoyances.org/exec/forum/winxp/1135666163
0
NAS Cloud Backup Strategies

This article explains backup scenarios when using network storage. We review the so-called “3-2-1 strategy” and summarize the methods you can use to send NAS data to the cloud

 
LVL 7

Author Comment

by:AllKnowing1
ID: 21831275
OK. There is no boot.ini file that I can find in BartPE though. Any suggestions? These are the files I have on the root of my usb drive that boots BartPE: (I am showing all hidden files)

bartpe.iso
ntdetect.com
ntldr
startrom.com
winnt.sif

inside of winnt.sif:

[SetupData]
BootDevice = "ramdisk(0)"
BootPath = "\i386\System32\"
OsLoadOptions = "/noguiboot /fastdetect /minint /rdexportascd /rdpath=bartpe.iso"
0
 
LVL 24

Expert Comment

by:Kenneniah
ID: 21831463
It's not a setting in BartPE, it's hard coded into Windows PE (BartPE is basically just a customized version of Microsoft's).
http://support.microsoft.com/kb/892846
0
 
LVL 7

Author Comment

by:AllKnowing1
ID: 21833904
So my question remains. I have a fully custom build of BartPE and need to not use x: . I need any other drive letter. How do I go about doing this? Copy files from somewhere and replace on my build?
0
 
LVL 24

Expert Comment

by:Kenneniah
ID: 21834077
Basically, you can't. Even if you could just change the letter by a hex edit, the PE environment would be messed up due to the hardcoded WMI paths. You have to remember Microsoft made the preinstallation environment for one purpose only.....preinstallation. It wasn't made to be customizable for using troubleshooting tools. While some people (BartPE etc.) have customized it to a degree, they can't reverse engineer Microsoft files (well legally anyway, which would cause the site to be shut down). So in short, it can't legally be done.
0
 
LVL 7

Author Comment

by:AllKnowing1
ID: 21834381
I notice all software and other system dependent files point to the environment variable %SYSTEMDRIVE%. I still think it is "legally" possible. If I have no further replies, I will accept your answer Kenneniah. I have noticed many other users have asked this question on BartPE forums. A solution has been found, but I am unable to find working links. Just trying to resurrect a dead topic I guess.
0
 
LVL 24

Accepted Solution

by:
Kenneniah earned 350 total points
ID: 21834573
Yeah, the %SYSTEMDRIVE% variable is pointed to a lot, but not to set it. Changing the variable wouldn't affect the drive letter at all, it would just cause all those paths the use the variable to not work.

Agreed also it's possible that MS left some undocumented way of changing the letter, but finding it would be the fun part. Mosty likely though it was hardcoded directly in the source code somewhere, and changing that is what I meant would be illegal unless MS gives you the source code and permission. Their reasoning for saying they hardcoded doesn't make sense to me though. It's not harcoded in regular XP and WMI works fine there, so no clue why they changed it for PE. Microsoft reasoning FTW!

As to accepting my answer, no worries there. Leave the question open as long as you want. When you do close it, feel free to just have it deleted and points refunded if noone does find an actual solution.

If you don't mind me asking, what's the purpose of the program that needs the X: drive letter? Depending on what it does, we might be able to find something other than BartPE that would let you use it.
0
 
LVL 7

Author Comment

by:AllKnowing1
ID: 21846525
Kenneniah,

I am usually an expert helping people as well. If I am unable to find a solution, I believe someone that puts effort to the answer (not just a link) deserves points. So you will be given the points.

The program is a trending system for streaming data. Very proprietary. I basically need to load DOS, load network support (multiple NIC types), and run a batch file that maps X: Y: and C: (hard drive will be pulled). The drive mappings are the tough part as the ENTIRE system is dependent on x: and virtually unchangeable. If you have another system to load dos with network drivers, that would be an alternate solution. Something with an interface to load network drivers would be wonderful. The entire system simply needs a command prompt though.

Thanks for the help!
0
 
LVL 7

Author Comment

by:AllKnowing1
ID: 21869207
After MUCH research, I have found some work arounds. This is for all that are interested. I need further help though.

The NTLDR is referenced with ramdrive.sys both manipulated by setupreg.hiv. Well, you can load this reg hive, import drive letters from a certain device, and unload the hive. Then, inject setupreg.hiv back to your image, load bartpe, and whatever drive letter you give it, voila. This is all perfectly legal. This, however, is a workaround and is device specific.

Here is my theory.

What about loading a ramdrive in dos and giving it a drive letter. unpacking the image file to that ramdrive, then booting to the ramdrive. Would this create an additional drive letter once booted, or would it take its letter from the assigned ramdrive?

Need more help. I think I am getting really close to the solution.
0
 
LVL 80

Assisted Solution

by:David Johnson, CD, MVP
David Johnson, CD, MVP earned 150 total points
ID: 21869889
bartpe has nothing to do with windows pe they are different animals.. winpe has copyright restrictions while building your own bartpe has no restrictions

my thinking is that you will have to edit the setupreg.hiv to have the letter you require and then reimage the drive.
0
 
LVL 24

Expert Comment

by:Kenneniah
ID: 21883258
Just as an FYI, these are what I've used for DOS boot disks with network support.
http://tdonline.com/bootdisk.htm
http://www.netbootdisk.com/
0
 
LVL 7

Author Comment

by:AllKnowing1
ID: 21883848
Thanks Kenneniah. After much headache, I have turned up the method for changing the device letter. However, it becomes device specific. I will award points to Kenneniah for the work he put into this.

I ended up customizing a disk from www.netbootdisk.com as you said Kenneniah. I had done this before your comment. :)  great minds think alike. I had to compile some new .exe's to get everything customized how I wanted it. But all worked out great. Just need to figure out adding new drivers.

Thanks for all the help
0
 
LVL 7

Author Closing Comment

by:AllKnowing1
ID: 31468875
Thanks for all of your help. Kenneniah, for your input. ve3ofa, I think you were on the right track. I have abandoned this project after finding a work-around to changing the drive letter.
0

Featured Post

Optimizing Cloud Backup for Low Bandwidth

With cloud storage prices going down a growing number of SMBs start to use it for backup storage. Unfortunately, business data volume rarely fits the average Internet speed. This article provides an overview of main Internet speed challenges and reveals backup best practices.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Today companies are subjected to more-and-more data, and it won't stop any time soon.  But there are obvious opportunities for reducing data, particularly data duplicated among companies.
While rebooting windows server 2003 server , it's showing "active directory rebuilding indices please wait" at startup. It took a little while for this process to complete and once we logged on not all the services were started so another reboot is …
Viewers will learn how to use the Hootsuite Dashboard.
Two types of users will appreciate AOMEI Backupper Pro: 1 - Those with PCIe drives (and haven't found cloning software that works on them). 2 - Those who want a fast clone of their boot drive (no re-boots needed) and it can clone your drive wh…

789 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question