The Problem

I run a small fleet of Linux boxes around the house — a few Debian machines, a couple of Raspberry Pis, the odd mini-PC picked up secondhand. Nothing exotic, just a home network's worth of "always meant to tidy that up" computers.

For years I kept waiting for Zorin OS to ship Zorin Grid, their long-promised fleet management tool. It never arrived. Around the same time I kept running into Google's Chrome Enterprise / Admin Console — the tool schools use to manage a whole classroom of Chromebooks from one dashboard: enroll a device, push policy, done. It got me thinking: that model — one admin, a fleet of simple machines, zero-touch onboarding — doesn't really exist for home Linux users. Ansible exists, but it's a sledgehammer for a home fleet of five to twenty boxes; you'll spend more time writing playbooks than you would just clicking a button.

So I built the tool I wanted: Remote Linux Manager.

Demo

What It Is

A cross-platform (Linux/Mac/Windows) desktop GUI for administrating a fleet of Ubuntu/Debian-derived boxes over SSH. No agents, no daemons to install on the managed machines — if it runs SSH, you can manage it. Point it at your home network, add your PCs, and get one dashboard for status, updates, commands, and file transfers across all of them.

The design philosophy is simple: cover the 80% of actions a home admin actually does day to day — check what's out of date, push a command, deploy some packages, bring a new box up to speed — without dragging in the infrastructure-as-code machinery that real config management tools assume you want.

Getting Your Fleet Onto the Dashboard

Adding a PC used to mean typing in its hostname or IP by hand. Now the tool scans your local subnet in the background the moment you open the "Add PC" dialog, and offers matching devices as you type — pick one and you're done. Free-text entry still works for anything the scan misses, so nothing's locked down.

As a nice side effect of the scan, the PC's MAC address gets captured automatically too — which sets up the next feature.

Wake-on-LAN: Making Sleeping PCs a Non-Issue

Half the point of running a home fleet is that some of those machines sleep to save power. That used to just look like "offline" to the tool — which isn't wrong, but it isn't the whole story either.

Now the tool tells the difference. Before it tries to talk to a PC over SSH, it does a quick check — if the machine doesn't answer but has a MAC address on file, it sends a Wake-on-LAN magic packet and gives it a window to boot before giving up. Practically, that means:

It's not aggressive about it either — wake attempts are throttled to about once a minute per PC, so a machine that's genuinely off (not just asleep) doesn't get spammed forever, it just gets a gentle, harmless nudge periodically in case that ever changes.

(Needs Wake-on-LAN enabled in BIOS/UEFI and at the OS/NIC level, and a wired connection — WoL over Wi-Fi is a coin flip on most hardware.)

What Else It Does

Under the Hood

Python 3, Tkinter for the GUI (with an mac_address and .local/mDNS resolution baked into how it finds your PCs), Paramiko for SSH, SQLite for local storage, and Fernet symmetric encryption so your saved passwords aren't sitting in plaintext. The subnet scanning and Wake-on-LAN packets are built entirely on Python's standard library — no extra dependencies needed for either.

Try It

The full source, install scripts for Linux/Mac/Windows, and a demo video are up on GitHub. It's still very much a homelab tool built for a homelab audience — if you've got your own small fleet of Linux boxes gathering dust around the house, I'd love to hear if this scratches the same itch it scratched for me.

Remote Linux Manager

Installation

Requires only Python — no GTK dependency.

  1. Download the project as a ZIP and unzip it. This creates a Manage-PC directory.
  2. Run the launcher for your platform from inside that folder:

bash

   # Linux   ./linux.sh

bash

   # macOS   ./mac.sh

bat

   :: Windows   windows.bat

Each launcher checks for Python and installs any required packages (paramiko, cryptography) automatically on first run — you may be prompted for your sudo password once during that initial setup, but not on subsequent runs.

Works on Windows, Linux, Chrome OS (via the Linux subsystem), and macOS.