I just upgraded my Macs hard drive.

Discussion in 'Computer Games and General Discussion' started by Nimbus, Jan 30, 2010.

  1. Nimbus

    Nimbus sudo /usr/bin make-me-a-coffee --nosugar --cream=1

    Nov 1, 2009
    Probably being lazy.
    So, GBATEMP, a few days ago I went out and bought a Western Digital 2.5" 500GB Blue Scorpio SATA hard drive, and a SATA to USB+eSATA enclosure with one iron blue intention in mind.

    I was going to upgrade my Macbooks HD.

    I didn't actually swap the original drive and this new one out until yesterday after my morning class. Mainly because I developed a last minute plan....

    My Macbook wasn't going to be a Triple-boot Macbook anymore.......

    It was going to be a Quad Boot beast from the depths of hell!

    Before I begin you might want to grab a few drinks, and pop alot of popcorn or get some XXXXXXXXXL bags of whatever your favorite snack is, perhapsget a comfy chair or something, light the fireplace if you so desire, maybe create some ambient lighting, put some jazz music or whatever appropriate music you're into. I'd like jazz music though, it's my favorite kind of music! Or do whatever else you think you need to do, because this story could take quite some time.

    I also will appologize in advance if I seem a bit redundant, I actually being advanced in computer knowlage find redundancy to be a good thing (Think multiple backups of a specific thing). It's just my nature to sometimes be that way, and I hope you can understand this and not be bothered by it.

    Finally, when we get to anything involving an Operating System, all of my Operating Systems on my Macbook are 32-bit versions, as my Macbook doesn't have a 64-bit processor, it has a 32-bit processor.

    First, I had to place the new drive in my new enclosure and do some partitioning, which was easy enough. My partitions were as follows...

    Keep in mind the drive itself doesn't actually have 500GB total storage, as no drive I know of has the exact amount, it was more along the lines of 465-ish. This is due to the fact that most, if not all drive manufacturers and/or retailers will report or show a hard drive in decimal form, and the computer shows/reports it in binary. The latter is actually the correct and true amount.

    I will be listing them all in the amount reported by Ubuntu.

    Partition Map Type: GUID (Required)
    Partition 0: EFI (Automatically generated when GUID partition table is selected)
    Size: 32 MB

    Partition 1: FAT32 (Later would be reformatted in Windows Setup as NTFS)
    Size: 106 GB

    Partition 2: FAT32 (Kept as FAT32, was going to be used as storage and for one other certain purpose I will discuss later)
    Size: 53.8 GB (54 GB rounded up)

    Partition 3: FAT32 (Also would be later reformatted in Windows Setup as NTFS)
    Size: 94 GB

    Partition 4: HFS+ (Extended+Journaled. HFS filesystems are required for Mac OSX)
    Size: 106 GB

    Partition 5+6: (Would later by used by Ubuntu setup to create a 104 GB ext3 partition and a 2 GB Linux Swap partition)
    Free Space

    I had to actually clone at least my Mac OSX partition onto the only HFS+ partition on the new drive, which I did after mounting it in it's enclosure. rEFIt (Which is my favorite awesome bootloader for my Macbook) reported the clone as bootable, so it was safe to proceed to the next step in my dubious plan.

    Next I had to actually wait about 20-30 minutes for my Macbook to cool down. Afterwards I unplugged the power cord (Nothing else was attached externally at this point. I took out the new WD drive from the enclosure, got my tools ready, took off my sweater (Dont wanna build up static electricity here), and discharged any static I had on the nearest metal object other than my Macbook.

    Following these instructions in <a href="http://manuals.info.apple.com/en/MacBook_13inch_HardDrive_DIY.pdf" target="_blank">this here DIY guide</a>, I replaced the hard drive in my Macbook with the new one

    I then followed the steps in this

    Set Partition Map type to GUID (GPT/MBR Hybrid)

    The partitions were created as follows
    Partition 0 (EFI Protected, Automatically Generated) 32 MB (Cannot be accessed or reformatted otherwise in Disk Utility)

    Partition 1
    Purpose: Operating System/Bootable
    Operating System: Windows 7 Professional RTM (Got it legitimately last year from MSDNAA)
    Notes: Restored it from a Winclone image, after XP was installed but before Ubuntu 9.04 came into play. Reason why I restored it after Windows XP was installed was to play it safe if Windows XP had installed it's boot code to this as well, which I discovered later that it hadn't as the partition was still completely devoid of anything.

    Partition 2
    Purpose: Storage & Grub Bootloader (For Linux, I'll explain why later.)
    Operating System: No OS
    Filesystem: FAT32 (Allows all Operating Systems to have a shared partition which all of them can write to)
    Notes: Grub will only load/boot from one of the First four partitions on a MBR (Or in my case a GPT/MBR hybrid). Since Linux later is specified as being outside the first four, aka Partition 0-Partition 3 (We must include Partition 0 as it is part of the MBR at this point, however it is also part of the GPT (GUID Partition Table), I had to install GRUB here, which then loads Linux from Partition 5 (The actual Linux OS doesn't give a rats "you know what" what partition it's files are on, if GRUB is loadable/bootable and points to the Linux partition it will boot, otherwise I wouldn't be posting this from Ubuntu 9.04 right now <img src="style_emoticons/<#EMO_DIR#>/happy.gif" style="vertical-align:middle" emoid="^_^" border="0" alt="happy.gif" />)

    Partition 3:
    Purpose: Operating System/Bootable
    Operating System: Windows XP SP3 (Also obtained legitimately last year from MSDNAA)
    Filesystem: NTFS
    Size: 94 GB
    Notes: The reason why Windows XP has to come last, is due to the fact that when you install it for some odd told and unexplainable reason if Windows 7 or Vista exist on the 2nd partition, XP will actually overwrite their boot code with it's own (It places it's own boot.ini on the Vista partition which overwrites it's own).

    However if the 2nd partition does not house any Windows installation, or is FAT32, Windows XP will refuse to write it's boot.ini and boot code to that partition and will instead install it on the proper partition which is what I want it to do in the first place.

    Also, any version or SP of Windows XP also all suffer from a bug which causes it to report a missing hal.dll file and refuse to boot if it's not the last partition in the MBR part of the GUID partition table. Since we are counting Partition 0 (EFI), and the other two partition preceding this one, this means that Windows XP is installed on the last partition in the MBR (Please note that a MBR only accepts up to 4 active partitions at any given point, even on a non GUID partition map and the EFI one has to be one of them in my case on my Macbook). So we are good here

    The reason why Windows XP's partition is smaller than the others, is due to the fact that the OS doesn't take up as much room on it as Windows 7's OS does, I believe it's 2-4 GB for XP as opposed to 10+ for 7

    I have also installed the UXTheme Multi-Patcher to allow myself to enable Windows XP to install and use themes other than those made by Microsoft. Copious numbers of themes installed later, my Windows XP installation is officially "Pimpin"

    Partition 4
    Purpose: Booting OSX of course, I absolutely need this to complete this whole crazy plan)
    Filesystem: HFS+ Extended (Journaled)
    Size: 106 GB
    Notes: As I stated earlier, My Mac OSX partition was cloned to this drive in advance (All thanks to Bombich Softwares Carbon Copy Cloner, which if you are looking for a good Mac OSX backup/cloning utility I suggest you look into it. It is able to create bootable clones and will even inform you when a clone will be bootable before you even clone it.

    I should note though, that as I found out not long ago, OSX also doesn't care what partition it's on, however unlike Linux which often needs GRUB on one of the first 4 partitions to be able to boot, OSX by default will boot from any partition reguardless of whether or not it's outside of the MBR part of the GUID (GPT/MBR hybrid) partition table, because it only needs the GPT half of it. Due to not using the MBR part of the GPT/MBR hybrid partition scheme it also doesn't need to be set as active in the MBR in order to boot, and Windows only sees active partitions on an internal drive. However Windows by default is not able to see any type of HFS or linux-related drive anyway, at least not without 3rd party tools.

    so in order for the 3 Windows partitions to be able to see and mount each other, OSX to be able to see and mount everything except the linux partitions with the exception of only being able to read the NTFS partitions, and my powerful and lovely Linux partition to be able to see and mount everyone and write to everything except the HFS+ partition (Writing to a journaled HFS volume is impossible even with hfstools installed in Linux, or at least thats what I believe), OSX was placed on this partition.

    Partition 5
    Purpose: Linux operating system
    Operating System: Ubuntu 9.04 (Seriously, if Ubuntu itself was a real living woman, I'd probably marry her someday. I madly love this OS)
    OS Notes: Reason why I use 9.04 instead of 9.10 is that the latter has some huge issues with most any type of Macbooks, especially 4,1 (4th Generation) Macbooks. Mostly due to it using Grub2 instead of the old Grub, which doesn't have complete support for rEFIt or EFI in some cases, in most cases Grub2 actually will fail to load/boot on Macbooks, which means Linux also in turn fails to boot)
    Filesystem: ext3
    Size: 104 GB
    Notes: OSX and any version of Windows are unable to mount disks formatted with Linux based filesystems. Windows actually will just see it as free space, and OSX will be able to see it, but will be unable to mount it whatsoever. For this reason once you format a partition to any linux-related filesystem (ext2, ext3, ext4, reiserfs, Linux Swap, etc) you cannot use Disk Utility to change it back to anything, or mount it in OSX or Windows, unless you first format it in Linux with gparted, or something such as Parted Magic Live CD (I suggest the later as gparted in most Linux Distros contains a nasty bug which causes the msftres flag to be incorrectly set when you format a partition to FAT32 or NTFS, which causes the partition to be un-bootable and registers as Microsoft reserved which should never be the case on an NTFS volume. Parted Magic live does not possess this bug and can be used to fix this issue if it has already occured)

    Also Grub 1.5 (A Linux bootloader which is required by several Linux Distributions, but is also capable of booting Windows, and with some tinkering can boot OSX (Albiet not with a whole lot of stability) is actually installed on the FAT32 partition rather than the Partition where the actual Linux installation is on.
    In other words it's on Partition 3, or technically the 2nd if we weren't counting the EFI partition as well. Which is fine because XP can't write it's boot code to anyways since it's FAT32, Grub needs to be on one of the first four, it doesn't require any specific filesystem to install to or run from, it's boot code is hidden and protected from being overwritten normally by any OS anyway

    So in other words, it goes like this. I select the FAT32 partition in rEFIt which shows up as a Tux icon because rEFIt detects Grub is on that partition. Grub then loads from that FAT32 partition, and presents me with a list of Operating systems (Being ever so smart, Grub also has detected and added XP and 7 to the list, but has not overwritten either of their boot codes). I select Ubuntu 9.04 from that list, and since Grub's configuration file tells it that Ubuntu is on my 6th partition it looks that up, finds a valid Ubuntu Linux installation, and proceeds to load and boot it.

    Partition 6
    Purpose: Linux Swap Space
    Filesystem: Linux Swap
    Size: 2 GB (Double that of my Ram, so that Hibernate can be enabled)
    Notes: This partition kind speaks for itself. The Linux Swap filesystem as you would probably guess is the filesystem used by Linux in place of the usual Paging File you find on Windows drives. It has the downside of requiring another partition, but doesn't require that it be on the first 4 partitions/MBR or anywhere specific. You can still create a swap file in Linux though of any size you please, albeit I don't have the exact instructions on me right now.

    So after all this is said and done, I now have not only a Macbook with a bigger hard drive space (and thank goodness for that, as on my old 120GB one that came with my Macbook I had only 4.7GB left in Linux and about 7 left for Windows 7.), but I have a Macbook that can Quad-Boot four Operating systems, specifically Mac OSX (Leopard, 10.5.8), Windows 7 Professional, Windows XP Professional (With SP3), and Ubuntu Linux 9.04

    To tell the honest truth, the easy part was actually transplanting the new hard drive in place of the old one, and placing the old one in the enclosure I bought. It was also interestingly enough, the quickest part of all this.

    The hardest....well, I wouldn't say the hardest, but rather the most time-consuming part of all this was actually partitioning, cloning, installing, restoring the clones to, transfering data from the old hard drive to, configuring, and customizing all of the Operating systems and applications back to what I had them at originally, or as close as I could. In XP's case I had done the installation from scratch so it was just a matter of installing the OS and applications I wanted, as well as modifying the themes.

    Ubuntu was easy to transfer my old files to, I just browsed on my old drive to my home directory on the Linux partition on it, copied everything that was visable, told it to paste them into my new home directory on my new installation, and what would you know not only does it copy most of the files, aside from those I used sudo at some point to create, because the permissions are altered on those and won't allow me to do anything with, but all those are files I can spare to not have anyway), but in addition it also changes the ownership to me on my new install and configures the permissions on it respectively, meaning the files are owned by me and can be used just as they were on the old one. Yay!

    This was also ok in the sense that I had done some stuff before on the old install which mucked up a number of things such as the keymap, etc (Seriously, I should expect that selecting a Macbook keyboard layout should theoretically cause my Keyboard and it's layout to act just like that on a Macbook such as mine, but instead it gives me an xmodmap error and causes my mouse to frequently stop responding alltogether). So this time at setup I left the Keyboard layout it at pc_105 which is the default and doesn't seem to cause any issues or errors in Ubuntu on my Macbook. I have reinstalled everything that I have determined to not have caused problems on the old install, and this time of course I have copious amounts of disk space left.

    So GBATemp, sorry for the long rambling. I appologize if I seemed a bit like Blathers from Animal Crossing, except with computer subjects instead of fossils, but I just wanted to announce my achievement to you all, something I'm very proud of myself for.

    <img src="http://i47.tinypic.com/2evu2w8.png" border="0" class="linked-image" />

    <img src="http://i45.tinypic.com/242vpyp.png" border="0" class="linked-image" />
  2. Raki

    Raki GBAtemp Advanced Fan

    Jul 16, 2008
    Gambia, The
    now tell me what do you need a XP and Windows 7 install for? Wouldn't it make more sense to install Windows 7 and use XP mode if your processor supports VT/ or use VirtualPC to emulate XP?
  3. MuppetInvasion

    MuppetInvasion Banned

    Sep 30, 2008
    ewwwwww mac -.-

    jokes, good job mr amazing! you managed to touch a mac without longing for other guys penis's in your mouth.
  4. Frederica Bernkastel

    Frederica Bernkastel WebPerf and PWA advocate; @antoligy on Twitter

    GBAtemp Patron
    Frederica Bernkastel is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    Jan 31, 2008
    United Kingdom
    we're supposed to be impressed because you did this on a mac?
    its simple shit for us PC owners.
    congrats on making a mac semi-decent