A deliberately private homelab
A Linux homelab for learning how to operate services while keeping public applications separate from private administration.
Architecture
- Application
- Private service network
- Persistent storage
- Recovery snapshots
Problem
Adding a file service to an existing server should not let it exhaust storage used by unrelated services.
Objectives
Preserve existing data, place a filesystem-enforced limit on the new data tree, and verify that recovery snapshots are consistent.
Implementation
Ext4 project quotas account for an entire directory tree. An inherited project identifier includes application-managed versions and temporary files. Startup checks validate the mount and quota before starting the service.
Challenges
The disk already contained data. Enabling quota support required a controlled service stop, an offline filesystem check and a remount without changing the partition layout.
Lessons learned
A running container is only one part of service readiness. Storage failure behaviour and restore procedures need explicit testing.
Future improvements
Complete desktop-client testing and independent off-device backups.
Security considerations
- No infrastructure addresses or credentials are published here.
- Public application routing and private administration are separate concerns.
- A local snapshot does not protect against losing the physical disk.