A lightweight n8n automation to monitor Linux disk space and send ntfy alerts when a critical threshold is exceeded.
Nodes (high level): Manual Trigger → Exec
df→ Function (parse/format) → IF threshold → HTTPntfyAlert + HTTPntfyReport.
- Runs
df -P -B1 --output=source,fstype,size,used,avail,pcent,target. - Filters out virtual filesystems (
tmpfs,devtmpfs,squashfs,overlay). - Calculates free percentage and builds a compact Markdown table (GiB/TiB).
- Sends:
- Report: a readable Markdown report to your ntfy topic.
- Alert: when any mount’s free % is below a threshold (default in the Function node logic).
n8n-disk-check-glaciar-public/
├─ workflows/
│ └─ disk_check_FULL.json
├─ scripts/
│ └─ import.sh
├─ LICENSE
├─ .gitignore
└─ README.md
- n8n → Workflows → Import from File.
- Choose
workflows/disk_check_FULL.json. - Open the workflow and update:
- ntfy topic URL (use your own, e.g.,
https://ntfy.sh/<your-topic>). - (Optional) Replace Manual Trigger with a Cron node for your schedule.
- ntfy topic URL (use your own, e.g.,
# from repo root
./scripts/import.sh- Threshold: In the Function node, change the comparison (example):
overallLow = vols.some(v => v.freePct < <THRESHOLD>); - Ignore list: Adjust
tmpfs,devtmpfs,squashfs,overlayto your needs. - Timezone: Set the workflow timezone to match your environment.
- ntfy topic: Replace
https://ntfy.sh/<your-topic>with your topic or self‑hosted instance.
- The Exec node runs a shell command; deploy only on trusted n8n workers.
- If your ntfy server is private, add
Authorizationin the HTTP nodes.
Choose HTTPS or SSH.
HTTPS (use a Personal Access Token when prompted):
git init
git add .
git commit -m "feat: n8n disk check workflow with ntfy alerts"
git branch -M main
git remote add origin https://github.com/<your-username>/n8n-disk-check-glaciar.git
git push -u origin maingit init
git add .
git commit -m "feat: n8n disk check workflow with ntfy alerts"
git branch -M main
git remote add origin [email protected]:<your-username>/n8n-disk-check-glaciar.git
git push -u origin mainBuilt from the provided workflow JSON. See workflows/disk_check_FULL.json.
