I Gave My Old Laptop a Second Life as a Home Server
Old laptop → home server (base setup)
I’m repurposing an old laptop as a local-only server. The goal is simple: a stable box on my LAN that can run Jellyfin, audiobookshelf, Immich, and a yt-dlp workflow later.
1. Install Debian
- Install Debian with a minimal profile.
- Set the hostname.
- Create a normal (non-root) user for administration.
- Reboot and log in.
2. Updated the system
sudo apt update
sudo apt upgrade
sudo apt autoremove
sudo apt install powertop vim
3. SSH
I start with password authentication to get my SSH key onto the server. From my main computer, I connect once using a password and use scp to copy my public key over. Then I verify that key login works from my main computer. Once the key works, I disable password authentication.
4. Make lid close not suspend
I want to close the lid and have the screen turn off without putting the server to sleep.
I edit:
sudo vim /etc/systemd/logind.conf
and add the following lines:
HandleLidSwitch=ignore
HandleLidSwitchExternalPower=ignore
HandleLidSwitchDocked=ignore
5. Folder organization
All media on this server goes under one root folder: /srv/media/.
sudo mkdir -p /srv/media
I use a shared group called media so permissions stay simple and consistent.
sudo groupadd -f media
sudo usermod -aG media "$USER"
sudo chgrp -R media /srv/media
6. Powertop autotuning
Powertop autotune on boot
I run powertop --auto-tune to apply a bunch of power-saving toggles (until reboot). Since this laptop is going to sit idle a lot, I make it automatic by running it at startup.
sudo powertop --auto-tune
Then I create a systemd service at /etc/systemd/system/powertop.service:
[Unit]
Description=Powertop auto-tune
After=multi-user.target
[Service]
Type=oneshot
ExecStart=/usr/sbin/powertop --auto-tune
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
and enable it:
sudo systemctl enable --now powertop.service
Next Steps
- Install Jellyfin
- Install audiobookshelf
- Install Immich
- Set up yt-dlp downloads