Today we answer the question:

Can a Raspberry Pi 1B be upgraded to run Debian 13 - and still be usable?

#Debian #raspberrypi #Trixie

TL;DR: Yes but performance is unacceptable.

So if, like myself, you are using your Raspberry Pi 1B (not B+!) to do the following:

- Run BIND
- Run ISC DHCPD
- Run keepalived (this Pi is 1 of 2 identical systems) to manage the running of BIND and DHCPD
- Run scripts via cron every minute to check on new DHCP and DNS configurations via git+ssh
- Run a script every minute to see if the SCRAM beacon (custom local code) has been activated (meaning we should shut down right now - unusual but possible)
- Monitor the UPS and, if it is discharging and the battery is below 51%, light the SCRAM beacon itself (power event)
- Pull changes from the DHCP reservation/assignment list off of the master keepalived host (so our DHCP mapping is as up to date as possible in the event of failover)

The question was: Can you do this on a Raspberry Pi 1B with Debian 13?

The answer is: Yeah, not really. The baseline load average rose from 0.33 - this is a single core host - - to 2.49 and that was before it was actually handing out any DHCP addresses or DNS records.

Command execution and keepalived failover took far longer than it did previously; in fact so long that I was beginning to think it had failed altogether.

So, the 2 Raspberry Pi 1B's are up for retirement or some other assigned light duty. Not bad for 2 boards I bought in 2014. I have a couple of spare Pi3B+ boards and those run Debian 13 wonderfully.

It's hard to believe that the older of the 2 boards was once my main backup host / network node. How did I live in something so small?

#raspberrypi #rpi1b #debian

@lorgonumputz Why not run DNSMASQ to both provide DNS and DHCP? Just curious why full on BIND and DHCP?

@meuon

Ah, yes, that would be simpler.

I'm using ISC DHCP to hand out both pool addresses and static addresses; and some of those system have differing sets of DNS resolvers, depending on the disposition of the host. Also, it handles multiple vlans on multiple interfaces.

DNS, likewise, has a number of custom additions to provide local-only domains and address groups.

Which is a long-winded way of saying: It's so #$#@!!! bespoke - what have I done?

But it does work well.

@lorgonumputz I run things both ways in multiple projects.. so I understand. As for bespoke? Never evar done that.. evar.. evar.. Laughing..
@lorgonumputz Is this not a kernel thing rather than OS?

@tripplehelix

Truly; but, I also want the typical updates and patches as with my other systems (rather than maintaining a custom kernel on this system).

@lorgonumputz If the Pi 1b is supported by the latest kernel included in Trixie, then it won't have any new issues. Rasperry Pi still support 32 bit, so it should be fine. Slow, but fine.

@tripplehelix

Oh, yes. I can see that there are Trixie packages available.

"Is it suitable for this purpose?" is a different question :)

@lorgonumputz
What do you do with it? Running a fully fledged desktop on it was never really usable. For less demanding tasks I would not expect any difference in speed compared to previous Debian versions.

@mhier

I used to use them as a backup host (with attached, externally powered USB drive) and a local host for development.

Currently my 2 1B's serve as a keepalived active/passive pair that handle our DHCP and DNS; they also watch for power events and put up a signal to shut down to other hosts on that network.

I pretty much never touch them; it's been pretty nice. All DNS/DHCP updates are done via Git.