Dell PowerEdge T40


I’ve successfully installed and ran QubesOS on a DELL PowerEdge T40.

I’m using it in prod since months now and so far it’s working great.
I’ve virtualized few fedoras and a Windows Server 2019 on it which I use daily.

Unfortunately for now I’m too fresh of a member, so I’m not allowed to upload the HLC file.
I will edit later when I can. Until then here’s the content:

  'mini tower'
brand: |
  Dell Inc.
model: |
  PowerEdge T40
bios: |
cpu: |
  Intel(R) Xeon(R) E-2224G CPU @ 3.50GHz
cpu-short: |
chipset: |
  Intel Corporation Device [8086:3e18] (rev 07)
chipset-short: |
gpu: |
  Intel Corporation Device [8086:3e96] (prog-if 00 [VGA controller])
gpu-short: |
network: |
  Intel Corporation Ethernet Connection (7) I219-LM (rev 10)
  Intel Corporation I350 Gigabit Network Connection (rev 01)
  Intel Corporation I350 Gigabit Network Connection (rev 01)
  Intel Corporation I350 Gigabit Network Connection (rev 01)
  Intel Corporation I350 Gigabit Network Connection (rev 01)
memory: |
scsi: |
  ST4000NE001-2MA1 Rev: EN01
  DVD+-RW GU90N    Rev: A1C3
  ST2000DM008-2FR1 Rev: 0002
  ST4000NE001-2MA1 Rev: EN01
usb: |

- works:
  qubes: |
  xen: |
  kernel: |
  remark: |
  credit: |
  link: |


Here is how I’ve installed Qubes v4.0.4 on it:

At first, the boot was stuck (better feedback than with v4.0.3 but still freezed).
It was working on legacy boot but freezed when booting on UEFI.

The USB stick I made couldn’t be edited because of ISO FS which is read only.
The trick was to first change the ISO file with those commands:

strings -a -t d Qubes-R4.0.4-x86_64.iso | grep 'noexitboot=1'
  30980552 noexitboot=1
  31433160 noexitboot=1
echo '#' > tmp
dd if=tmp of=Qubes-R4.0.4-x86_64.iso conv=notrunc bs=1 seek=30980552 count=1
dd if=tmp of=Qubes-R4.0.4-x86_64.iso conv=notrunc bs=1 seek=31433160 count=1
strings -a -t d Qubes-R4.0.4-x86_64.iso | grep 'mapbs=1'
  30980565 mapbs=1
  31433173 mapbs=1
dd if=tmp of=Qubes-R4.0.4-x86_64.iso conv=notrunc bs=1 seek=30980565 count=1
dd if=tmp of=Qubes-R4.0.4-x86_64.iso conv=notrunc bs=1 seek=31433173 count=1
rm tmp

Explanation: using strings command we find the offset where are written the boot conf files.
Using this information we replace the begining of the found lines with a # so those lines become comments.

Once the ISO file is fixed and we can “burn” it to the USB stick and boot on the install.

Once installed, I had another issue.
While the installation seemed to have been successfull, the system didn’t boot.
To fix that I used a tiny linux distro and fixed the EFI conf as described in EFI partition as read in UEFI Troubleshooting | Qubes OS

For me the problem was to point on the correct partition which was /dev/sdc1 (I had 3 HDD on this server) in efi/boot64.cfg.

That’s it, after that the system booted properly. Enjoy!

@stopi, I’ve moved your explanation post to a reply here so the HCL is close to the trouble shooting instructions. Hope you don’t mind.

It’s just that generally the HCL table links to the HCL report and this way it will be easier for others to see immediately what you had to troubleshoot.

@deeplow I’m glad you did, I was not sure about the best practice but it makes sense to me.
I’m now going to edit the post so it doesn’t look weird…

1 Like

Thank you @stopi for your HCL report, which is now part of this pull request:

… and will be visible on the website soon!