Files

44 lines
1.3 KiB
Python

#!/usr/bin/env python3
"""Quick system health check script."""
import os
import platform
import subprocess
def get_disk_usage():
result = subprocess.run(['df', '-h', '/'], capture_output=True, text=True)
lines = result.stdout.strip().split('\n')
if len(lines) >= 2:
parts = lines[1].split()
return {'total': parts[1], 'used': parts[2], 'avail': parts[3], 'use%': parts[4]}
return None
def get_memory_usage():
try:
with open('/proc/meminfo') as f:
lines = f.readlines()
mem = {}
for line in lines[:3]:
parts = line.split()
key = parts[0].rstrip(':')
val = parts[1]
if key in ['MemTotal', 'MemFree', 'MemAvailable']:
mem[key] = val
return mem
except:
return None
if __name__ == '__main__':
print("=== System Health Check ===")
print(f"Platform: {platform.system()} {platform.release()}")
print(f"Python: {platform.python_version()}")
print(f"User: {os.getenv('USER', 'unknown')}")
disk = get_disk_usage()
if disk:
print(f"Disk /: {disk['total']} total, {disk['used']} used, {disk['avail']} avail ({disk['use%']})")
mem = get_memory_usage()
if mem:
print(f"Memory: {mem['MemTotal']} total, {mem['MemAvailable']} available")
print("Status: OK")