How To: Run SpinRite on a UEFI-only machine (Part 1 of 5)

  • Be sure to checkout “Tips & Tricks”
    Dear Guest Visitor → Once you register and log-in please checkout the “Tips & Tricks” page for some very handy tips!

    /Steve.
  • BootAble – FreeDOS boot testing freeware

    To obtain direct, low-level access to a system's mass storage drives, SpinRite runs under a GRC-customized version of FreeDOS which has been modified to add compatibility with all file systems. In order to run SpinRite it must first be possible to boot FreeDOS.

    GRC's “BootAble” freeware allows anyone to easily create BIOS-bootable media in order to workout and confirm the details of getting a machine to boot FreeDOS through a BIOS. Once the means of doing that has been determined, the media created by SpinRite can be booted and run in the same way.

    The participants here, who have taken the time to share their knowledge and experience, their successes and some frustrations with booting their computers into FreeDOS, have created a valuable knowledgebase which will benefit everyone who follows.

    You may click on the image to the right to obtain your own copy of BootAble. Then use the knowledge and experience documented here to boot your computer(s) into FreeDOS. And please do not hesitate to ask questions – nowhere else can better answers be found.

    (You may permanently close this reminder with the 'X' in the upper right.)

No, I have an old unused Intel Mac available for the purpose of running SpinRite. Actually, I have a couple of them laying around not doing much.

I was asking if I could simply boot off the internal drive instead of having it be an external drive. The 2015 MBP is not being used for anything else, so it has nothing to lose if I tried.

I actually want to run it against some external USB HDDs that have become slow to read over time. However, the only windows machine I had temporary access to so far doesn’t support USB drives from the bios and spinrite couldn’t see them.

Anyway, target disk mode is a good idea. I have 2016 and 2018 Intel MacBook Pros, both of which have USB-C Thunderbolt 3 ports and support target disk mode. Plus I have a few Thunderbolt cables already. The 2015 MBP has Thunderbolt 2 ports (not USB-C), and I don’t have the cable or suitable adapter for that one.

I will try it with those and report back.
 
Last edited:
No, I have an old unused Intel Mac available for the purpose of running SpinRite. Actually, I have a couple of them laying around not doing much.

I was asking if I could simply boot off the internal drive instead of having it be an external drive. The 2015 MBP is not being used for anything else, so it has nothing to lose if I tried.
Sure you can. The convoluted instructions are a way to run SpinRite against the primary internal drive, because the SpinRite target drive can’t be used by any other process during SR operation.

If your target drive(s) are external (not the boot drive), then just install VirtualBox on your standard boot drive and point it at your other drives, using the same commands I noted before to ensure those other drives are offline.
 
Last edited:
I don't have an external SSD, but I do have an old, unused 2015 Intel MacBook Pro available. I tried unsuccessfully to get it set up on a USB Flash Drive, but the installation of macOS on that failed with a boot loop repeatedly ending in a kernel panic. Is there any possible way to modify these steps to have SpinRite installed on and booting from the internal SSD?

Alternatively, would I have better luck with the Linux option on a USB flash drive?
Not exactly sure what you are trying. You want to boot the machine from a USB stick ? With what OS ? To eventually test the internal SSD ?
 
Part 2B step E11 does include those diskpart related instructions, and yes it sounds like the OP skipped that
I believe I did all "by the book" but restarded from scratch and now all is working as expected. Thanks
 
If your target drive(s) are external (not the boot drive), then just install VirtualBox on your standard boot drive and point it at your other drives, using the same commands I noted before to ensure those other drives are offline.

I thought about this, but it didn't seem so straight forward because the instructions make a lot of assumptions about it being installed on an external drive.

The introduction clearly states: "Ensure that the internal drives of the host machine are UNMOUNTED, so that the actual OS does not interfere with SpinRite operations"

Then when I got to step 4B, it talks about unmounting the internal drives.

That makes sense if I'm booted from an external drive because unmounting them won't break anything, but not so much when I'm actually booted from the internal drive. And since I don't fully understand all the reasons behind why these things are done, trying to blindly modify them for my own purpose seemed unlikely to succeed. That's why I was curious about how exactly these steps should be modified to work directly from the internal drive.
 
I thought about this, but it didn't seem so straight forward because the instructions make a lot of assumptions about it being installed on an external drive.

The introduction clearly states: "Ensure that the internal drives of the host machine are UNMOUNTED, so that the actual OS does not interfere with SpinRite operations"

Then when I got to [/B]step 4B, it talks about unmounting the internal drives.

That makes sense if I'm booted from an external drive because unmounting them won't break anything, but not so much when I'm actually booted from the internal drive. And since I don't fully understand all the reasons behind why these things are done, trying to blindly modify them for my own purpose seemed unlikely to succeed. That's why I was curious about how exactly these steps should be modified to work directly from the internal drive.
I’ll edit the instructions to state that the need for an external drive is based on the assumption that the user wants to operate against the internal drive.
 
Just wanted to drop by and say thanks for this detailed write-up. The first time I looked at it I thought, naw, thanks, I'll just pop the drive out and run it on my bench machine. And that's usually fine, but I recently got a laptop from a client that I can't boot Spinrite on because it doesn't offer legacy mode, and the case is falling apart to the point that I think disassembling it might be a one-way street. The client wants this beat up thing back, so I went for it. Spinrite is now crunching away from a virtual machine.