Files
chemenu/kb/concepts/SSD TRIM.md
T
torben b137359b90 feat: Link-Taxonomie u1 - kb/entities/systems, tools, technologies gelabelt
Files changed:
- kb/concepts/Denylist over Allowlist.md
- kb/concepts/LLM Wiki Pattern.md
- kb/concepts/SSD TRIM.md
- kb/entities/people/E3DC GmbH.md
- kb/entities/people/Vannevar Bush.md
- kb/entities/projects/ha-core.md
- kb/entities/projects/hacs-integration-blueprint.md
- kb/entities/systems/AGENTS.md.md
- kb/entities/systems/CLAUDE.md.md
- kb/entities/systems/E3DC.md
- kb/entities/systems/ENVIRONMENT.md.md
- kb/entities/systems/Memex.md
- kb/entities/systems/Tolkien Gateway.md
- kb/entities/technologies/Arch Linux.md
- kb/entities/technologies/Disk Encryption.md
- kb/entities/technologies/Docker.md
- kb/entities/technologies/Gitea Actions.md
- kb/entities/technologies/Gitea.md
- kb/entities/technologies/Go.md
- kb/entities/technologies/Home Assistant.md
- kb/entities/technologies/Kernel PM Governors.md
- kb/entities/technologies/LVM.md
- kb/entities/technologies/Linux Kernel.md
- kb/entities/technologies/MQTT.md
- kb/entities/technologies/OPC UA.md
- kb/entities/technologies/Python.md
- kb/entities/technologies/Rust.md
- kb/entities/technologies/Wine GE.md
- kb/entities/technologies/Wine-Staging.md
- kb/entities/technologies/acpi-cpufreq.md
- kb/entities/technologies/amd-pstate.md
- kb/entities/technologies/iii Engine.md
- kb/entities/tools/AUR.md
- kb/entities/tools/Act Runner.md
- kb/entities/tools/Agent Memory.md
- kb/entities/tools/Aura.md
- kb/entities/tools/Bottles.md
- kb/entities/tools/ChatGPT.md
- kb/entities/tools/Claude Code.md
- kb/entities/tools/Codex CLI.md
- kb/entities/tools/Dataview.md
- kb/entities/tools/GPG.md
- kb/entities/tools/GitHub Copilot.md
- kb/entities/tools/Gitea MCP Server.md
- kb/entities/tools/Lutris.md
- kb/entities/tools/Marp.md
- kb/entities/tools/Mistral Vibe.md
- kb/entities/tools/NotebookLM.md
- kb/entities/tools/Obsidian Web Clipper.md
- kb/entities/tools/Obsidian.md
- kb/entities/tools/OpenAI Codex.md
- kb/entities/tools/OpenCode.md
- kb/entities/tools/Pi.md
- kb/entities/tools/Proton.md
- kb/entities/tools/Wine.md
- kb/entities/tools/awesome-llm-wiki.md
- kb/entities/tools/farzaa gist.md
- kb/entities/tools/gdeploy.md
- kb/entities/tools/makepkg.md
- kb/entities/tools/pascalandy schema.md
- kb/entities/tools/qmd.md
- kb/entities/tools/wikitool.md
- kb/log.md
- work/link-taxonomy-migration/glossary.md
2026-09-02 19:36:04 +02:00

5.4 KiB

type, concept_type, tags, created, modified, related, sources, confidence, confidence_base, provenance, summary
type concept_type tags created modified related sources confidence confidence_base provenance summary
types/concept.md protocol
storage
ssd
performance
optimization
linux
2026-07-31 2026-08-29
LVM
Arch Linux
Source - Arch Linux Cheat Sheet
0.90 0.90 sourced Datenträgerbefehl, mit dem SSDs ungenutzte Blöcke zurückgewinnen - für gleichbleibende Leistung und längere Lebensdauer.

SSD TRIM

Typ: protocol

Definition

TRIM (oder Discard) ist ein Befehl, der einem Betriebssystem ermöglicht, eine Solid-State Drive (SSD) darüber zu informieren, welche Datenblöcke nicht mehr in Gebrauch sind und intern gelöscht werden können. Dies ist entscheidend für die Erhaltung der SSD-Leistung und Lebensdauer, da es der Garbage Collection der SSD ermöglicht, ungenutzte Blöcke freizugeben.

Kernpunkte

  • Zweck: Erhaltung der SSD-Leistung und Verlängerung der Lebensdauer
  • Mechanismus: OS benachrichtigt SSD über ungenutzte Blöcke
  • Vorteil: Verhindert Schreibverstärkung und Leistungsabbau
  • Protokoll: Teil des ATA- und SCSI-Befehlssatzes

Wie TRIM funktioniert

Ohne TRIM

  1. SSD schreibt Daten in einen Block
  2. Block wird „belegt"
  3. Datei wird vom OS gelöscht
  4. OS markiert Block als „frei", aber SSD weiß das nicht
  5. Nächster Schreibvorgang erfordert: alte Daten lesen → ändern → löschen → neue Daten schreiben
  6. Leistung verschlechtert sich im Laufe der Zeit

Mit TRIM

  1. SSD schreibt Daten in einen Block
  2. Block wird „belegt"
  3. Datei wird vom OS gelöscht
  4. OS sendet TRIM-Befehl: „Block X wird nicht mehr verwendet"
  5. SSD markiert Block intern als „veraltet"
  6. Nächster Schreibvorgang: SSD kann direkt in vorgel​öschten Block schreiben
  7. Leistung bleibt konsistent

TRIM unter Linux aktivieren

TRIM-Unterstützung überprüfen

# Check if SSD supports TRIM
lsblk -D | grep -i discard

# Check if filesystem supports TRIM
lsblk -f | grep -i discard

Manuelles TRIM

# Run TRIM manually on a mount point
fstrim /mount/point

# Run TRIM on all mounted filesystems
fstrim -a

# Verbose output
fstrim -v /mount/point

Automatisches TRIM

systemd-Timer (empfohlen):

# Enable weekly TRIM timer
systemctl enable fstrim.timer
systemctl start fstrim.timer

# Check status
systemctl status fstrim.timer

# Manual trigger
systemctl start fstrim.service

Cron-Job (Alternative):

# Add to root's crontab
0 3 * * 0 fstrim -a

TRIM mit Verschlüsselung

Beim Einsatz von Laufwerksverschlüsselung (dm-crypt/LUKS) erfordert TRIM-Unterstützung besondere Aufmerksamkeit wegen Sicherheitsauswirkungen.

Sicherheitsaspekte

Warnung: Das Zulassen von Discard (TRIM) auf verschlüsselten Geräten kann Informationen offenlegen über:

  • Welche Blöcke in Gebrauch sind
  • Dateisystem-Nutzungsmuster
  • Potenziell vertrauliche Metadaten

Optionen für verschlüsselte SSDs

Option 1: Discard auf LUKS-Ebene zulassen

# For new encryption
cryptsetup luksFormat --allow-discards /dev/sdX

# For existing encryption (requires reencryption)
cryptsetup reencrypt --encrypt --reduce-device-size 16M --allow-discards /dev/sdX

Option 2: Periodisches fstrim (Empfohlen für Sicherheit)

# Disable discard in crypttab
# /dev/sdX1 /mnt/crypt ext4 defaults 0 2

# Manually run fstrim after unlocking
fstrim /mnt/crypt

# Or use systemd timer (runs after boot)
systemctl enable fstrim.timer

Option 3: Hybrid-Ansatz

  • Discard für unverschlüsselte Metadatenbereiche zulassen
  • Periodisches fstrim für Datenbereiche verwenden

Referenz: https://wiki.archlinux.org/title/Dm-crypt/Specialties#Discard/TRIM_support_for_solid_state_drives_(SSD)

TRIM-Status überprüfen

# Check if discard is enabled for device
lsblk -D /dev/sdX

# Check mount options
mount | grep discard

# Check filesystem support
lsblk -o NAME,FSTYPE,DISC-GRAN,DISC-MAX

Dateisystem-Unterstützung

Dateisystem TRIM-Unterstützung Hinweise
ext4 Ja Standard in modernen Kerneln
XFS Ja Online-Discard unterstützt
Btrfs Ja Subvolume-fähig
NTFS Ja Via ntfs-3g
FAT32 Nein Keine TRIM-Unterstützung

Leistungsauswirkung

  • Ohne TRIM: Leistung kann sich nach längerer Verwendung um 30-50 % verschlechtern
  • Mit TRIM: Leistung bleibt nah bei Neu-Niveau
  • Overhead: TRIM-Befehle verursachen minimalen Overhead (~1-2%)

Wann zu verwenden

  • Immer: Auf SSD-Speichergeräten
  • Empfohlen: Auf NVMe-Laufwerken (TRIM ist noch kritischer)
  • Erwägen: Auf Hybrid-SSHD-Laufwerken
  • Nicht nötig: Auf HDD (rotierenden) Laufwerken

Wann NICHT zu verwenden

  • Auf HDD (rotierenden) Laufwerken - kein Nutzen
  • In hochsicheren Umgebungen, in denen Informationsverlust inakzeptabel ist (Kompromisse erwägen)
  • Auf Dateisystemen, die TRIM nicht unterstützen

Beziehungen

(dm-crypt/LUKS)

  • Ergänzt: LVM (Logical Volume Manager)
  • Läuft auf: Arch Linux und anderen Distributionen
  • Wirkt sich aus auf: Speicherleistung SSD-gestützter Systeme

Siehe auch

Beziehungen