Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bootable IT mode? #23

Closed
bakgwailo opened this issue Mar 15, 2021 · 3 comments
Closed

Bootable IT mode? #23

bakgwailo opened this issue Mar 15, 2021 · 3 comments

Comments

@bakgwailo
Copy link

Ran the script (Debian buster, dell r220), and things kind of went OK - there was a failure at one point, and when it was attempting to reset/rescan, it ended up killing/freezing my SSH, and things were also hard looked up in the IDRAC console. A downside, also, was because of the reset I lost all of the backups in /tmp. However, I hard rebooted, and I think it actually works. The OS can see connected drivers, and the Dell bios/firmware no longer recognizes it as a RAID controller.

The only thing I cannot get working is using an attached drive as a boot device. Is there any way to do this? I have read with other methods that this is generally the flash just firmware vs firmware and bios back (using sas2flash). Figured I would at least see if this is possible with lsirec.

@Confusingboat
Copy link
Owner

If executed to completion, this script does allow bootable devices in both BIOS and UEFI modes since it flashes both of those boot ROMs.

Your card didn't get these ROMs flashed since your system locked up at one of the device resets, and flashing the boot ROMs is the very last thing in the script. Without logs it's difficult to say exactly what went wrong, but it happened either directly after the firmware flash or after setting the WWN/SAS address; it should be easy to tell which one it was by whether or not your adapter has a SAS address assigned to it.

You should be able to perform both of the aforementioned steps manually using lsiutil. To preface, you'll have to setup the environment, download the necessary boot ROM files, and set the vars referenced by the commands (or just replace them with inline strings) before running them, but you already knew that 😉

First, to set the SAS address if necessary:

lsiutil/lsiutil -p1 -a 18,${SAS_ADDRESS},0

Now you need to either reset the device using lsirec reset or by rebooting the server. Considering what happened last time I would recommend just rebooting.

The next step is to flash the boot ROMs:

lsiutil/lsiutil -p1 -a 4,yes,0 -f "${BIOS_FILE_PATH}",,"${UEFI_FILE_PATH}"

Once you're done flashing, reboot the server and you should be able to enter the boot ROM with CTRL + C like normal and set a bootable disk.

@bakgwailo
Copy link
Author

bakgwailo commented Mar 15, 2021

OK, so just going to edit/update: No idea how to find the old SAS id since the backups got cleaned out of /tmp on the hard reset. So, I made one up. Set it via the above command, rebooted, and then ran the flashing command. on Reboot (and swap the drive to the h310), I got the SAS bios boot page again, and I am able to boot into my OS. Looks like everything is good - appreciate the help. I think at least I am not successfully in IT mode.

@Confusingboat
Copy link
Owner

Sounds like you are good to go and in IT mode then!

Thanks for bringing this up as well, I may add a pre-flight test to the script to make sure device resets work properly on a system before making changes to prevent something like this from happening to others.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants