What app in Dell firmware update actually writes the firmware to disk?












3















I have a Dell PowerEdge R710 server, fitted with Hitachi HUS156045VLS600 450Gb SAS drives.



Unfortunately the disks are running NetApp NA02 firmware. I'd like to apply Dell E770 firmware so the drives run better with the MegaRAID/PERC H700/PERC 6i controller and the rest of the Dell system.



The Dell linux/rpm download package SAS-Drive_Firmware_YC07T_LN_E770_A00.BIN is a combo shell script and binary archive. Running the --extract option creates a directory with all the files. The script is very sophisticated and dense (and beyond my skills to decode).



I'd like to initiate the firmware download manually, as the scripted process fails the pre-requisite check, probably on prior firmware version not matching, which is to be expected, being NetApp to Dell.



Which app actually delivers the firmware to the drives or makes a HAPI call?



What command line should I run on the extracted directory to send E770.fwh to the drives?










share|improve this question















migrated from superuser.com Jan 26 at 22:37


This question came from our site for computer enthusiasts and power users.



















  • It will not brick your HDD ? That system is almost 9 yr old, I would check more for perc memory or such or getting the right disk off ebay

    – yagmoth555
    Jan 26 at 23:31











  • Thanks. Sure could brick the drive, but it is an exact match on model number, and the drive is otherwise worthless anyway. Sure there are Dell disks on eBay, but why waste these ones if a simple command will save them.

    – David McNeill
    Jan 28 at 1:49











  • Another option might be to modify the script to force return true to relevant pre-flight sanity checks, thereby achieving the same download result. Any suggestions in this area welcome.

    – David McNeill
    Feb 2 at 22:44
















3















I have a Dell PowerEdge R710 server, fitted with Hitachi HUS156045VLS600 450Gb SAS drives.



Unfortunately the disks are running NetApp NA02 firmware. I'd like to apply Dell E770 firmware so the drives run better with the MegaRAID/PERC H700/PERC 6i controller and the rest of the Dell system.



The Dell linux/rpm download package SAS-Drive_Firmware_YC07T_LN_E770_A00.BIN is a combo shell script and binary archive. Running the --extract option creates a directory with all the files. The script is very sophisticated and dense (and beyond my skills to decode).



I'd like to initiate the firmware download manually, as the scripted process fails the pre-requisite check, probably on prior firmware version not matching, which is to be expected, being NetApp to Dell.



Which app actually delivers the firmware to the drives or makes a HAPI call?



What command line should I run on the extracted directory to send E770.fwh to the drives?










share|improve this question















migrated from superuser.com Jan 26 at 22:37


This question came from our site for computer enthusiasts and power users.



















  • It will not brick your HDD ? That system is almost 9 yr old, I would check more for perc memory or such or getting the right disk off ebay

    – yagmoth555
    Jan 26 at 23:31











  • Thanks. Sure could brick the drive, but it is an exact match on model number, and the drive is otherwise worthless anyway. Sure there are Dell disks on eBay, but why waste these ones if a simple command will save them.

    – David McNeill
    Jan 28 at 1:49











  • Another option might be to modify the script to force return true to relevant pre-flight sanity checks, thereby achieving the same download result. Any suggestions in this area welcome.

    – David McNeill
    Feb 2 at 22:44














3












3








3








I have a Dell PowerEdge R710 server, fitted with Hitachi HUS156045VLS600 450Gb SAS drives.



Unfortunately the disks are running NetApp NA02 firmware. I'd like to apply Dell E770 firmware so the drives run better with the MegaRAID/PERC H700/PERC 6i controller and the rest of the Dell system.



The Dell linux/rpm download package SAS-Drive_Firmware_YC07T_LN_E770_A00.BIN is a combo shell script and binary archive. Running the --extract option creates a directory with all the files. The script is very sophisticated and dense (and beyond my skills to decode).



I'd like to initiate the firmware download manually, as the scripted process fails the pre-requisite check, probably on prior firmware version not matching, which is to be expected, being NetApp to Dell.



Which app actually delivers the firmware to the drives or makes a HAPI call?



What command line should I run on the extracted directory to send E770.fwh to the drives?










share|improve this question
















I have a Dell PowerEdge R710 server, fitted with Hitachi HUS156045VLS600 450Gb SAS drives.



Unfortunately the disks are running NetApp NA02 firmware. I'd like to apply Dell E770 firmware so the drives run better with the MegaRAID/PERC H700/PERC 6i controller and the rest of the Dell system.



