Seagate offers firmware updates for their disk products. Let's assume you need to update Barracuda disk, but unfortunately, updates are only in .exe or CD .iso format. And you have no Windows OS nor CD drive.
If you have Linux and USB flash drive, you are good to go. Download .iso file from Seagate website and follow steps below. For the sake of this document USB flash drive is detected in the Linux system as /dev/sdd. Please be sure to use correct device path in commands below, these commands could damage your data if not used properly.

I have got e-mail from Chris Horton, he tried the process below on OpenSuse, unfortunately he reported he was missing some additional SysLinux files, so he used Debian. Location of MBR is different, so he had to use command:

dd if=/usr/lib/syslinux/mbr/mbr.bin of=/dev/sdd bs=446 count=1  conv=noerror,sync
He used Barracuda12-ALL-CC49.iso, image file extracted from the file is PH-CC49.ima.

Follow these steps:

  • Insert drive into computer, be sure it is detected and not mounted automatically.
  • Make sure you have installed package parted in the system, and root privileges. Create a new disklabel for the USB flash drive:
    parted /dev/sdd mklabel msdos
  • Display created partition table, look for disk size, in this case 3997 MB:
    parted /dev/sdd print
  • Create FAT 32 bit partition, one for whole USB flash drive:
    parted /dev/sdd mkpart primary fat32 0 3997MB
  • Mark partition bootable:
    parted /dev/sdd toggle 1 boot
  • Create VFAT filesystem on the partition:
    mkfs.vfat /dev/sdd1
  • Make sure you have installed package syslinux in the system. Install SYSLINUX on a new created partion:
    syslinux -i /dev/sdd1
  • Copy SYSLINUX master boot record to the USB flash drive:
    dd if=/usr/lib/syslinux/mbr.bin of=/dev/sdd conv=noerror,sync
  • Mount downloaded CD .iso image and copy Seagate bootable image from it to partition created on USB flash drive:
    mkdir /mnt/usb
    mkdir /mnt/iso
    mount /dev/sdd1 /mnt/usb
    mount -o ro,loop Barracuda-ALL-GRCC4H.iso /mnt/iso
    cp /mnt/iso/GR-CC4H.ima /mnt/usb
  • Copy SYSLINUX memdisk to same partion:
    cp /usr/lib/syslinux/memdisk /mnt/usb
  • Create SYSLINUX configuration file for USB flash drive with following content:
    default GR-CC4H
    label GR-CC4H
      kernel /memdisk
      initrd /GR-CC4H.ima
  • Umount and eject USB flash drive from the system:
    umount /dev/sdd1
    eject /dev/sdd1
Please be aware, that Seagate firmware update software is unable to work with SATA drives in AHCI mode. To be able to use the application to update the firmware, be sure to switch your SATA drives controller in BIOS from AHCI to IDE mode.

If you have any questions regarding this, feel free to contact me at my e-mail address.

Google ads

Last modified:

Valid HTML 4.01!
Copyright (c) 2018 PAVUK