Skip to content

Commit f58bb49

Browse files
author
Patrick M
committed
feat: add dell wyse
1 parent 902d43e commit f58bb49

File tree

3 files changed

+88
-0
lines changed

3 files changed

+88
-0
lines changed
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
---
2+
layout: post
3+
title: "Installing Debian on Dell Wyse 3040"
4+
date: 2023-06-25 12:00:00 -0500
5+
category: "Service Setup"
6+
tags: ['linux', 'debian']
7+
---
8+
9+
Recently picked up a very low power Dell Wyse 3040 to use as a headless docker host. It is powered by a quad-core Intel Atom Z8350 so not a lot of horsepower. It runs like a x64 Raspberry Pi. Installing Debian had some complications so I wanted to document them here.
10+
11+
## Resetting the BIOS
12+
13+
While my device came pre-reset, this is an important step. To reset the BIOS you'll need to open the case. There is a button near the battery on the board labeled PWCLR. The trick is to hold down the PWCLR button while powering up the system. It'll show a text mode screen indicating the passwords have been disabled. You can then power off, release the button and then you'll have a clear BIOS. The BIOS will revert to a locked state, and you can unlock it with the default BIOS password `Fireport` or `Fireport2`. Once you get to the BIOS you can change the boot order and wipe the eMMC.
14+
15+
## Wiping the eMMC
16+
17+
This is pretty easy to do. In the BIOS, navigate to _Maintenance > Data Wipe_ and check the `Wipe on Next Boot` tick. This will prompt a few confirmations to click through, then on next boot it will wipe itself. Typically I would use [ShredOS](https://github.com/PartialVolume/shredos.x86_64) but I found it did not detect the eMMC drive.
18+
19+
## Installing Debian
20+
21+
Picking a disto is tricky here. My device only had a 16 GB eMMC drive, which is really 14.8 GB. Most distros require 16 actualy GB. Debian does not though and installing a minimal version works well for this low power device. Luckily Debian 12 (Bookworm) just came out so I used that. I also used Ventoy, but you however you choose get it on a USB stick and in the device.
22+
23+
![Debian 12 Install (Non-GUI)](/assets/img/linux-on-dell-wyse-3040/debian-12-install.png)
24+
25+
I leave the root password empty. This will assign the initial user account to the sudo group. If root is needed later, you can assign a password using `sudo passwd root`. I wanted to keep the install as minimal as possible, so I only select `SSH Server` and `standard system utilities`.
26+
27+
![Minimal Install](../assets/img/linux-on-dell-wyse-3040/minimal-install.png)
28+
29+
## Boot Issues
30+
31+
Once Debian is installed, it may not boot up correctly. You may get an error saying `No bootable devices found`. Wyse devices require a `BOOTX64.EFI` file. To add this file, I loaded Debian Live and mounted the eMMC device. On my instance, the eMMC device has the label `mmcblk0p1`. Use the following to mount this device.
32+
33+
> Wyse devices require a `/boot/efi/EFI/BOOT/BOOTX64.EFI` file to boot to the eMMC
34+
{: .prompt-warning }
35+
36+
```bash
37+
sudo mkdir /mnt/debian
38+
sudo mount /dev/mmcblk0p1 /mnt/debian
39+
```
40+
41+
Then you can add a blank `BOOTX64.EFI` file if it's missing.
42+
43+
```bash
44+
mkdir /boot/efi/EFI/BOOT
45+
touch /boot/efi/EFI/BOOT/BOOTX64.EFI
46+
```
47+
48+
Once this file exists, you can reboot and Debian should boot. If the boot option is missing, you can add it easily in the BIOS under _General > Boot Options_. Add a boot option with file name: `\EFI\debian\grubx64.efi`.
49+
50+
## First Boot
51+
52+
Once booted up, I get the IP and use SSH remotely. I typically check for systemd errors and systemd journal,
53+
54+
```bash
55+
sudo systemctl --failed
56+
```
57+
58+
```bash
59+
sudo journalctl -p 3 -xb
60+
```
61+
62+
## Reboot Error
63+
64+
I had an issue where my Wyse 3040 hung on shutodwn and reboot. It would shutdown to a black screen and then never finish. This is apparently related to a [Intel Atom Cherry Trail CPU issue](https://github.com/up-board/up-community/wiki/Ubuntu_20.04#hang-on-shutdown-or-reboot-for-up-board). An easy fix is to add a file to `modprobe.d`.
65+
66+
```bash
67+
sudo nano /etc/modprobe.d/blacklist.conf
68+
```
69+
70+
```conf
71+
blacklist dw_dmac_core
72+
install dw_dmac /bin/true
73+
install dw_dmac_core /bin/true
74+
```
75+
76+
Once that file is in place, run the following.
77+
78+
```bash
79+
sudo update-initramfs -u
80+
```
81+
82+
The settings will take effect after the power has been restarted.
83+
84+
## Resources
85+
86+
- [Installing Debian On Dell Wyse 3040](https://wiki.debian.org/InstallingDebianOn/Dell/Wyse%203040)
87+
- [Hang on Shutdown or Reboot for UP Board](https://github.com/up-board/up-community/wiki/Ubuntu_20.04#hang-on-shutdown-or-reboot-for-up-board)
88+
- [Minimal Debian Bookworm](https://www.dwarmstrong.org/minimal-debian/)
76.8 KB
Loading
4.93 KB
Loading

0 commit comments

Comments
 (0)