The Dell linux/rpm download package SAS-Drive_Firmware_YC07T_LN_E770_A00.BIN is a combo shell script and binary archive. Running the --extract option creates a directory with all the files. The script is very sophisticated and dense (and beyond my skills to decode).



I'd like to initiate the firmware download manually, as the scripted process fails the pre-requisite check, probably on prior firmware version not matching, which is to be expected, being NetApp to Dell.



Which app actually delivers the firmware to the drives or makes a HAPI call?



What command line should I run on the extracted directory to send E770.fwh to the drives?







linux firmware






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Feb 2 at 22:38







David McNeill

















asked Jan 26 at 8:43









David McNeillDavid McNeill

619




619




migrated from superuser.com Jan 26 at 22:37


This question came from our site for computer enthusiasts and power users.









migrated from superuser.com Jan 26 at 22:37


This question came from our site for computer enthusiasts and power users.















  • It will not brick your HDD ? That system is almost 9 yr old, I would check more for perc memory or such or getting the right disk off ebay

    – yagmoth555
    Jan 26 at 23:31











  • Thanks. Sure could brick the drive, but it is an exact match on model number, and the drive is otherwise worthless anyway. Sure there are Dell disks on eBay, but why waste these ones if a simple command will save them.

    – David McNeill
    Jan 28 at 1:49











  • Another option might be to modify the script to force return true to relevant pre-flight sanity checks, thereby achieving the same download result. Any suggestions in this area welcome.

    – David McNeill
    Feb 2 at 22:44



















  • It will not brick your HDD ? That system is almost 9 yr old, I would check more for perc memory or such or getting the right disk off ebay

    – yagmoth555
    Jan 26 at 23:31











  • Thanks. Sure could brick the drive, but it is an exact match on model number, and the drive is otherwise worthless anyway. Sure there are Dell disks on eBay, but why waste these ones if a simple command will save them.

    – David McNeill
    Jan 28 at 1:49











  • Another option might be to modify the script to force return true to relevant pre-flight sanity checks, thereby achieving the same download result. Any suggestions in this area welcome.

    – David McNeill
    Feb 2 at 22:44

















It will not brick your HDD ? That system is almost 9 yr old, I would check more for perc memory or such or getting the right disk off ebay

– yagmoth555
Jan 26 at 23:31





It will not brick your HDD ? That system is almost 9 yr old, I would check more for perc memory or such or getting the right disk off ebay

– yagmoth555
Jan 26 at 23:31













Thanks. Sure could brick the drive, but it is an exact match on model number, and the drive is otherwise worthless anyway. Sure there are Dell disks on eBay, but why waste these ones if a simple command will save them.

– David McNeill
Jan 28 at 1:49





Thanks. Sure could brick the drive, but it is an exact match on model number, and the drive is otherwise worthless anyway. Sure there are Dell disks on eBay, but why waste these ones if a simple command will save them.

– David McNeill
Jan 28 at 1:49













Another option might be to modify the script to force return true to relevant pre-flight sanity checks, thereby achieving the same download result. Any suggestions in this area welcome.

– David McNeill
Feb 2 at 22:44





Another option might be to modify the script to force return true to relevant pre-flight sanity checks, thereby achieving the same download result. Any suggestions in this area welcome.

– David McNeill
Feb 2 at 22:44










3 Answers
3






active

oldest

votes


















1














My recommendation is to sell those drives on ebay (maybe stating what firmware they run, somebody might be looking for that) and buy new ones from eBay with the required firmware. The reason the updater fails is because there's a lot of variants out there for drives, and even though the model number matches, there's no guarantee that the Netapp drives are identical to Dell drives, since both are a custom drive in itself.






