this post was submitted on 10 Feb 2025
26 points (93.3% liked)

Selfhosted

42055 readers
549 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

Got a couple rpi 3Bs I'd like to use headless.

Downloaded 32bit pi os lite, flashed it to an sd card, powered on and did the initial setup (select keyboard layout, set first user+pass).

As soon as I'm dropped into a shell, I run 'sudo apt update' then 'sudo apt upgrade -y'.

Once these finish, I type 'sudo reboot'; the pi reboots, shows the rainbow splash, about a dozen lines of kernal boot messages then the video output dies and after a couple seconds the act light stops flashing too. Disconnecting power and powering it again does the same thing.

I don't think it's hardware failure as I get the same results with both 3Bs and with a 4B.

I don't know what to do from here.

I've spent the last 6 hours retrying this with both the 32 and 64 bit versions of pi os light. I can't get past the initial update/upgrade.

Anyone got any ideas? Anyone got a spare sd card, a pi 3B, and some free time to see if I'm just stupid somehow? I don't understand what I'm doing wrong.

/edit: RESULTS!

I can only assume this was a bad sd card. Tried a different card, with the exact same procedure: it finally booted after an upgrade.

Ran the update/upgrade again + a dist-upgrade and a couple more reboots. Up and running.

Excuse me while I go grab an image of that working card to file away.

top 14 comments
sorted by: hot top controversial new old
[–] nichtburningturtle@feddit.org 11 points 1 day ago

Try the 64bit version. pi 3b should be compatible with it. Using the official flashing tool might fix any other issues.

[–] merthyr1831@lemmy.ml 1 points 19 hours ago (1 children)

if you want em headless, you might wanna try dietpi (https://dietpi.com/). It's a debian base with an active developer maintaining a bunch of very useful utilities designed to make managing pis and SBCs as simple as possible. Better yet, it's designed to be extremely minimal on system resources, and strips out stuff like the display server unless you choose to install it.

Ive had it running on a homeserver on a pi4b for years now and it's rock solid.

[–] Darkassassin07@lemmy.ca 1 points 18 hours ago

I might consider it next time around; but after taking almost 10hours yesterday just to get raspiOS + docker running I'm leaving it the hell alone for a while.

This was just supposed to be a quick refresh to get my primary pihole off bare metal and into docker like the backup server is. Figured I'd be there for an hour or two, not 10...

[–] just_another_person@lemmy.world 5 points 1 day ago (3 children)
  1. What are the kernel messages that you are saying?
  2. Have you checked to see if the board is is still active via network?
  3. Have you tested with a different SD Card?
[–] Darkassassin07@lemmy.ca 6 points 1 day ago (1 children)

Seems it was a bad card.

Tried a different one and all is well again.

[–] just_another_person@lemmy.world 5 points 1 day ago* (last edited 1 day ago)

SD cards get thrashed pretty quickly from high I/O usage. Install and setup log2ram to mitigate some of that issue, and put any heavy logging to wherever you set the log2ram mount (/var/log by default). Note this will extend the life of the SD card, but reduce your available RAM while running. Another option is getting an NVME hat or USB adapter to not run on off of SD.

[–] Darkassassin07@lemmy.ca 1 points 1 day ago* (last edited 1 day ago) (1 children)

Here's a couple frames from a video I took. More lines than I thought, but I don't see anything noteworthy :/

Start of boot:

Last lines shown before video dies:

[–] just_another_person@lemmy.world 2 points 1 day ago* (last edited 1 day ago)

Pretty sure the video mode is just being set wrong. Did you set the run level or something since you mentioned headless? Have you tried to SSH into it?

What happens if you boot the clean image, then reboot it without updating?

[–] Darkassassin07@lemmy.ca 1 points 1 day ago (1 children)
  1. didn't look like anything unusual, but I'll try and grab a photo before it disappears from screen. Waiting on 'apt upgrade' rn.

  2. the devices MAC has a fixed DHCP lease. The IP becomes and remains unreachable as soon as I enter 'sudo reboot'.

  3. this is a previously known to be good card (it had a working OS on it prior to todays messing around), but I'll try another for good measure.

[–] Deckweiss@lemmy.world 2 points 1 day ago* (last edited 1 day ago)

Grab the sd card, and look at it on your pc. If windows can't read it (idk anything about windows), do so from another linux (live boot Ubuntu or something on your windows machine).

The journal log should be stored at either one of:

/var/log/journal/<machine-id>/*.journal

/run/log/journal/<machine-id>/*.journal

Post it's contents in full here via pastebin.com

[–] Peffse@lemmy.world 2 points 1 day ago (1 children)

Two questions:

Do you have anything between the Pi and Display, like an HDMI switch? Sometimes the Pi incorrectly sets the display resolution if it can't communicate with the display directly.

Did you use the Raspberry Pi Imager program? You can configure SSH and WiFi, before you even image to SD. It's how I set up my headless stuff so I don't have to futz with connecting displays.

[–] Darkassassin07@lemmy.ca 1 points 1 day ago (1 children)

No, just an hdmi cable directly between the pi+monitor.

Just downloaded the .img.xz, extracted the .img with 7zip, flashed to a card with win32diskimager.

[–] Peffse@lemmy.world 4 points 1 day ago (1 children)

Any reason you avoided the official Raspberry Pi Imager software? You really can just configure a headless OS all before flashing the SD card. Choose RPi OS lite from the list, then set up your hostname, username, password, wireless and turn on SSH service. Then all you have to do after flashing is plug in power and SSH in. None of this display troubleshooting would be needed.

Image

[–] Darkassassin07@lemmy.ca 1 points 1 day ago* (last edited 1 day ago)

Because this method has worked just fine for years. It's also how I restore my backups so it's a familiar process.

Configuration was never the issue; I have no problem setting it up manually and switching it to being headless when I'm ready for that.

The display not working is a symptom; the entire device was shutting down, not just refusing to output video unfortunately.

Turned out to be a faulty sd card. New one is now working just fine.