My Xbox One came with a 500GB hard drive. It’s not that fast, so I used a USB3 SSD for games instead. Recently though, I’ve started to notice how loud the hard drive is (it’s the loudest thing in my entertainment system), so I decided I wanted to replace it with an SSD.
I tried following some instructions and running a script from a github repo, but that method didn’t work for me. I was looking around the web and the only place I found another method mentioned was a youtube comment on a tutorial video that used the method from github. 100% of the credit for this method goes to Skyliinez92 on youtube. I just felt that a more easily linkable, more permanent place for this information would be nice.
I would recommend having a disk larger than the one currently in your xbox for the upgrade. It’s possible to go down in size, but doing that safely is more difficult.
I’m not gonna explain how to open your xbox one, there are plenty of guides out there. The best one is probably on ifixit here.
When you have the hard drive out, you can proceed.
There are 2 tools to use, both are free. Clonezilla and GParted.
First up is Clonezilla. Download the live cd and burn it (or use unetbootin and put the image on a thumbdrive). Boot to the live CD with your original xbox one hard disk and the new hard disk attached. I recommend disconnecting all other hard drives to avoid any risk of data loss.
Start clonezilla. Choose device-to-device.
disk to local disk:
choose the correct source disk, then the correct target disk. Make sure you get this right, since you really don’t want to erase your xbox one drive at this point.
skip fs checking:
use the partition table from the source disk:
At this point you should get a lot of confirmations making sure you’re not overwriting stuff you care about. Then you should get a progress dialog. My 500GB drive took with a little data on it took less than 2 hours. It shouldn’t take very long.
If you’re just replacing your drive with one of the same size, your drive is done, scroll down to the “Testing your drive” section.
If you replaced your drive with a larger one, you now need to boot into gparted. I would disconnect your xbox one hard drive now, just to leave it alone. Put it in a safe place and don’t lose it. There’s always a small chance an update could break the xbox with an upgraded drive, so hanging on to your original is the best way to not end up with a brick.
Boot into the gparted live cd. go through all the keymap stuff, you probably want all the default options. once the UI is loaded, launch gparted. In the upper right, select the new xbox one hard drive. There should be 5 partitions, it should look a lot like this (though note I modified this one to be smaller than the original 500GB disk):
you need to move the 3 System partitions to the end of the disk, 1 at a time. Click the last partition, resize / move to the end of the free space, then do the same with the middle system partition, then the first one. You might get a warning like this, that’s ok:
at this point your disk should look similar to this:
Now resize / move the User Content partition, and resize it to fill all the available space. Now you can click apply, and these operations will be performed. It might take another hour or two, once that’s done, shut down gparted and put the drive back into your xbox.
Testing your drive
Now that your drive is prepared, I’d recommend testing it in your xbox before putting everything back together. I put the drive back in and connected it, but didn’t screw it back together. I hooked up the wireless card and the antenna (though the latter isn’t absolutely necessary). The top case with the power button is difficult to put back on, I wouldn’t for testing. Since the power button is capacitive, you can just touch the right spot on the connector and the xbox will power on. Check out a video of this here.
Give it a few minutes to boot, hopefully you’re all set. Good luck!