项目作者: guillaumef

项目描述 :
Crucial SSD firmware - grub
高级语言: Perl
项目地址: git://github.com/guillaumef/crucial-ssd-firmware-grub.git
创建时间: 2019-05-26T09:39:31Z
项目社区:https://github.com/guillaumef/crucial-ssd-firmware-grub

开源协议:GNU General Public License v3.0

下载


crucial-ssd-firmware-grub

‘crucial-fw.pl’ is a little script to generate a single grub config for any crucial ssd firmware upgrade.
It’s a perl script.

You need:

  1. LWP::UserAgent
  2. File::Copy
  3. Archive::Extract (debian like: apt-get install libarchive-extract-perl)
  4. Archive::Zip (debian like: apt-get install libarchive-zip-perl)

‘crucial-fw.pl’ generates a file for grub (default is /etc/grub.d/45_crucial-fw).
Depending on the iso file, it will switch between two loading mode and grab the isolinux.cfg if needed.
This configuration is creating a submenu entry for grub containing one menu entry for each ssd reference specified in the configuration.

Your linux kernel must be able to mount a loopback iso file (loop and isofs modules). Any vanilla kernel is.

You have to maintain the .cfg file up-to-date.

  1. crucial-fw.pl <options>
  2. Options:
  3. -h | --help : usage
  4. -a | --all : generate all grub menu entries
  5. (default behavior is to scan for SSD types)
  6. -t | --type : specific ssds type to generate (multiple allowed)
  7. -l | --list : list ssds type managed

Default behavior is to try to detect the kind of ssd running on the current host.
You can generate all of them with the ‘-a’ option.

  1. # ./crucial-fw.pl -a
  2. Target: BX100 #1 (BX100_UPDATE_MU02_BOOTABLE.zip, BX100_UPDATE_MU02_BOOTABLE.iso)
  3. Downloading.. done
  4. Uncompressing.. BX100_UPDATE_MU02_BOOTABLE.iso done
  5. Moving to BX100-1.iso done
  6. Mounting done
  7. Grub -> mode initrd done
  8. Unmounting done
  9. Target: BX200 #1 (BX200_UPDATE_MU02_BOOTABLE.zip, BX200_UPDATE_MU02_BOOTABLE.iso)
  10. Downloading.. done
  11. Uncompressing.. BX200_UPDATE_MU02_BOOTABLE.iso done
  12. Moving to BX200-1.iso done
  13. Mounting done
  14. Grub -> mode initrd done
  15. Unmounting done
  16. Target: C300 #1 (c300-fw0002.zip, c300-fw0002.iso)
  17. Downloading.. done
  18. Uncompressing.. c300-fw0002.iso done
  19. Moving to C300-1.iso done
  20. Mounting done
  21. Grub -> mode linux16 done
  22. done
  23. Unmounting done
  24. Target: C300 #2 (bootisolinux-0002-to-0006.zip, bootisolinux-0002-to-0006.iso)
  25. Downloading.. done
  26. Uncompressing.. bootisolinux-0002-to-0006.iso done
  27. Moving to C300-2.iso done
  28. Mounting done
  29. Grub -> mode linux16 done
  30. done
  31. Unmounting done
  32. Target: C300 #3 (hp-crucial-5or6-to-7-05.zip, hp-crucial-5or6-to-7-05.iso)
  33. Downloading.. done
  34. Uncompressing.. hp-crucial-5or6-to-7-05.iso done
  35. Moving to C300-3.iso done
  36. Mounting done
  37. Grub -> mode linux16 done
  38. done
  39. Unmounting done
  40. Target: M4 #1 (crucial-m4-070h-07-00.zip, crucial-m4-070h-07-00.iso)
  41. Downloading.. done
  42. Uncompressing.. crucial-m4-070h-07-00.iso done
  43. Moving to M4-1.iso done
  44. Mounting done
  45. Grub -> mode linux16 done
  46. done
  47. Unmounting done
  48. Target: M500 #1 (crucial-m500.mu05-01-S0-tcg.zip, crucial-m500.mu05-01-S0-tcg.iso)
  49. Downloading.. done
  50. Uncompressing.. crucial-m500.mu05-01-S0-tcg.iso done
  51. Moving to M500-1.iso done
  52. Mounting done
  53. Grub -> mode linux16 done
  54. done
  55. Unmounting done
  56. Target: M550 #1 (m550-sed-update-mu02-bootable.zip, m550-sed-update-mu02-bootable.iso)
  57. Downloading.. done
  58. Uncompressing.. M550_SED_UPDATE_MU02_BOOTABLE.iso done
  59. Moving to M550-1.iso done
  60. Mounting done
  61. Grub -> mode initrd done
  62. Unmounting done
  63. Target: MX100 #1 (MX100_MU03_Update.zip, MX100_MU03_Update.iso)
  64. Downloading.. done
  65. Uncompressing.. MX100_MU03_Update.iso done
  66. Moving to MX100-1.iso done
  67. Mounting done
  68. Grub -> mode initrd done
  69. Unmounting done
  70. Target: MX100old #1 (MX100_MU02_BOOTABLE_ALL_CAP.zip, MX100_MU02_BOOTABLE_ALL_CAP.iso)
  71. Downloading.. done
  72. Uncompressing.. MX100_MU02_BOOTABLE_ALL_CAP.iso done
  73. Moving to MX100old-1.iso done
  74. Mounting done
  75. Grub -> mode initrd done
  76. Unmounting done
  77. Target: MX200 #1 (mx200-MU05-bootable.zip, mx200-MU05-bootable.iso)
  78. Downloading.. done
  79. Uncompressing.. MX200_MU05_Update.iso done
  80. Moving to MX200-1.iso done
  81. Mounting done
  82. Grub -> mode initrd done
  83. Unmounting done
  84. Target: MX200old1 #1 (mx200-MU04-bootable.zip, mx200-MU04-bootable.iso)
  85. Downloading.. done
  86. Uncompressing.. mx200_revMU04_bootable_media_update.iso done
  87. Moving to MX200old1-1.iso done
  88. Mounting done
  89. Grub -> mode initrd done
  90. Unmounting done
  91. Target: MX200old2 #1 (mx200-MU03-bootable.zip, mx200-MU03-bootable.iso)
  92. Downloading.. done
  93. Uncompressing.. MX200_MU03_BOOTABLE.iso done
  94. Moving to MX200old2-1.iso done
  95. Mounting done
  96. Grub -> mode initrd done
  97. Unmounting done
  98. Target: MX300 #1 (MX300_M0CR070_Firmware_Update.zip, MX300_M0CR070_Firmware_Update.iso)
  99. Downloading.. done
  100. Uncompressing.. MX300_M0CR070_Firmware_Update.iso done
  101. Moving to MX300-1.iso done
  102. Mounting done
  103. Grub -> mode initrd done
  104. Unmounting done
  105. Target: MX500 #1 (MX500_M3CR023_update.zip, MX500_M3CR023_update.iso)
  106. Downloading.. done
  107. Uncompressing.. MX500_M3CR023_update.iso done
  108. Moving to MX500-1.iso done
  109. Mounting done
  110. Grub -> mode initrd done
  111. Unmounting done
  112. Generated in: /etc/grub.d/45_crucial-fw
  113. ISO in: /boot/crucial-fw