share|improve this answer































    1














    Do you also have a Windows OS available for the firmware update? I only had a look at the windows update tool for a different Dell system, but the update mechanism seems to be the same for all Hitachi/Toshiba/Seagate drives. Maybe it's worth a shot to replace the hardware id 20578 for HUS156045VLS600 with your current drives' hardware id in E770.fwh and run the SASDUPIE.exe update tool manually.



    Hexdump of the first 256 bytes of the firmware binary payload/E770.fwh



    ibm@x250:/mnt/c/Users/ibm/AppData/Local/Temp/cb868bcd-1f9f-476a-a137-6bf2ea998e23$ xxd -l 256 payload/E770.fwh
    00000000: 2020 2020 2020 2020 0945 3737 3020 2020 .E770
    00000010: 2078 0100 0000 0000 0000 0000 0000 0000 x..............
    00000020: 0000 0000 0000 0000 0000 0000 0000 0000 ................
    00000030: 0000 0000 0000 0000 0000 0000 0000 0003 ................
    00000040: 2020 2032 3035 3737 2020 2020 2020 2020 20577
    00000050: 2020 2020 2020 2020 2020 2020 2020 2020
    00000060: 2048 5553 3135 3630 3330 564c 5336 3030 HUS156030VLS600
    00000070: 2020 2032 3035 3738 2020 2020 2020 2020 20578
    00000080: 2020 2020 2020 2020 2020 2020 2020 2020
    00000090: 2048 5553 3135 3630 3435 564c 5336 3030 HUS156045VLS600
    000000a0: 2020 2032 3035 3739 2020 2020 2020 2020 20579
    000000b0: 2020 2020 2020 2020 2020 2020 2020 2020
    000000c0: 2048 5553 3135 3630 3630 564c 5336 3030 HUS156060VLS600
    000000d0: 0e80 0000 0000 0000 0000 0000 0000 0000 ................
    000000e0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
    000000f0: 4869 7461 6368 6920 476c 6f62 616c 2053 Hitachi Global S


    See my answer in Using non-certified hard drives in Dell MD3220 storage array.






    share|improve this answer
























    • Making this change (20578 ... 00000) allows the model check to succeed, however sasdupie -u -f -debug debug.log then complains with The operation failed due to an invalid image file which is most likely checksum on the modified E770.fwh file. The invalid image error comes out of sasdupie binary, not any external calls.

      – David McNeill
      Mar 11 at 4:21





















    0














    As I don't have access to a similar hardware, all of my findings are opinions and NOT to be considered as working instructions. Modifying firmware of hardware devices flashing ALWAYS involves the risk of bricking hardware.



    The Linux packge contains the following files which are most likely relevant, comments noted with #:



    ├── framework64
    │   ├── duppmdatacollector.bin
    │   ├── getSystemId
    │   ├── hapi
    │   │   ├── funcs
    │   │   │   ├── instsvc-uninstall.sh
    │   │   │   ├── srvadmin-hapi.sh
    │   │   │   └── srvadmin-omilcore.sh
    │   │   └── hapi64.tgz
    │   └── sputility.bin
    ├── l64
    # sasdupie seems to be the flasher executable, tries to run dupdisneyinstall.sh
    # which seems to install hapi64.tgz, but didn't try to run that with sufficient priviledges.
    │   ├── sasdupie
    # RPM contains some LSI libraries, which will be installed in /opt/lsi/
    # these files are NOT the same as in the directory
    │   └── srvadmin-storelib-sysfs-7.2.0-4.1.1.el4.x86_64.rpm
    # the xml contains the information:
    # 4. If this is a BIOS update package, install any necessary Embedded Systems
    # Management firmware prior to this BIOS update. Otherwise, go next step.
    # could be related to dupdisneyinstall.sh
    ├── package.xml
    ├── payload
    # this looks to be the actual drive firmware file
    │   └── E770.fwh
    # PIEConfig.sh holds information for the firmware, and looks to describe the sasdupie call
    ├── PIEConfig.sh
    # PIEInfo.txt describes required the steps for the installation.
    ├── PIEInfo.txt


    Calling l64/sasdupie prints the help message, if not run as root there the script dupdisneyinstall.sh fails with insufficent privileges.



    Running strace -e file l64/sasdupie shows that sasdupie tries to load libraries that are not part of this firmware file. Most likely these are part of the mentioned Embedded Systems Management firmware in package.xml.



    So a way forward can be to:




    • install the Embedded Systems Management firmware

    • run l64/sasdupie as root and see if dupdisneyinstall.sh succeeds

    • in case it works, use the options from PIEConfig.sh to execute l64/sasdupie


    Should your system be a 32-bit system, use l32 instead of l64.






    share|improve this answer
























      Your Answer








      StackExchange.ready(function() {
      var channelOptions = {
      tags: "".split(" "),
      id: "2"
      };
      initTagRenderer("".split(" "), "".split(" "), channelOptions);

      StackExchange.using("externalEditor", function() {
      // Have to fire editor after snippets, if snippets enabled
      if (StackExchange.settings.snippets.snippetsEnabled) {
      StackExchange.using("snippets", function() {
      createEditor();
      });
      }
      else {
      createEditor();
      }
      });

      function createEditor() {
      StackExchange.prepareEditor({
      heartbeatType: 'answer',
      autoActivateHeartbeat: false,
      convertImagesToLinks: true,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: 10,
      bindNavPrevention: true,
      postfix: "",
      imageUploader: {
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      },
      onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      });


      }
      });














      draft saved

      draft discarded


















      StackExchange.ready(
      function () {
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f950947%2fwhat-app-in-dell-firmware-update-actually-writes-the-firmware-to-disk%23new-answer', 'question_page');
      }
      );

      Post as a guest















      Required, but never shown

























      3 Answers
      3






      active

      oldest

      votes








      3 Answers
      3






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      1














      My recommendation is to sell those drives on ebay (maybe stating what firmware they run, somebody might be looking for that) and buy new ones from eBay with the required firmware. The reason the updater fails is because there's a lot of variants out there for drives, and even though the model number matches, there's no guarantee that the Netapp drives are identical to Dell drives, since both are a custom drive in itself.






      share|improve this answer




























        1














        My recommendation is to sell those drives on ebay (maybe stating what firmware they run, somebody might be looking for that) and buy new ones from eBay with the required firmware. The reason the updater fails is because there's a lot of variants out there for drives, and even though the model number matches, there's no guarantee that the Netapp drives are identical to Dell drives, since both are a custom drive in itself.






        share|improve this answer


























          1












          1








          1







          My recommendation is to sell those drives on ebay (maybe stating what firmware they run, somebody might be looking for that) and buy new ones from eBay with the required firmware. The reason the updater fails is because there's a lot of variants out there for drives, and even though the model number matches, there's no guarantee that the Netapp drives are identical to Dell drives, since both are a custom drive in itself.






          share|improve this answer













          My recommendation is to sell those drives on ebay (maybe stating what firmware they run, somebody might be looking for that) and buy new ones from eBay with the required firmware. The reason the updater fails is because there's a lot of variants out there for drives, and even though the model number matches, there's no guarantee that the Netapp drives are identical to Dell drives, since both are a custom drive in itself.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Feb 3 at 10:13









          StuggiStuggi

          721313




          721313

























              1














              Do you also have a Windows OS available for the firmware update? I only had a look at the windows update tool for a different Dell system, but the update mechanism seems to be the same for all Hitachi/Toshiba/Seagate drives. Maybe it's worth a shot to replace the hardware id 20578 for HUS156045VLS600 with your current drives' hardware id in E770.fwh and run the SASDUPIE.exe update tool manually.



              Hexdump of the first 256 bytes of the firmware binary payload/E770.fwh



              ibm@x250:/mnt/c/Users/ibm/AppData/Local/Temp/cb868bcd-1f9f-476a-a137-6bf2ea998e23$ xxd -l 256 payload/E770.fwh
              00000000: 2020 2020 2020 2020 0945 3737 3020 2020 .E770
              00000010: 2078 0100 0000 0000 0000 0000 0000 0000 x..............
              00000020: 0000 0000 0000 0000 0000 0000 0000 0000 ................
              00000030: 0000 0000 0000 0000 0000 0000 0000 0003 ................
              00000040: 2020 2032 3035 3737 2020 2020 2020 2020 20577
              00000050: 2020 2020 2020 2020 2020 2020 2020 2020
              00000060: 2048 5553 3135 3630 3330 564c 5336 3030 HUS156030VLS600
              00000070: 2020 2032 3035 3738 2020 2020 2020 2020 20578
              00000080: 2020 2020 2020 2020 2020 2020 2020 2020
              00000090: 2048 5553 3135 3630 3435 564c 5336 3030 HUS156045VLS600
              000000a0: 2020 2032 3035 3739 2020 2020 2020 2020 20579
              000000b0: 2020 2020 2020 2020 2020 2020 2020 2020
              000000c0: 2048 5553 3135 3630 3630 564c 5336 3030 HUS156060VLS600
              000000d0: 0e80 0000 0000 0000 0000 0000 0000 0000 ................
              000000e0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
              000000f0: 4869 7461 6368 6920 476c 6f62 616c 2053 Hitachi Global S


              See my answer in Using non-certified hard drives in Dell MD3220 storage array.






              share|improve this answer
























              • Making this change (20578 ... 00000) allows the model check to succeed, however sasdupie -u -f -debug debug.log then complains with The operation failed due to an invalid image file which is most likely checksum on the modified E770.fwh file. The invalid image error comes out of sasdupie binary, not any external calls.

                – David McNeill
                Mar 11 at 4:21


















              1














              Do you also have a Windows OS available for the firmware update? I only had a look at the windows update tool for a different Dell system, but the update mechanism seems to be the same for all Hitachi/Toshiba/Seagate drives. Maybe it's worth a shot to replace the hardware id 20578 for HUS156045VLS600 with your current drives' hardware id in E770.fwh and run the SASDUPIE.exe update tool manually.



              Hexdump of the first 256 bytes of the firmware binary payload/E770.fwh



              ibm@x250:/mnt/c/Users/ibm/AppData/Local/Temp/cb868bcd-1f9f-476a-a137-6bf2ea998e23$ xxd -l 256 payload/E770.fwh
              00000000: 2020 2020 2020 2020 0945 3737 3020 2020 .E770
              00000010: 2078 0100 0000 0000 0000 0000 0000 0000 x..............
              00000020: 0000 0000 0000 0000 0000 0000 0000 0000 ................
              00000030: 0000 0000 0000 0000 0000 0000 0000 0003 ................
              00000040: 2020 2032 3035 3737 2020 2020 2020 2020 20577
              00000050: 2020 2020 2020 2020 2020 2020 2020 2020
              00000060: 2048 5553 3135 3630 3330 564c 5336 3030 HUS156030VLS600
              00000070: 2020 2032 3035 3738 2020 2020 2020 2020 20578
              00000080: 2020 2020 2020 2020 2020 2020 2020 2020
              00000090: 2048 5553 3135 3630 3435 564c 5336 3030 HUS156045VLS600
              000000a0: 2020 2032 3035 3739 2020 2020 2020 2020 20579
              000000b0: 2020 2020 2020 2020 2020 2020 2020 2020
              000000c0: 2048 5553 3135 3630 3630 564c 5336 3030 HUS156060VLS600
              000000d0: 0e80 0000 0000 0000 0000 0000 0000 0000 ................
              000000e0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
              000000f0: 4869 7461 6368 6920 476c 6f62 616c 2053 Hitachi Global S


              See my answer in Using non-certified hard drives in Dell MD3220 storage array.






              share|improve this answer
























              • Making this change (20578 ... 00000) allows the model check to succeed, however sasdupie -u -f -debug debug.log then complains with The operation failed due to an invalid image file which is most likely checksum on the modified E770.fwh file. The invalid image error comes out of sasdupie binary, not any external calls.

                – David McNeill
                Mar 11 at 4:21
















              1












              1








              1







              Do you also have a Windows OS available for the firmware update? I only had a look at the windows update tool for a different Dell system, but the update mechanism seems to be the same for all Hitachi/Toshiba/Seagate drives. Maybe it's worth a shot to replace the hardware id 20578 for HUS156045VLS600 with your current drives' hardware id in E770.fwh and run the SASDUPIE.exe update tool manually.



              Hexdump of the first 256 bytes of the firmware binary payload/E770.fwh



              ibm@x250:/mnt/c/Users/ibm/AppData/Local/Temp/cb868bcd-1f9f-476a-a137-6bf2ea998e23$ xxd -l 256 payload/E770.fwh
              00000000: 2020 2020 2020 2020 0945 3737 3020 2020 .E770
              00000010: 2078 0100 0000 0000 0000 0000 0000 0000 x..............
              00000020: 0000 0000 0000 0000 0000 0000 0000 0000 ................
              00000030: 0000 0000 0000 0000 0000 0000 0000 0003 ................
              00000040: 2020 2032 3035 3737 2020 2020 2020 2020 20577
              00000050: 2020 2020 2020 2020 2020 2020 2020 2020
              00000060: 2048 5553 3135 3630 3330 564c 5336 3030 HUS156030VLS600
              00000070: 2020 2032 3035 3738 2020 2020 2020 2020 20578
              00000080: 2020 2020 2020 2020 2020 2020 2020 2020
              00000090: 2048 5553 3135 3630 3435 564c 5336 3030 HUS156045VLS600
              000000a0: 2020 2032 3035 3739 2020 2020 2020 2020 20579
              000000b0: 2020 2020 2020 2020 2020 2020 2020 2020
              000000c0: 2048 5553 3135 3630 3630 564c 5336 3030 HUS156060VLS600
              000000d0: 0e80 0000 0000 0000 0000 0000 0000 0000 ................
              000000e0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
              000000f0: 4869 7461 6368 6920 476c 6f62 616c 2053 Hitachi Global S


              See my answer in Using non-certified hard drives in Dell MD3220 storage array.






              share|improve this answer













              Do you also have a Windows OS available for the firmware update? I only had a look at the windows update tool for a different Dell system, but the update mechanism seems to be the same for all Hitachi/Toshiba/Seagate drives. Maybe it's worth a shot to replace the hardware id 20578 for HUS156045VLS600 with your current drives' hardware id in E770.fwh and run the SASDUPIE.exe update tool manually.



              Hexdump of the first 256 bytes of the firmware binary payload/E770.fwh



              ibm@x250:/mnt/c/Users/ibm/AppData/Local/Temp/cb868bcd-1f9f-476a-a137-6bf2ea998e23$ xxd -l 256 payload/E770.fwh
              00000000: 2020 2020 2020 2020 0945 3737 3020 2020 .E770
              00000010: 2078 0100 0000 0000 0000 0000 0000 0000 x..............
              00000020: 0000 0000 0000 0000 0000 0000 0000 0000 ................
              00000030: 0000 0000 0000 0000 0000 0000 0000 0003 ................
              00000040: 2020 2032 3035 3737 2020 2020 2020 2020 20577
              00000050: 2020 2020 2020 2020 2020 2020 2020 2020
              00000060: 2048 5553 3135 3630 3330 564c 5336 3030 HUS156030VLS600
              00000070: 2020 2032 3035 3738 2020 2020 2020 2020 20578
              00000080: 2020 2020 2020 2020 2020 2020 2020 2020
              00000090: 2048 5553 3135 3630 3435 564c 5336 3030 HUS156045VLS600
              000000a0: 2020 2032 3035 3739 2020 2020 2020 2020 20579
              000000b0: 2020 2020 2020 2020 2020 2020 2020 2020
              000000c0: 2048 5553 3135 3630 3630 564c 5336 3030 HUS156060VLS600
              000000d0: 0e80 0000 0000 0000 0000 0000 0000 0000 ................
              000000e0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
              000000f0: 4869 7461 6368 6920 476c 6f62 616c 2053 Hitachi Global S


              See my answer in Using non-certified hard drives in Dell MD3220 storage array.







              share|improve this answer












              share|improve this answer



              share|improve this answer










              answered Feb 9 at 2:05









              FreddyFreddy

              71119




              71119













              • Making this change (20578 ... 00000) allows the model check to succeed, however sasdupie -u -f -debug debug.log then complains with The operation failed due to an invalid image file which is most likely checksum on the modified E770.fwh file. The invalid image error comes out of sasdupie binary, not any external calls.

                – David McNeill
                Mar 11 at 4:21





















              • Making this change (20578 ... 00000) allows the model check to succeed, however sasdupie -u -f -debug debug.log then complains with The operation failed due to an invalid image file which is most likely checksum on the modified E770.fwh file. The invalid image error comes out of sasdupie binary, not any external calls.

                – David McNeill
                Mar 11 at 4:21



















              Making this change (20578 ... 00000) allows the model check to succeed, however sasdupie -u -f -debug debug.log then complains with The operation failed due to an invalid image file which is most likely checksum on the modified E770.fwh file. The invalid image error comes out of sasdupie binary, not any external calls.

              – David McNeill
              Mar 11 at 4:21







              Making this change (20578 ... 00000) allows the model check to succeed, however sasdupie -u -f -debug debug.log then complains with The operation failed due to an invalid image file which is most likely checksum on the modified E770.fwh file. The invalid image error comes out of sasdupie binary, not any external calls.

              – David McNeill
              Mar 11 at 4:21













              0














              As I don't have access to a similar hardware, all of my findings are opinions and NOT to be considered as working instructions. Modifying firmware of hardware devices flashing ALWAYS involves the risk of bricking hardware.



              The Linux packge contains the following files which are most likely relevant, comments noted with #:



              ├── framework64
              │   ├── duppmdatacollector.bin
              │   ├── getSystemId
              │   ├── hapi
              │   │   ├── funcs
              │   │   │   ├── instsvc-uninstall.sh
              │   │   │   ├── srvadmin-hapi.sh
              │   │   │   └── srvadmin-omilcore.sh
              │   │   └── hapi64.tgz
              │   └── sputility.bin
              ├── l64
              # sasdupie seems to be the flasher executable, tries to run dupdisneyinstall.sh
              # which seems to install hapi64.tgz, but didn't try to run that with sufficient priviledges.
              │   ├── sasdupie
              # RPM contains some LSI libraries, which will be installed in /opt/lsi/
              # these files are NOT the same as in the directory
              │   └── srvadmin-storelib-sysfs-7.2.0-4.1.1.el4.x86_64.rpm
              # the xml contains the information:
              # 4. If this is a BIOS update package, install any necessary Embedded Systems
              # Management firmware prior to this BIOS update. Otherwise, go next step.
              # could be related to dupdisneyinstall.sh
              ├── package.xml
              ├── payload
              # this looks to be the actual drive firmware file
              │   └── E770.fwh
              # PIEConfig.sh holds information for the firmware, and looks to describe the sasdupie call
              ├── PIEConfig.sh
              # PIEInfo.txt describes required the steps for the installation.
              ├── PIEInfo.txt


              Calling l64/sasdupie prints the help message, if not run as root there the script dupdisneyinstall.sh fails with insufficent privileges.



              Running strace -e file l64/sasdupie shows that sasdupie tries to load libraries that are not part of this firmware file. Most likely these are part of the mentioned Embedded Systems Management firmware in package.xml.



              So a way forward can be to:




              • install the Embedded Systems Management firmware

              • run l64/sasdupie as root and see if dupdisneyinstall.sh succeeds

              • in case it works, use the options from PIEConfig.sh to execute l64/sasdupie


              Should your system be a 32-bit system, use l32 instead of l64.






              share|improve this answer




























                0














                As I don't have access to a similar hardware, all of my findings are opinions and NOT to be considered as working instructions. Modifying firmware of hardware devices flashing ALWAYS involves the risk of bricking hardware.



                The Linux packge contains the following files which are most likely relevant, comments noted with #:



                ├── framework64
                │   ├── duppmdatacollector.bin
                │   ├── getSystemId
                │   ├── hapi
                │   │   ├── funcs
                │   │   │   ├── instsvc-uninstall.sh
                │   │   │   ├── srvadmin-hapi.sh
                │   │   │   └── srvadmin-omilcore.sh
                │   │   └── hapi64.tgz
                │   └── sputility.bin
                ├── l64
                # sasdupie seems to be the flasher executable, tries to run dupdisneyinstall.sh
                # which seems to install hapi64.tgz, but didn't try to run that with sufficient priviledges.
                │   ├── sasdupie
                # RPM contains some LSI libraries, which will be installed in /opt/lsi/
                # these files are NOT the same as in the directory
                │   └── srvadmin-storelib-sysfs-7.2.0-4.1.1.el4.x86_64.rpm
                # the xml contains the information:
                # 4. If this is a BIOS update package, install any necessary Embedded Systems
                # Management firmware prior to this BIOS update. Otherwise, go next step.
                # could be related to dupdisneyinstall.sh
                ├── package.xml
                ├── payload
                # this looks to be the actual drive firmware file
                │   └── E770.fwh
                # PIEConfig.sh holds information for the firmware, and looks to describe the sasdupie call
                ├── PIEConfig.sh
                # PIEInfo.txt describes required the steps for the installation.
                ├── PIEInfo.txt


                Calling l64/sasdupie prints the help message, if not run as root there the script dupdisneyinstall.sh fails with insufficent privileges.



                Running strace -e file l64/sasdupie shows that sasdupie tries to load libraries that are not part of this firmware file. Most likely these are part of the mentioned Embedded Systems Management firmware in package.xml.



                So a way forward can be to:




                • install the Embedded Systems Management firmware

                • run l64/sasdupie as root and see if dupdisneyinstall.sh succeeds

                • in case it works, use the options from PIEConfig.sh to execute l64/sasdupie


                Should your system be a 32-bit system, use l32 instead of l64.






                share|improve this answer


























                  0












                  0








                  0







                  As I don't have access to a similar hardware, all of my findings are opinions and NOT to be considered as working instructions. Modifying firmware of hardware devices flashing ALWAYS involves the risk of bricking hardware.



                  The Linux packge contains the following files which are most likely relevant, comments noted with #:



                  ├── framework64
                  │   ├── duppmdatacollector.bin
                  │   ├── getSystemId
                  │   ├── hapi
                  │   │   ├── funcs
                  │   │   │   ├── instsvc-uninstall.sh
                  │   │   │   ├── srvadmin-hapi.sh
                  │   │   │   └── srvadmin-omilcore.sh
                  │   │   └── hapi64.tgz
                  │   └── sputility.bin
                  ├── l64
                  # sasdupie seems to be the flasher executable, tries to run dupdisneyinstall.sh
                  # which seems to install hapi64.tgz, but didn't try to run that with sufficient priviledges.
                  │   ├── sasdupie
                  # RPM contains some LSI libraries, which will be installed in /opt/lsi/
                  # these files are NOT the same as in the directory
                  │   └── srvadmin-storelib-sysfs-7.2.0-4.1.1.el4.x86_64.rpm
                  # the xml contains the information:
                  # 4. If this is a BIOS update package, install any necessary Embedded Systems
                  # Management firmware prior to this BIOS update. Otherwise, go next step.
                  # could be related to dupdisneyinstall.sh
                  ├── package.xml
                  ├── payload
                  # this looks to be the actual drive firmware file
                  │   └── E770.fwh
                  # PIEConfig.sh holds information for the firmware, and looks to describe the sasdupie call
                  ├── PIEConfig.sh
                  # PIEInfo.txt describes required the steps for the installation.
                  ├── PIEInfo.txt


                  Calling l64/sasdupie prints the help message, if not run as root there the script dupdisneyinstall.sh fails with insufficent privileges.



                  Running strace -e file l64/sasdupie shows that sasdupie tries to load libraries that are not part of this firmware file. Most likely these are part of the mentioned Embedded Systems Management firmware in package.xml.



                  So a way forward can be to:




                  • install the Embedded Systems Management firmware

                  • run l64/sasdupie as root and see if dupdisneyinstall.sh succeeds

                  • in case it works, use the options from PIEConfig.sh to execute l64/sasdupie


                  Should your system be a 32-bit system, use l32 instead of l64.






                  share|improve this answer













                  As I don't have access to a similar hardware, all of my findings are opinions and NOT to be considered as working instructions. Modifying firmware of hardware devices flashing ALWAYS involves the risk of bricking hardware.



                  The Linux packge contains the following files which are most likely relevant, comments noted with #:



                  ├── framework64
                  │   ├── duppmdatacollector.bin
                  │   ├── getSystemId
                  │   ├── hapi
                  │   │   ├── funcs
                  │   │   │   ├── instsvc-uninstall.sh
                  │   │   │   ├── srvadmin-hapi.sh
                  │   │   │   └── srvadmin-omilcore.sh
                  │   │   └── hapi64.tgz
                  │   └── sputility.bin
                  ├── l64
                  # sasdupie seems to be the flasher executable, tries to run dupdisneyinstall.sh
                  # which seems to install hapi64.tgz, but didn't try to run that with sufficient priviledges.
                  │   ├── sasdupie
                  # RPM contains some LSI libraries, which will be installed in /opt/lsi/
                  # these files are NOT the same as in the directory
                  │   └── srvadmin-storelib-sysfs-7.2.0-4.1.1.el4.x86_64.rpm
                  # the xml contains the information:
                  # 4. If this is a BIOS update package, install any necessary Embedded Systems
                  # Management firmware prior to this BIOS update. Otherwise, go next step.
                  # could be related to dupdisneyinstall.sh
                  ├── package.xml
                  ├── payload
                  # this looks to be the actual drive firmware file
                  │   └── E770.fwh
                  # PIEConfig.sh holds information for the firmware, and looks to describe the sasdupie call
                  ├── PIEConfig.sh
                  # PIEInfo.txt describes required the steps for the installation.
                  ├── PIEInfo.txt


                  Calling l64/sasdupie prints the help message, if not run as root there the script dupdisneyinstall.sh fails with insufficent privileges.



                  Running strace -e file l64/sasdupie shows that sasdupie tries to load libraries that are not part of this firmware file. Most likely these are part of the mentioned Embedded Systems Management firmware in package.xml.



                  So a way forward can be to:




                  • install the Embedded Systems Management firmware

                  • run l64/sasdupie as root and see if dupdisneyinstall.sh succeeds

                  • in case it works, use the options from PIEConfig.sh to execute l64/sasdupie


                  Should your system be a 32-bit system, use l32 instead of l64.







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered Feb 9 at 11:01









                  harguthargut

                  1,68717




                  1,68717






























                      draft saved

                      draft discarded




















































                      Thanks for contributing an answer to Server Fault!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid



                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.


                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function () {
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f950947%2fwhat-app-in-dell-firmware-update-actually-writes-the-firmware-to-disk%23new-answer', 'question_page');
                      }
                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown







                      Popular posts from this blog

                      "Incorrect syntax near the keyword 'ON'. (on update cascade, on delete cascade,)

                      Alcedinidae

                      RAC Tourist Trophy