星期四, 2月 03, 2011

Updating Seagate Harddisk Firmware under Linux

Actually this is not really about Linux. It's just about when you have no windows and want to update the firmware of the HDD with the official utility.

This article is actually about using the loopback support from grub2 to load the official iso, and the memdisk tool from syslinux to load the disk image inside the iso.

Follow these steps below:

  1. download the official Seagate firmware update ISO image (for example, MomentusXT-ALL-SD24.iso)
  2. put the iso image under /boot (or anywhere else that grub2 can access)
  3. get syslinux, we actually only need the memdisk tool. put that in /boot/memdisk (or somewhere else that grub2 can access)
  4. reboot into grub2 shell
    • upon reboot, keep clicking ESC like crazy, this should bring up the boot entry selection screen
    • when you see that screen, hit 'c' to enter the grub shell (the command prompt)
  5. inside the grub shell, run these commands:
    • loopback loop /MomentusXL-ALL-SD24.iso
      • (change this to the path of the iso image)
    • linux16 /memdisk
      • (change this to the path of the memdisk)
    • initrd16 (loop)/AN-SD24.ima
      • (this may vary, just look for the file with a suffix .ima)
      • (if you don't know the filename, `ls (loop)/` to get a list)
    • boot
  6. now you're inside the official firmware update tool, follow the on-screen instructions.

Enjoy!

沒有留言: