Creating a Replacement Hard Disk without Hotswap HOWTO

From Xbox-Linux

Table of contents

Purpose

This procedure enables preparation of a replacement hard drive for a softmodded xbox without Hard Disk Hotswap HOWTO or otherwise removing the hard drive from the xbox first.


Prerequisites

1. A separate, networked Linux PC w/2.6.7 kernel patched for taskfile support;

2. A copy of hdtool and xboxdumper;

3. A new (preferably larger) hard drive; and

4. A refurbished xbox having a hackable kernel (K: 5713 or less)


Prepare new drive on Linux PC

1. Install the replacement drive on the Linux PC. You may wish to low level format the drive:

dd if=/dev/zero of=/dev/hdc bs=512 count=15633072 & 
echo wiping /dev/hdc 

2. Prepare the drive as a fatx drive:

xboxdumper prepare /dev/hdc  

3. Install the dash if a copy is available (D4920.raw.gz) by the following command. Note: the gamesave E partition does not have to be copied onto the new drive in order for it to boot:

zcat D4920.raw.gz| dd of=/dev/hdc seek=4501 bs=512k &


Get security info from xbox

Skip this step if dashboard is not yet installed on replacement drive.

1. Boot xbox in emergency Linux (using MechAssault exploit, Xebian need not yet be installed).

2. Telnet into the xbox and create an image of the eeprom:

cd /mnt/X
xbox_info -r eeprom 

3. FTP into the xbox and copy the eeprom file from the /mnt/X partition.


Copy security and dash from xbox

Skip this step if dash already installed on replacement drive. Perform if you want gamesave partition.

1. Boot xbox in regular Linux (using MechAssault exploit and install Xebian). Provide Internet access to xbox so that it can apt-get Debian packages.

2. Back on the PC, setup to retrieve the dash and security info:

#!/bin/bash 
# An efficient way to prepare a replacement drive – uses netcat to copy
# drive information to hard drive on Linux PC 
# Copyright 2004, Rob Gingher 
#
# apt-get install netcat -y
#
# Dashboard installation
#

nc –l -p 1100 | zcat | dd of=/dev/hdc seek=4501 bs=512k &  

#
# Get Security Info
#

nc -l –p 1234 | zcat > eeprom &

#
# Gamesave partition installation (optional)
#

nc –l -p 1110 | zcat | dd of=/dev/hdc seek=5501 bs=512k 

3. Telnet or SSH into the xbox, install netcat, and send eeprom and dashboard by running this script:

#!/bin/bash 
# This bash script sends replacement drive info via netcat 
# Copyright 2004, Rob Gingher 
pcbox=192.168.0.1

echo Cleaning the partitions 
dd if=/dev/zero of=/mnt/C/rubbish  
dd if=/dev/zero of=/mnt/E/rubbish  
rm /mnt/E/rubbish /mnt/C/rubbish 
sync
sync

apt-get install netcat -y

cd /mnt/X
xbox_info -r eeprom && gzip -c eeprom | nc –w 30 $pcbox 1234 &
echo Backing up C drive 
umount /mnt/C 
dd if=/dev/hda51| gzip | nc –w 30 $pcbox 1100 &
echo "and E drive" 
umount /mnt/E 
dd if=/dev/hda50| gzip | nc -w 30 $pcbox 1110

Secure the new drive

Lock the drive using hdtool and the eeprom file:

hdtool -e eeprom -d /dev/hdc -o LOCK  

Physical changeout

1. Void warranty by OpeningXbox and swap the drive therein. Note: A new 80 pin cable makes the box faster, but the cable origami can be tricky!

2. Unlock the removed drive, so it doesn't become a paperweight because you lost the password:

hdtool -e eeprom -d /dev/hdc -o UNLOCK 
hdtool -e eeprom -d /dev/hdc -o DISABLE-PW 

Happy Penguin Software_Method_HOWTO