Refactor: Container-Erkennung zentralisiert, SMART-Check auf LXC überspringen
Neues Modul services/platform_info.py prüft systemd-detect-virt einmalig beim Start (statt pro Request). SMART-Abfragen werden in Containern übersprungen, da /dev/sdX dort meist nicht verfügbar ist. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -11,6 +11,8 @@ import re
|
||||
from typing import Dict, List, Any, Optional, Tuple
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
from services.platform_info import IS_CONTAINER
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
_TIMEOUT = 5
|
||||
@@ -189,6 +191,8 @@ def scrub_pool(pool_name: str) -> Dict[str, str]:
|
||||
|
||||
|
||||
def get_smart_info(disk: str) -> Dict[str, Any]:
|
||||
if IS_CONTAINER:
|
||||
return {"available": False, "reason": "container"}
|
||||
stdout, _, rc = _run(["smartctl", "-A", "-i", "--json", f"/dev/{disk}"])
|
||||
if not stdout:
|
||||
return {}
|
||||
|
||||
Reference in New Issue
Block a user