Public Access
This commit is contained in:
1 parent
6a4cc97356
commit
e8c2bc4418
2 files changed
+48
-11
No files matched your search
+42
-9
@@ -1,21 +1,54 @@
|
||||
import os
|
||||
import shutil
|
||||
import requests
|
||||
import psutil
|
||||
|
||||
def obtenir_infos_serveur():
|
||||
# Espace disque racine /
|
||||
total, used, free = shutil.disk_usage("/")
|
||||
|
||||
# Espace disque /DATA (partition principale / RAID)
|
||||
# Recherche intelligente de la partition RAID ou /DATA via psutil
|
||||
data_stats = {}
|
||||
if os.path.exists("/DATA"):
|
||||
dt, du, df = shutil.disk_usage("/DATA")
|
||||
data_stats = {
|
||||
"total_gb": round(dt / (2**30), 2),
|
||||
"utilise_gb": round(du / (2**30), 2),
|
||||
"libre_gb": round(df / (2**30), 2),
|
||||
"pourcentage": round((du / dt) * 100, 1)
|
||||
}
|
||||
try:
|
||||
partitions = psutil.disk_partitions(all=False)
|
||||
for p in partitions:
|
||||
# Priorité à la détection d'un périphérique md (RAID) ou du point de montage /DATA
|
||||
if "md" in p.device or p.mountpoint == "/DATA":
|
||||
try:
|
||||
dt, du, df = shutil.disk_usage(p.mountpoint)
|
||||
data_stats = {
|
||||
"device": p.device,
|
||||
"mountpoint": p.mountpoint,
|
||||
"total_gb": round(dt / (2**30), 2),
|
||||
"utilise_gb": round(du / (2**30), 2),
|
||||
"libre_gb": round(df / (2**30), 2),
|
||||
"pourcentage": round((du / dt) * 100, 1)
|
||||
}
|
||||
if "md" in p.device:
|
||||
break # On privilégie en premier le RAID détecté
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
# Fallback sur /DATA si aucune détection spécifique md n'a eu lieu
|
||||
if not data_stats and os.path.exists("/DATA"):
|
||||
dt, du, df = shutil.disk_usage("/DATA")
|
||||
data_stats = {
|
||||
"device": "bind-mount /DATA",
|
||||
"mountpoint": "/DATA",
|
||||
"total_gb": round(dt / (2**30), 2),
|
||||
"utilise_gb": round(du / (2**30), 2),
|
||||
"libre_gb": round(df / (2**30), 2),
|
||||
"pourcentage": round((du / dt) * 100, 1)
|
||||
}
|
||||
except Exception:
|
||||
if os.path.exists("/DATA"):
|
||||
dt, du, df = shutil.disk_usage("/DATA")
|
||||
data_stats = {
|
||||
"total_gb": round(dt / (2**30), 2),
|
||||
"utilise_gb": round(du / (2**30), 2),
|
||||
"libre_gb": round(df / (2**30), 2),
|
||||
"pourcentage": round((du / dt) * 100, 1)
|
||||
}
|
||||
|
||||
# État du RAID logiciel (/proc/mdstat)
|
||||
raid_status = "RAID non actif ou non détecté"
|
||||
|
||||
Reference in new issue
Block a user