Geschwindigkeitsprobleme mit Btrfs

Hey!

Ich habe mir letztens einen neuen Arbeitsrechner zusammengestellt.

Ich habe, schande über mich, CachyOS installiert (Gründe dafür sind nicht die nutzlosen Kernel Optimierungen, sondern weil Manjaro bei vielen Sachen rumzickt, das kann ich auf einem Arbeitsrechner nicht gebrauchen. Und CachyOS ist auch nicht das Gelbe vom Ei, nur mal so nebenbei).

Wie auch immer, ich habe eine NVMe mit 14000 Lese- und 13000 Schreibgeschwindigkeit.

Mit dem Btrfs bekomme ich gerade so zwischen 2500 und 3000 beim schreiben. Ohne CoW (Copy on Write) kommt die NVMe auf ca. 12500 (ich nutze LUKS, deswegen etwas langsamer).

Klar, ich ich könnte jetzt neu installieren mit ext4, dazu habe ich aber keine Lust, da ich schon zu viel eingerichtet habe. Ich könnte auch die Kompression in der fstab rausnehmen, und das ganze CoW ausstellen, aber das gilt dann nur für neue Ordner und Dateien.

Meine Frage ist:
Ist das bei euch auch so extrem langsam?

Ich habe mir sogar extra heute morgen Scripte gebaut um es zu verifizieren.
Hier das erste (nvme-diagnose.sh):

#!/bin/bash

OUT="$HOME/nvme-diagnose-$(date +%Y%m%d-%H%M%S).txt"

exec > >(tee "$OUT") 2>&1

echo "============================================================"
echo " NVMe / LUKS / BTRFS DIAGNOSE"
echo " $(date)"
echo "============================================================"
echo

echo "### SYSTEM"
echo "------------------------------------------------------------"
uname -a
echo
inxi -b
echo

echo "### PCI / NVME DEVICE"
echo "------------------------------------------------------------"
lspci -nn | grep -Ei 'non-volatile|nvme'
echo
echo "PCIe Link:"
sudo lspci -vv -s 04:00.0 | grep -E 'LnkCap|LnkSta'
echo

echo "### NVME LIST"
echo "------------------------------------------------------------"
if command -v nvme >/dev/null 2>&1; then
    sudo nvme list
    echo
    sudo nvme id-ctrl /dev/nvme0 | grep -E '^(mn|sn|fr|vid|ssvid|ieee|oacs|oncs|vwc)'
    echo
    sudo nvme smart-log /dev/nvme0
else
    echo "nvme-cli ist NICHT installiert."
    echo "Installiere es vorher mit:"
    echo "sudo pacman -S nvme-cli"
fi
echo

echo "### BLOCK DEVICES"
echo "------------------------------------------------------------"
lsblk -o NAME,KNAME,TYPE,FSTYPE,SIZE,FSAVAIL,FSUSE%,MOUNTPOINTS
echo

echo "### MOUNT OPTIONS"
echo "------------------------------------------------------------"
findmnt -no SOURCE,FSTYPE,OPTIONS /
echo
findmnt -t btrfs
echo

echo "### BTRFS FILESYSTEM USAGE"
echo "------------------------------------------------------------"
sudo btrfs filesystem usage /
echo

echo "### BTRFS FILESYSTEM DF"
echo "------------------------------------------------------------"
sudo btrfs filesystem df /
echo

echo "### BTRFS SUBVOLUMES"
echo "------------------------------------------------------------"
sudo btrfs subvolume list -p /
echo

echo "### BTRFS FEATURES"
echo "------------------------------------------------------------"
sudo btrfs inspect-internal dump-super -f /dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a 2>/dev/null | \
grep -E '^(magic|generation|compat_flags|compat_ro_flags|incompat_flags|csum_type|metadata_uuid)' | head -30
echo

echo "### LUKS"
echo "------------------------------------------------------------"
sudo cryptsetup status luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a
echo
sudo cryptsetup luksDump /dev/nvme0n1p2 | \
grep -E 'Version|PBKDF|Cipher|Mode|Sector size|Integrity|Hash|af stripes|Keyslots|Tokens' | head -80
echo

echo "### DEVICE MAPPER"
echo "------------------------------------------------------------"
sudo dmsetup table
echo

echo "### IO SCHEDULER"
echo "------------------------------------------------------------"
for d in /sys/block/nvme*/queue/scheduler; do
    echo "$d:"
    cat "$d"
done
echo

echo "### QUEUE PARAMETERS"
echo "------------------------------------------------------------"
for p in nr_requests io_poll io_poll_delay max_sectors_kb max_hw_sectors_kb read_ahead_kb rotational nomerges; do
    f="/sys/block/nvme0n1/queue/$p"
    if [ -f "$f" ]; then
        printf "%-22s " "$p:"
        cat "$f"
    fi
done
echo

echo "### CPU AES / CRYPTO"
echo "------------------------------------------------------------"
grep -m1 -oE 'aes' /proc/cpuinfo | head -1 || true
echo
lsmod | grep -E 'crypt|aes|xts'
echo

echo "### KERNEL BTRFS / NVME MESSAGES"
echo "------------------------------------------------------------"
sudo dmesg | grep -Ei 'btrfs|nvme|dm-crypt|crypt|I/O error|timeout|reset' | tail -200
echo

echo "### CURRENT DISK STATS"
echo "------------------------------------------------------------"
cat /proc/diskstats | grep -E 'nvme0n1|dm-0'
echo

echo "============================================================"
echo " BENCHMARKS"
echo "============================================================"
echo
echo "Die folgenden Tests schreiben Testdaten nach ~/nvme-diagnose-test"
echo "und löschen sie danach."
echo

TESTDIR="$HOME/nvme-diagnose-test"
mkdir -p "$TESTDIR"

echo "### TEST 1: BUFFERED WRITE"
echo "------------------------------------------------------------"
sync
/usr/bin/time -f 'Zeit: %E' \
    dd if=/dev/zero \
    of="$TESTDIR/buffered-test" \
    bs=1M count=8192 \
    status=progress \
    conv=fdatasync
echo
rm -f "$TESTDIR/buffered-test"
sync
echo

if command -v fio >/dev/null 2>&1; then

    echo "### TEST 2: FIO BUFFERED WRITE"
    echo "------------------------------------------------------------"
    fio \
        --name=buffered \
        --filename="$TESTDIR/fio-buffered" \
        --size=8G \
        --bs=1M \
        --rw=write \
        --iodepth=32 \
        --direct=0 \
        --runtime=20 \
        --time_based \
        --group_reporting
    echo
    rm -f "$TESTDIR/fio-buffered"
    sync
    echo

    echo "### TEST 3: FIO DIRECT WRITE / NORMAL COW"
    echo "------------------------------------------------------------"
    fio \
        --name=direct-cow \
        --filename="$TESTDIR/fio-direct-cow" \
        --size=8G \
        --bs=1M \
        --rw=write \
        --iodepth=8 \
        --direct=1 \
        --runtime=20 \
        --time_based \
        --group_reporting
    echo
    rm -f "$TESTDIR/fio-direct-cow"
    sync
    echo

    echo "### TEST 4: FIO DIRECT WRITE / NOCOW"
    echo "------------------------------------------------------------"
    NOCOWDIR="$HOME/nvme-diagnose-nocow"
    mkdir -p "$NOCOWDIR"

    # NOCOW muss gesetzt werden, bevor Dateien darin angelegt werden.
    sudo chattr +C "$NOCOWDIR" 2>/dev/null || true

    fio \
        --name=direct-nocow \
        --filename="$NOCOWDIR/fio-direct-nocow" \
        --size=8G \
        --bs=1M \
        --rw=write \
        --iodepth=8 \
        --direct=1 \
        --runtime=20 \
        --time_based \
        --group_reporting

    echo
    rm -f "$NOCOWDIR/fio-direct-nocow"
    rmdir "$NOCOWDIR" 2>/dev/null || true
    sync

else
    echo "fio ist NICHT installiert."
fi

echo
echo "### TESTDATEIEN AUFRÄUMEN"
echo "------------------------------------------------------------"
rm -rf "$TESTDIR"

echo
echo "============================================================"
echo " FERTIG"
echo "============================================================"
echo
echo "Ausgabedatei:"
echo "$OUT"
echo
echo "Dateigröße:"
ls -lh "$OUT"

Hier das zweite (nvme-diagnose-2.sh):

#!/bin/bash

set -u

OUT="$HOME/nvme-final-test-$(date +%Y%m%d-%H%M%S).txt"

exec > >(tee "$OUT") 2>&1

TESTDIR="$HOME/nvme-final-test"

echo "============================================================"
echo " NVMe FINAL PERFORMANCE TEST"
echo " $(date)"
echo "============================================================"
echo

echo "### SYSTEM"
echo "------------------------------------------------------------"
uname -a
echo
echo "Mount:"
findmnt -no SOURCE,FSTYPE,OPTIONS /
echo
echo "Scheduler:"
cat /sys/block/nvme0n1/queue/scheduler
echo

echo "### NVME"
echo "------------------------------------------------------------"
sudo nvme smart-log /dev/nvme0 | grep -E \
    'temperature|percentage_used|media_errors|controller_busy_time'
echo

echo "### LUKS"
echo "------------------------------------------------------------"
sudo cryptsetup status luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a
echo

rm -rf "$TESTDIR"
mkdir -p "$TESTDIR"

echo "============================================================"
echo " TEST 1: BUFFERED + COW + INCOMPRESSIBLE"
echo "============================================================"
echo

fio \
    --name=cow-buffered \
    --filename="$TESTDIR/cow-buffered" \
    --size=16G \
    --bs=1M \
    --rw=write \
    --ioengine=io_uring \
    --iodepth=32 \
    --direct=0 \
    --refill_buffers=1 \
    --randrepeat=0 \
    --runtime=30 \
    --time_based \
    --group_reporting

rm -f "$TESTDIR/cow-buffered"
sync

echo
echo "============================================================"
echo " TEST 2: DIRECT + COW + INCOMPRESSIBLE"
echo "============================================================"
echo

fio \
    --name=cow-direct \
    --filename="$TESTDIR/cow-direct" \
    --size=16G \
    --bs=1M \
    --rw=write \
    --ioengine=io_uring \
    --iodepth=32 \
    --direct=1 \
    --refill_buffers=1 \
    --randrepeat=0 \
    --runtime=30 \
    --time_based \
    --group_reporting

rm -f "$TESTDIR/cow-direct"
sync

echo
echo "============================================================"
echo " TEST 3: DIRECT + NOCOW + INCOMPRESSIBLE"
echo "============================================================"
echo

NOCOWDIR="$HOME/nvme-final-nocow"

rm -rf "$NOCOWDIR"
mkdir -p "$NOCOWDIR"

sudo chattr +C "$NOCOWDIR"

lsattr -d "$NOCOWDIR"

fio \
    --name=nocow-direct \
    --filename="$NOCOWDIR/nocow-direct" \
    --size=16G \
    --bs=1M \
    --rw=write \
    --ioengine=io_uring \
    --iodepth=32 \
    --direct=1 \
    --refill_buffers=1 \
    --randrepeat=0 \
    --runtime=30 \
    --time_based \
    --group_reporting

rm -f "$NOCOWDIR/nocow-direct"
rmdir "$NOCOWDIR"

echo
echo "============================================================"
echo " TEST 4: DIRECT + NOCOW + Q1"
echo "============================================================"
echo

NOCOWDIR="$HOME/nvme-final-nocow-q1"

rm -rf "$NOCOWDIR"
mkdir -p "$NOCOWDIR"

sudo chattr +C "$NOCOWDIR"

fio \
    --name=nocow-q1 \
    --filename="$NOCOWDIR/nocow-q1" \
    --size=8G \
    --bs=1M \
    --rw=write \
    --ioengine=io_uring \
    --iodepth=1 \
    --direct=1 \
    --refill_buffers=1 \
    --randrepeat=0 \
    --runtime=20 \
    --time_based \
    --group_reporting

rm -f "$NOCOWDIR/nocow-q1"
rmdir "$NOCOWDIR"

echo
echo "============================================================"
echo " TEST 5: DIRECT + COW + Q1"
echo "============================================================"
echo

fio \
    --name=cow-q1 \
    --filename="$TESTDIR/cow-q1" \
    --size=8G \
    --bs=1M \
    --rw=write \
    --ioengine=io_uring \
    --iodepth=1 \
    --direct=1 \
    --refill_buffers=1 \
    --randrepeat=0 \
    --runtime=20 \
    --time_based \
    --group_reporting

rm -f "$TESTDIR/cow-q1"

echo
echo "============================================================"
echo " TEST 6: SCHEDULER = NONE / NOCOW"
echo "============================================================"
echo

echo "Vorher:"
cat /sys/block/nvme0n1/queue/scheduler

echo none | sudo tee /sys/block/nvme0n1/queue/scheduler

echo "Nachher:"
cat /sys/block/nvme0n1/queue/scheduler

NOCOWDIR="$HOME/nvme-final-scheduler"

rm -rf "$NOCOWDIR"
mkdir -p "$NOCOWDIR"

sudo chattr +C "$NOCOWDIR"

fio \
    --name=scheduler-none \
    --filename="$NOCOWDIR/test" \
    --size=16G \
    --bs=1M \
    --rw=write \
    --ioengine=io_uring \
    --iodepth=32 \
    --direct=1 \
    --refill_buffers=1 \
    --randrepeat=0 \
    --runtime=30 \
    --time_based \
    --group_reporting

rm -rf "$NOCOWDIR"

echo
echo "============================================================"
echo " AUFRÄUMEN"
echo "============================================================"

rm -rf "$TESTDIR"

echo
echo "============================================================"
echo " FERTIG"
echo "============================================================"
echo
echo "Ausgabe:"
echo "$OUT"

Das ist die Auswertung vom ersten Script:

============================================================
 NVMe / LUKS / BTRFS DIAGNOSE
 Sa 15. Aug 10:33:08 CEST 2026
============================================================

### SYSTEM
------------------------------------------------------------
Linux grid 7.1.8-1-cachyos #1 SMP PREEMPT_DYNAMIC Mon, 10 Aug 2026 19:39:40 +0000 x86_64 GNU/Linux

System:
  Host: grid Kernel: 7.1.8-1-cachyos arch: x86_64 bits: 64
  Desktop: KDE Plasma v: 6.7.4 Distro: CachyOS
Machine:
  Type: Desktop Mobo: Micro-Star model: MAG X870 TOMAHAWK WIFI (MS-7E51)
    v: 1.0 serial: <superuser required> Firmware: UEFI vendor: American
    Megatrends LLC. v: 1.A91 date: 06/04/2026
CPU:
  Info: 16-core AMD Ryzen 9 9950X [MT MCP] speed (MHz): avg: 624
    min/max: 624/5756
Graphics:
  Device-1: Advanced Micro Devices [AMD/ATI] Navi 48 [Radeon RX 9070/9070
    XT/9070 GRE] driver: amdgpu v: kernel
  Device-2: Advanced Micro Devices [AMD/ATI] Granite Ridge [Radeon Graphics]
    driver: amdgpu v: kernel
  Display: wayland server: Xwayland v: 24.1.13 compositor: kwin_wayland
    driver: gpu: amdgpu resolution: 2560x1440~144Hz
  API: OpenGL v: 4.6 vendor: amd mesa v: 26.1.6-arch3.1 renderer: AMD
    Radeon RX 9070 XT (radeonsi gfx1201 ACO DRM 3.64 7.1.8-1-cachyos)
  Info: Tools: api: clinfo, eglinfo, glxinfo, vulkaninfo
    de: kscreen-console,kscreen-doctor wl: wayland-info x11: xdpyinfo,xprop
Network:
  Device-1: Qualcomm WCN785x Wi-Fi 7 320MHz 2x2 [FastConnect 7800]
    driver: ath12k_wifi7_pci
  Device-2: Realtek RTL8126 5GbE driver: r8169
Drives:
  Local Storage: total: 1.86 TiB used: 24.86 GiB (1.3%)
Info:
  Memory: total: 60 GiB note: est. available: 60.23 GiB used: 4.29 GiB (7.1%)
  Processes: 617 Uptime: 36m Shell: nvme-diagnose.s inxi: 3.3.41

### PCI / NVME DEVICE
------------------------------------------------------------
04:00.0 Non-Volatile memory controller [0108]: Shenzhen Longsys Electronics Co., Ltd. Lexar NM1090 PRO NVMe SSD [1d97:2508] (rev 03)

PCIe Link:
		LnkCap:	Port #0, Speed 32GT/s, Width x4, ASPM L1, Exit Latency L1 unlimited
		LnkSta:	Speed 32GT/s, Width x4
		LnkCap2: Supported Link Speeds: 2.5-32GT/s, Crosslink- Retimer+ 2Retimers+ DRS+
		LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete+ EqualizationPhase1+

### NVME LIST
------------------------------------------------------------
Node                  Generic               SN                   Model                                    Namespace  Usage                      Format           FW Rev  
--------------------- --------------------- -------------------- ---------------------------------------- ---------- -------------------------- ---------------- --------
/dev/nvme0n1          /dev/ng0n1            QG4464R002718P3200   Lexar SSD NM1090 PRO 2TB                 0x1          2.05  TB /   2.05  TB      4 KiB +  0 B   Y0527A00

vid       : 0x1d97
ssvid     : 0x1d97
sn        : QG4464R002718P3200  
mn        : Lexar SSD NM1090 PRO 2TB                
fr        : Y0527A00
ieee      : caf25b
vwci      : 255
oacs      : 0x17
frmw      : 0x14
mntmt     : 273
oncs      : 0xd7
vwc       : 0x7
mnan      : 0
mnsudmq   : 0

Smart Log for NVME device:nvme0 namespace-id:ffffffff
critical_warning			: 0
temperature				: 43 °C (316 K, 109 °F)
available_spare				: 100%
available_spare_threshold		: 10%
percentage_used				: 0%
endurance group critical warning summary: 0
Data Units Read				: 119860 (61.37 GB)
Data Units Written			: 740797 (379.29 GB)
host_read_commands			: 2251634
host_write_commands			: 5300973
controller_busy_time			: 10
power_cycles				: 13
power_on_hours				: 16
unsafe_shutdowns			: 7
media_errors				: 0
num_err_log_entries			: 0
Warning Temperature Time		: 0
Critical Composite Temperature Time	: 0
Temperature Sensor 1			: 47 °C (320 K, 116 °F)
Temperature Sensor 2			: 43 °C (316 K, 109 °F)
Thermal Management T1 Trans Count	: 0
Thermal Management T2 Trans Count	: 0
Thermal Management T1 Total Time	: 0
Thermal Management T2 Total Time	: 0

### BLOCK DEVICES
------------------------------------------------------------
NAME                                          KNAME     TYPE  FSTYPE       SIZE FSAVAIL FSUSE% MOUNTPOINTS
zram0                                         zram0     disk  swap        60,2G                [SWAP]
nvme0n1                                       nvme0n1   disk               1,9T                
├─nvme0n1p1                                   nvme0n1p1 part  vfat           4G    3,4G    14% /boot
└─nvme0n1p2                                   nvme0n1p2 part  crypto_LUKS  1,9T                
  └─luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a dm-0      crypt btrfs        1,9T    1,8T     1% /var/tmp
                                                                                               /var/log
                                                                                               /home
                                                                                               /var/cache
                                                                                               /srv
                                                                                               /root
                                                                                               /

### MOUNT OPTIONS
------------------------------------------------------------
/dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a[/@] btrfs rw,noatime,compress=zstd:1,ssd,space_cache=v2,subvolid=256,subvol=/@

TARGET       SOURCE                                                         FSTYPE OPTIONS
/            /dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a[/@]      btrfs  rw,noatime,compress=zstd:1,ssd,space_cache=v2,subvolid=256,subvol=/@
├─/root      /dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a[/@root]  btrfs  rw,noatime,compress=zstd:1,ssd,space_cache=v2,subvolid=258,subvol=/@root
├─/home      /dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a[/@home]  btrfs  rw,noatime,compress=zstd:1,ssd,space_cache=v2,subvolid=257,subvol=/@home
├─/srv       /dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a[/@srv]   btrfs  rw,noatime,compress=zstd:1,ssd,space_cache=v2,subvolid=259,subvol=/@srv
├─/var/cache /dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a[/@cache] btrfs  rw,noatime,compress=zstd:1,ssd,space_cache=v2,subvolid=260,subvol=/@cache
├─/var/log   /dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a[/@log]   btrfs  rw,noatime,compress=zstd:1,ssd,space_cache=v2,subvolid=262,subvol=/@log
└─/var/tmp   /dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a[/@tmp]   btrfs  rw,noatime,compress=zstd:1,ssd,space_cache=v2,subvolid=261,subvol=/@tmp

### BTRFS FILESYSTEM USAGE
------------------------------------------------------------
Overall:
    Device size:		   1.86TiB
    Device allocated:		  35.02GiB
    Device unallocated:		   1.82TiB
    Device missing:		     0.00B
    Device slack:		     0.00B
    Used:			  24.22GiB
    Free (estimated):		   1.83TiB	(min: 944.52GiB)
    Free (statfs, df):		   1.83TiB
    Data ratio:			      1.00
    Metadata ratio:		      2.00
    Global reserve:		  71.12MiB	(used: 0.00B)
    Multiple profiles:		        no

Data,single: Size:33.01GiB, Used:22.83GiB (69.18%)
   /dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a	  33.01GiB

Metadata,DUP: Size:1.00GiB, Used:708.34MiB (69.17%)
   /dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a	   2.00GiB

System,DUP: Size:8.00MiB, Used:16.00KiB (0.20%)
   /dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a	  16.00MiB

Unallocated:
   /dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a	   1.82TiB

### BTRFS FILESYSTEM DF
------------------------------------------------------------
Data, single: total=33.01GiB, used=22.83GiB
System, DUP: total=8.00MiB, used=16.00KiB
Metadata, DUP: total=1.00GiB, used=708.34MiB
GlobalReserve, single: total=71.12MiB, used=0.00B

### BTRFS SUBVOLUMES
------------------------------------------------------------
ID 256 gen 1774 parent 5 top level 5 path @
ID 257 gen 1775 parent 5 top level 5 path @home
ID 258 gen 26 parent 5 top level 5 path @root
ID 259 gen 24 parent 5 top level 5 path @srv
ID 260 gen 1762 parent 5 top level 5 path @cache
ID 261 gen 1735 parent 5 top level 5 path @tmp
ID 262 gen 1775 parent 5 top level 5 path @log
ID 263 gen 26 parent 256 top level 256 path var/lib/portables
ID 264 gen 26 parent 256 top level 256 path var/lib/machines
ID 265 gen 1762 parent 256 top level 256 path .snapshots
ID 271 gen 34 parent 265 top level 265 path .snapshots/6/snapshot
ID 294 gen 162 parent 265 top level 265 path .snapshots/29/snapshot
ID 295 gen 163 parent 265 top level 265 path .snapshots/30/snapshot
ID 296 gen 172 parent 265 top level 265 path .snapshots/31/snapshot
ID 297 gen 173 parent 265 top level 265 path .snapshots/32/snapshot
ID 298 gen 177 parent 265 top level 265 path .snapshots/33/snapshot
ID 299 gen 178 parent 265 top level 265 path .snapshots/34/snapshot
ID 300 gen 189 parent 265 top level 265 path .snapshots/35/snapshot
ID 301 gen 190 parent 265 top level 265 path .snapshots/36/snapshot
ID 302 gen 194 parent 265 top level 265 path .snapshots/37/snapshot
ID 303 gen 195 parent 265 top level 265 path .snapshots/38/snapshot
ID 304 gen 594 parent 265 top level 265 path .snapshots/39/snapshot
ID 305 gen 595 parent 265 top level 265 path .snapshots/40/snapshot
ID 306 gen 636 parent 265 top level 265 path .snapshots/41/snapshot
ID 307 gen 637 parent 265 top level 265 path .snapshots/42/snapshot
ID 308 gen 646 parent 265 top level 265 path .snapshots/43/snapshot
ID 309 gen 647 parent 265 top level 265 path .snapshots/44/snapshot
ID 310 gen 653 parent 265 top level 265 path .snapshots/45/snapshot
ID 311 gen 654 parent 265 top level 265 path .snapshots/46/snapshot
ID 312 gen 697 parent 265 top level 265 path .snapshots/47/snapshot
ID 313 gen 698 parent 265 top level 265 path .snapshots/48/snapshot
ID 314 gen 734 parent 265 top level 265 path .snapshots/49/snapshot
ID 315 gen 735 parent 265 top level 265 path .snapshots/50/snapshot
ID 316 gen 946 parent 265 top level 265 path .snapshots/51/snapshot
ID 317 gen 948 parent 265 top level 265 path .snapshots/52/snapshot
ID 318 gen 950 parent 265 top level 265 path .snapshots/53/snapshot
ID 319 gen 951 parent 265 top level 265 path .snapshots/54/snapshot
ID 320 gen 953 parent 265 top level 265 path .snapshots/55/snapshot
ID 321 gen 954 parent 265 top level 265 path .snapshots/56/snapshot
ID 322 gen 1009 parent 265 top level 265 path .snapshots/57/snapshot
ID 323 gen 1010 parent 265 top level 265 path .snapshots/58/snapshot
ID 324 gen 1016 parent 265 top level 265 path .snapshots/59/snapshot
ID 325 gen 1017 parent 265 top level 265 path .snapshots/60/snapshot
ID 326 gen 1019 parent 265 top level 265 path .snapshots/61/snapshot
ID 327 gen 1020 parent 265 top level 265 path .snapshots/62/snapshot
ID 328 gen 1180 parent 265 top level 265 path .snapshots/63/snapshot
ID 329 gen 1182 parent 265 top level 265 path .snapshots/64/snapshot
ID 330 gen 1191 parent 265 top level 265 path .snapshots/65/snapshot
ID 331 gen 1192 parent 265 top level 265 path .snapshots/66/snapshot
ID 332 gen 1270 parent 265 top level 265 path .snapshots/67/snapshot
ID 333 gen 1271 parent 265 top level 265 path .snapshots/68/snapshot
ID 334 gen 1273 parent 265 top level 265 path .snapshots/69/snapshot
ID 335 gen 1274 parent 265 top level 265 path .snapshots/70/snapshot
ID 336 gen 1278 parent 265 top level 265 path .snapshots/71/snapshot
ID 337 gen 1279 parent 265 top level 265 path .snapshots/72/snapshot
ID 338 gen 1329 parent 265 top level 265 path .snapshots/73/snapshot
ID 339 gen 1331 parent 265 top level 265 path .snapshots/74/snapshot
ID 340 gen 1396 parent 265 top level 265 path .snapshots/75/snapshot
ID 341 gen 1397 parent 265 top level 265 path .snapshots/76/snapshot
ID 342 gen 1684 parent 265 top level 265 path .snapshots/77/snapshot
ID 343 gen 1686 parent 265 top level 265 path .snapshots/78/snapshot
ID 344 gen 1716 parent 265 top level 265 path .snapshots/79/snapshot
ID 345 gen 1717 parent 265 top level 265 path .snapshots/80/snapshot
ID 346 gen 1759 parent 265 top level 265 path .snapshots/81/snapshot
ID 347 gen 1760 parent 265 top level 265 path .snapshots/82/snapshot

### BTRFS FEATURES
------------------------------------------------------------
csum_type		0 (crc32c)
magic			_BHRfS_M [match]
metadata_uuid		00000000-0000-0000-0000-000000000000
generation		1775
compat_flags		0x0
compat_ro_flags		0xb
incompat_flags		0x371

### LUKS
------------------------------------------------------------
/dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a is active and is in use.
  type:    LUKS2
  cipher:  aes-xts-plain64
  keysize: 512 [bits]
  key location: keyring
  device:  /dev/nvme0n1p2
  sector size:  4096 [bytes]
  offset:  32768 [512-byte units] (16777216 [bytes])
  size:    3992371360 [512-byte units] (2044094136320 [bytes])
  mode:    read/write

Version:       	2
Keyslots area: 	16744448 [bytes]
Keyslots:
	Cipher:     aes-xts-plain64
	Cipher key: 512 bits
	PBKDF:      argon2id
Tokens:
	Hash:       sha512

### DEVICE MAPPER
------------------------------------------------------------
luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a: 0 3992371360 crypt aes-xts-plain64 :64:logon:cryptsetup:c2f02faf-0b5e-4566-9ee8-68ad612f098a-d0 0 259:2 32768 1 sector_size:4096

### IO SCHEDULER
------------------------------------------------------------
/sys/block/nvme0n1/queue/scheduler:
none mq-deadline [kyber] adios bfq 

### QUEUE PARAMETERS
------------------------------------------------------------
nr_requests:           256
io_poll:               0
io_poll_delay:         -1
max_sectors_kb:        128
max_hw_sectors_kb:     128
read_ahead_kb:         256
rotational:            0
nomerges:              0

### CPU AES / CRYPTO
------------------------------------------------------------
aes

crypto_user            12288  0
dm_crypt               65536  1
encrypted_keys         28672  1 dm_crypt
trusted                40960  2 encrypted_keys,dm_crypt
dm_mod                237568  3 dm_crypt
aesni_intel           106496  2
gf128mul               16384  1 aesni_intel
aead                   16384  3 dm_crypt,mac80211,aesni_intel

### KERNEL BTRFS / NVME MESSAGES
------------------------------------------------------------
[    0.689120] x86/amd: Previous system reset reason [0x00080800]: software wrote 0x6 to reset control register 0xCF9
[    0.695537] Key type .fscrypt registered
[    0.695537] Key type fscrypt-provisioning registered
[    0.695651] Btrfs loaded, zoned=yes, fsverity=yes
[    2.771511] Freeing unused decrypted memory: 2028K
[    3.139523] systemd[1]: systemd 261.2-1-arch running in system mode (+PAM +AUDIT -SELINUX +APPARMOR -IMA +IPE +SMACK +SECCOMP +GCRYPT +GNUTLS +OPENSSL +ACL +BLKID +CURL +ELFUTILS +FIDO2 +IDN2 +KMOD +LIBCRYPTSETUP +LIBCRYPTSETUP_PLUGINS +LIBFDISK +PCRE2 +PWQUALITY +P11KIT +QRENCODE +TPM2 +BZIP2 +LZ4 +XZ +ZLIB +ZSTD +BPF_FRAMEWORK +BTF +XKBCOMMON +UTMP +LIBARCHIVE)
[    3.167815] systemd[1]: Created slice Slice /system/systemd-cryptsetup.
[    3.320524] nvme 0000:04:00.0: platform quirk: setting simple suspend
[    3.320583] nvme nvme0: pci function 0000:04:00.0
[    3.347390] nvme nvme0: passthrough uses implicit buffer lengths
[    3.390971] nvme nvme0: 32/0/0 default/read/poll queues
[    3.408633]  nvme0n1: p1 p2
[    5.231997] amdgpu 0000:03:00.0: [drm] REG_WAIT timeout 1us * 150000 tries - optc401_disable_crtc line:237
[    5.781873] amdgpu 0000:03:00.0: [drm] REG_WAIT timeout 1us * 150000 tries - optc401_disable_crtc line:237
[   16.113826] Key type encrypted registered
[   16.161993] BTRFS: device fsid 79088576-026a-4251-a8c6-e0b6079d1122 devid 1 transid 1691 /dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a (253:0) scanned by mount (825)
[   16.162716] BTRFS info (device dm-0): first mount of filesystem 79088576-026a-4251-a8c6-e0b6079d1122
[   16.162720] BTRFS info (device dm-0): using crc32c checksum algorithm
[   16.165733] BTRFS info (device dm-0): enabling ssd optimizations
[   16.165734] BTRFS info (device dm-0): enabling free space tree
[   16.990858] systemd[1]: systemd 261.2-1-arch running in system mode (+PAM +AUDIT -SELINUX +APPARMOR -IMA +IPE +SMACK +SECCOMP +GCRYPT +GNUTLS +OPENSSL +ACL +BLKID +CURL +ELFUTILS +FIDO2 +IDN2 +KMOD +LIBCRYPTSETUP +LIBCRYPTSETUP_PLUGINS +LIBFDISK +PCRE2 +PWQUALITY +P11KIT +QRENCODE +TPM2 +BZIP2 +LZ4 +XZ +ZLIB +ZSTD +BPF_FRAMEWORK +BTF +XKBCOMMON +UTMP +LIBARCHIVE)
[   17.202700] systemd[1]: Listening on Credential Encryption/Decryption.
[   17.203009] systemd[1]: Listening on Factory Reset Management.
[   17.227867] systemd[1]: Reached target Local Encrypted Volumes.
[   17.275438] BTRFS info (device dm-0 state M): use zstd compression, level 1
[   37.749314] block nvme0n1: No UUID available providing old NGUID

### CURRENT DISK STATS
------------------------------------------------------------
 259       0 nvme0n1 179902 6586 29690376 116761 2342758 12096 589871272 568193 0 88087 685544 0 0 0 0 1009 589
 259       1 nvme0n1p1 5436 123 1240800 1130 130 1 7176 9 0 269 1139 0 0 0 0 0 0
 259       2 nvme0n1p2 174354 6463 28445888 115611 2342623 12095 589864096 568183 0 100686 683795 0 0 0 0 0 0
 253       0 dm-0 180742 0 28444072 128420 2354713 0 589864096 3044658 0 104474 3173078 0 0 0 0 0 0

============================================================
 BENCHMARKS
============================================================

Die folgenden Tests schreiben Testdaten nach ~/nvme-diagnose-test
und löschen sie danach.

### TEST 1: BUFFERED WRITE
------------------------------------------------------------
./nvme-diagnose.sh: Zeile 139: /usr/bin/time: Datei oder Verzeichnis nicht gefunden


### TEST 2: FIO BUFFERED WRITE
------------------------------------------------------------
buffered: (g=0): rw=write, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=psync, iodepth=32
fio-3.42
Starting 1 process
buffered: Laying out IO file (1 file / 8192MiB)
note: both iodepth >= 1 and synchronous I/O engine are selected, queue depth will be capped at 1

buffered: (groupid=0, jobs=1): err= 0: pid=9128: Sat Aug 15 10:33:31 2026
  write: IOPS=3642, BW=3643MiB/s (3819MB/s)(71.1GiB/20001msec)
    clat (usec): min=111, max=10930, avg=241.29, stdev=252.51
     lat (usec): min=113, max=10938, avg=244.49, stdev=253.28
    clat percentiles (usec):
     |  1.00th=[  124],  5.00th=[  129], 10.00th=[  131], 20.00th=[  135],
     | 30.00th=[  139], 40.00th=[  143], 50.00th=[  149], 60.00th=[  163],
     | 70.00th=[  225], 80.00th=[  249], 90.00th=[  529], 95.00th=[  668],
     | 99.00th=[ 1106], 99.50th=[ 1352], 99.90th=[ 3982], 99.95th=[ 4015],
     | 99.99th=[ 5407]
   bw (  MiB/s): min= 1282, max= 4536, per=100.00%, avg=3642.70, stdev=901.42, samples=40
   iops        : min= 1282, max= 4536, avg=3642.70, stdev=901.42, samples=40
  lat (usec)   : 250=80.05%, 500=9.38%, 750=7.35%, 1000=1.89%
  lat (msec)   : 2=1.19%, 4=0.09%, 10=0.04%, 20=0.01%
  cpu          : usr=1.60%, sys=96.18%, ctx=966, majf=0, minf=9
  IO depths    : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     issued rwts: total=0,72854,0,0 short=0,0,0,0 dropped=0,0,0,0
     latency   : target=0.00ns, window=0.00ns, percentile=100.00%, depth=32

Run status group 0 (all jobs):
  WRITE: bw=3643MiB/s (3819MB/s), 3643MiB/s-3643MiB/s (3819MB/s-3819MB/s), io=71.1GiB (76.4GB), run=20001-20001msec


### TEST 3: FIO DIRECT WRITE / NORMAL COW
------------------------------------------------------------
direct-cow: (g=0): rw=write, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=psync, iodepth=8
fio-3.42
Starting 1 process
direct-cow: Laying out IO file (1 file / 8192MiB)
note: both iodepth >= 1 and synchronous I/O engine are selected, queue depth will be capped at 1

direct-cow: (groupid=0, jobs=1): err= 0: pid=9165: Sat Aug 15 10:33:51 2026
  write: IOPS=2746, BW=2747MiB/s (2880MB/s)(53.7GiB/20001msec)
    clat (usec): min=330, max=7399, avg=361.05, stdev=159.64
     lat (usec): min=333, max=7402, avg=363.81, stdev=159.66
    clat percentiles (usec):
     |  1.00th=[  343],  5.00th=[  347], 10.00th=[  347], 20.00th=[  351],
     | 30.00th=[  351], 40.00th=[  351], 50.00th=[  355], 60.00th=[  355],
     | 70.00th=[  355], 80.00th=[  359], 90.00th=[  363], 95.00th=[  375],
     | 99.00th=[  400], 99.50th=[  416], 99.90th=[ 2442], 99.95th=[ 5604],
     | 99.99th=[ 5997]
   bw (  MiB/s): min= 2594, max= 2812, per=100.00%, avg=2747.05, stdev=34.97, samples=40
   iops        : min= 2594, max= 2812, avg=2747.05, stdev=34.97, samples=40
  lat (usec)   : 500=99.73%, 750=0.09%, 1000=0.01%
  lat (msec)   : 2=0.01%, 4=0.09%, 10=0.07%
  cpu          : usr=1.15%, sys=63.69%, ctx=925786, majf=0, minf=8
  IO depths    : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     issued rwts: total=0,54941,0,0 short=0,0,0,0 dropped=0,0,0,0
     latency   : target=0.00ns, window=0.00ns, percentile=100.00%, depth=8

Run status group 0 (all jobs):
  WRITE: bw=2747MiB/s (2880MB/s), 2747MiB/s-2747MiB/s (2880MB/s-2880MB/s), io=53.7GiB (57.6GB), run=20001-20001msec


### TEST 4: FIO DIRECT WRITE / NOCOW
------------------------------------------------------------
direct-nocow: (g=0): rw=write, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=psync, iodepth=8
fio-3.42
Starting 1 process
direct-nocow: Laying out IO file (1 file / 8192MiB)
note: both iodepth >= 1 and synchronous I/O engine are selected, queue depth will be capped at 1

direct-nocow: (groupid=0, jobs=1): err= 0: pid=9211: Sat Aug 15 10:34:12 2026
  write: IOPS=7953, BW=7954MiB/s (8340MB/s)(155GiB/20001msec)
    clat (usec): min=90, max=7756, avg=114.47, stdev=153.45
     lat (usec): min=97, max=7767, avg=125.51, stdev=153.46
    clat percentiles (usec):
     |  1.00th=[   99],  5.00th=[  104], 10.00th=[  105], 20.00th=[  106],
     | 30.00th=[  108], 40.00th=[  109], 50.00th=[  110], 60.00th=[  110],
     | 70.00th=[  111], 80.00th=[  115], 90.00th=[  117], 95.00th=[  119],
     | 99.00th=[  130], 99.50th=[  143], 99.90th=[  375], 99.95th=[ 5473],
     | 99.99th=[ 5800]
   bw (  MiB/s): min= 7848, max= 8170, per=100.00%, avg=7954.35, stdev=61.17, samples=40
   iops        : min= 7848, max= 8170, avg=7954.35, stdev=61.17, samples=40
  lat (usec)   : 100=1.63%, 250=98.08%, 500=0.20%, 750=0.01%, 1000=0.01%
  lat (msec)   : 2=0.01%, 10=0.07%
  cpu          : usr=9.02%, sys=5.41%, ctx=159530, majf=0, minf=8
  IO depths    : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     issued rwts: total=0,159087,0,0 short=0,0,0,0 dropped=0,0,0,0
     latency   : target=0.00ns, window=0.00ns, percentile=100.00%, depth=8

Run status group 0 (all jobs):
  WRITE: bw=7954MiB/s (8340MB/s), 7954MiB/s-7954MiB/s (8340MB/s-8340MB/s), io=155GiB (167GB), run=20001-20001msec


### TESTDATEIEN AUFRÄUMEN
------------------------------------------------------------

============================================================
 FERTIG
============================================================

Das ist die Auswertung vom zweiten Script:

============================================================
 NVMe FINAL PERFORMANCE TEST
 Sa 15. Aug 10:39:48 CEST 2026
============================================================

### SYSTEM
------------------------------------------------------------
Linux grid 7.1.8-1-cachyos #1 SMP PREEMPT_DYNAMIC Mon, 10 Aug 2026 19:39:40 +0000 x86_64 GNU/Linux

Mount:
/dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a[/@] btrfs rw,noatime,compress=zstd:1,ssd,space_cache=v2,subvolid=256,subvol=/@

Scheduler:
none mq-deadline [kyber] adios bfq 

### NVME
------------------------------------------------------------
temperature				: 43 °C (316 K, 109 °F)
percentage_used				: 0%
controller_busy_time			: 11
media_errors				: 0

### LUKS
------------------------------------------------------------
/dev/mapper/luks-c2f02faf-0b5e-4566-9ee8-68ad612f098a is active and is in use.
  type:    LUKS2
  cipher:  aes-xts-plain64
  keysize: 512 [bits]
  key location: keyring
  device:  /dev/nvme0n1p2
  sector size:  4096 [bytes]
  offset:  32768 [512-byte units] (16777216 [bytes])
  size:    3992371360 [512-byte units] (2044094136320 [bytes])
  mode:    read/write

============================================================
 TEST 1: BUFFERED + COW + INCOMPRESSIBLE
============================================================

cow-buffered: (g=0): rw=write, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=io_uring, iodepth=32
fio-3.42
Starting 1 process
cow-buffered: Laying out IO file (1 file / 16384MiB)

cow-buffered: (groupid=0, jobs=1): err= 0: pid=9568: Sat Aug 15 10:40:23 2026
  write: IOPS=3282, BW=3283MiB/s (3442MB/s)(96.2GiB/30010msec)
    slat (nsec): min=440, max=2229.1k, avg=20254.96, stdev=79587.78
    clat (nsec): min=190, max=567152k, avg=9637806.01, stdev=24557561.69
     lat (usec): min=161, max=567152, avg=9658.06, stdev=24556.41
    clat percentiles (msec):
     |  1.00th=[    6],  5.00th=[    6], 10.00th=[    6], 20.00th=[    7],
     | 30.00th=[    7], 40.00th=[    8], 50.00th=[    8], 60.00th=[    9],
     | 70.00th=[   10], 80.00th=[   11], 90.00th=[   13], 95.00th=[   14],
     | 99.00th=[   16], 99.50th=[   17], 99.90th=[  558], 99.95th=[  558],
     | 99.99th=[  567]
   bw (  MiB/s): min=  408, max= 4060, per=100.00%, avg=3395.70, stdev=897.42, samples=58
   iops        : min=  408, max= 4060, avg=3395.69, stdev=897.42, samples=58
  lat (nsec)   : 250=0.01%
  lat (usec)   : 2=0.01%, 4=0.01%, 1000=0.01%
  lat (msec)   : 2=0.06%, 4=0.11%, 10=73.28%, 20=26.32%, 50=0.01%
  lat (msec)   : 500=0.03%, 750=0.19%
  cpu          : usr=18.19%, sys=17.84%, ctx=92310, majf=0, minf=8
  IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=100.0%, >=64=0.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.1%, 64=0.0%, >=64=0.0%
     issued rwts: total=0,98510,0,0 short=0,0,0,0 dropped=0,0,0,0
     latency   : target=0.00ns, window=0.00ns, percentile=100.00%, depth=32

Run status group 0 (all jobs):
  WRITE: bw=3283MiB/s (3442MB/s), 3283MiB/s-3283MiB/s (3442MB/s-3442MB/s), io=96.2GiB (103GB), run=30010-30010msec

============================================================
 TEST 2: DIRECT + COW + INCOMPRESSIBLE
============================================================

cow-direct: (g=0): rw=write, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=io_uring, iodepth=32
fio-3.42
Starting 1 process
cow-direct: Laying out IO file (1 file / 16384MiB)

cow-direct: (groupid=0, jobs=1): err= 0: pid=9662: Sat Aug 15 10:40:54 2026
  write: IOPS=2576, BW=2577MiB/s (2702MB/s)(75.5GiB/30012msec)
    slat (nsec): min=360, max=267191, avg=967.07, stdev=1496.79
    clat (usec): min=749, max=23516, avg=12388.97, stdev=1022.52
     lat (usec): min=783, max=23517, avg=12389.94, stdev=1022.57
    clat percentiles (usec):
     |  1.00th=[11731],  5.00th=[11731], 10.00th=[11863], 20.00th=[11994],
     | 30.00th=[11994], 40.00th=[11994], 50.00th=[12125], 60.00th=[12125],
     | 70.00th=[12256], 80.00th=[12387], 90.00th=[13173], 95.00th=[13829],
     | 99.00th=[17695], 99.50th=[18220], 99.90th=[19530], 99.95th=[21103],
     | 99.99th=[21627]
   bw (  MiB/s): min= 2404, max= 2680, per=100.00%, avg=2576.90, stdev=54.28, samples=60
   iops        : min= 2404, max= 2680, avg=2576.90, stdev=54.28, samples=60
  lat (usec)   : 750=0.01%
  lat (msec)   : 2=0.01%, 4=0.01%, 10=0.02%, 20=99.91%, 50=0.05%
  cpu          : usr=7.31%, sys=0.25%, ctx=77478, majf=0, minf=8
  IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=100.0%, >=64=0.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.1%, 64=0.0%, >=64=0.0%
     issued rwts: total=0,77338,0,0 short=0,0,0,0 dropped=0,0,0,0
     latency   : target=0.00ns, window=0.00ns, percentile=100.00%, depth=32

Run status group 0 (all jobs):
  WRITE: bw=2577MiB/s (2702MB/s), 2577MiB/s-2577MiB/s (2702MB/s-2702MB/s), io=75.5GiB (81.1GB), run=30012-30012msec

============================================================
 TEST 3: DIRECT + NOCOW + INCOMPRESSIBLE
============================================================

---------------C------ /home/USER/nvme-final-nocow
nocow-direct: (g=0): rw=write, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=io_uring, iodepth=32
fio-3.42
Starting 1 process
nocow-direct: Laying out IO file (1 file / 16384MiB)

nocow-direct: (groupid=0, jobs=1): err= 0: pid=9729: Sat Aug 15 10:41:24 2026
  write: IOPS=12.9k, BW=12.6GiB/s (13.5GB/s)(377GiB/30002msec)
    slat (usec): min=3, max=316, avg= 9.77, stdev= 4.63
    clat (usec): min=1019, max=14846, avg=2413.61, stdev=878.50
     lat (usec): min=1027, max=14855, avg=2423.38, stdev=878.54
    clat percentiles (usec):
     |  1.00th=[ 1532],  5.00th=[ 1860], 10.00th=[ 1975], 20.00th=[ 2089],
     | 30.00th=[ 2180], 40.00th=[ 2212], 50.00th=[ 2245], 60.00th=[ 2278],
     | 70.00th=[ 2311], 80.00th=[ 2474], 90.00th=[ 2769], 95.00th=[ 3097],
     | 99.00th=[ 7308], 99.50th=[ 8094], 99.90th=[ 9634], 99.95th=[10290],
     | 99.99th=[11731]
   bw (  MiB/s): min=12686, max=13032, per=100.00%, avg=12867.97, stdev=79.97, samples=59
   iops        : min=12686, max=13032, avg=12868.00, stdev=79.94, samples=59
  lat (msec)   : 2=12.13%, 4=85.02%, 10=2.77%, 20=0.07%
  cpu          : usr=81.26%, sys=12.55%, ctx=12854, majf=0, minf=7
  IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=100.0%, >=64=0.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.1%, 64=0.0%, >=64=0.0%
     issued rwts: total=0,386036,0,0 short=0,0,0,0 dropped=0,0,0,0
     latency   : target=0.00ns, window=0.00ns, percentile=100.00%, depth=32

Run status group 0 (all jobs):
  WRITE: bw=12.6GiB/s (13.5GB/s), 12.6GiB/s-12.6GiB/s (13.5GB/s-13.5GB/s), io=377GiB (405GB), run=30002-30002msec

============================================================
 TEST 4: DIRECT + NOCOW + Q1
============================================================

nocow-q1: (g=0): rw=write, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=io_uring, iodepth=1
fio-3.42
Starting 1 process
nocow-q1: Laying out IO file (1 file / 8192MiB)

nocow-q1: (groupid=0, jobs=1): err= 0: pid=9782: Sat Aug 15 10:41:45 2026
  write: IOPS=4909, BW=4910MiB/s (5148MB/s)(95.9GiB/20001msec)
    slat (usec): min=9, max=265, avg=16.39, stdev= 5.20
    clat (usec): min=97, max=8598, avg=140.23, stdev=176.42
     lat (usec): min=114, max=8611, avg=156.62, stdev=176.73
    clat percentiles (usec):
     |  1.00th=[  113],  5.00th=[  115], 10.00th=[  116], 20.00th=[  117],
     | 30.00th=[  118], 40.00th=[  119], 50.00th=[  120], 60.00th=[  121],
     | 70.00th=[  127], 80.00th=[  128], 90.00th=[  131], 95.00th=[  285],
     | 99.00th=[  297], 99.50th=[  302], 99.90th=[ 2180], 99.95th=[ 5669],
     | 99.99th=[ 6063]
   bw (  MiB/s): min= 4348, max= 5274, per=100.00%, avg=4910.05, stdev=293.02, samples=40
   iops        : min= 4348, max= 5274, avg=4910.05, stdev=293.02, samples=40
  lat (usec)   : 100=0.01%, 250=91.82%, 500=8.00%, 750=0.01%, 1000=0.01%
  lat (msec)   : 2=0.02%, 4=0.09%, 10=0.07%
  cpu          : usr=21.84%, sys=9.80%, ctx=98343, majf=0, minf=5
  IO depths    : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     issued rwts: total=0,98201,0,0 short=0,0,0,0 dropped=0,0,0,0
     latency   : target=0.00ns, window=0.00ns, percentile=100.00%, depth=1

Run status group 0 (all jobs):
  WRITE: bw=4910MiB/s (5148MB/s), 4910MiB/s-4910MiB/s (5148MB/s-5148MB/s), io=95.9GiB (103GB), run=20001-20001msec

============================================================
 TEST 5: DIRECT + COW + Q1
============================================================

cow-q1: (g=0): rw=write, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=io_uring, iodepth=1
fio-3.42
Starting 1 process
cow-q1: Laying out IO file (1 file / 8192MiB)

cow-q1: (groupid=0, jobs=1): err= 0: pid=9832: Sat Aug 15 10:42:05 2026
  write: IOPS=2537, BW=2537MiB/s (2661MB/s)(49.6GiB/20001msec)
    slat (nsec): min=370, max=38740, avg=662.77, stdev=316.61
    clat (usec): min=336, max=8555, avg=375.06, stdev=167.48
     lat (usec): min=337, max=8556, avg=375.73, stdev=167.51
    clat percentiles (usec):
     |  1.00th=[  355],  5.00th=[  355], 10.00th=[  359], 20.00th=[  359],
     | 30.00th=[  359], 40.00th=[  363], 50.00th=[  363], 60.00th=[  363],
     | 70.00th=[  363], 80.00th=[  367], 90.00th=[  388], 95.00th=[  424],
     | 99.00th=[  494], 99.50th=[  529], 99.90th=[ 2180], 99.95th=[ 5800],
     | 99.99th=[ 6128]
   bw (  MiB/s): min= 2032, max= 2612, per=100.00%, avg=2542.15, stdev=117.11, samples=39
   iops        : min= 2032, max= 2612, avg=2542.15, stdev=117.11, samples=39
  lat (usec)   : 500=99.08%, 750=0.74%, 1000=0.01%
  lat (msec)   : 2=0.01%, 4=0.09%, 10=0.07%
  cpu          : usr=4.77%, sys=0.24%, ctx=50805, majf=0, minf=7
  IO depths    : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     issued rwts: total=0,50750,0,0 short=0,0,0,0 dropped=0,0,0,0
     latency   : target=0.00ns, window=0.00ns, percentile=100.00%, depth=1

Run status group 0 (all jobs):
  WRITE: bw=2537MiB/s (2661MB/s), 2537MiB/s-2537MiB/s (2661MB/s-2661MB/s), io=49.6GiB (53.2GB), run=20001-20001msec

============================================================
 TEST 6: SCHEDULER = NONE / NOCOW
============================================================

Vorher:
none mq-deadline [kyber] adios bfq 
none
Nachher:
[none] mq-deadline kyber adios bfq 
scheduler-none: (g=0): rw=write, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=io_uring, iodepth=32
fio-3.42
Starting 1 process
scheduler-none: Laying out IO file (1 file / 16384MiB)

scheduler-none: (groupid=0, jobs=1): err= 0: pid=9888: Sat Aug 15 10:42:35 2026
  write: IOPS=12.9k, BW=12.6GiB/s (13.5GB/s)(377GiB/30003msec)
    slat (usec): min=3, max=307, avg=10.04, stdev= 4.68
    clat (usec): min=1347, max=10325, avg=2413.44, stdev=770.63
     lat (usec): min=1354, max=10336, avg=2423.48, stdev=770.63
    clat percentiles (usec):
     |  1.00th=[ 1762],  5.00th=[ 1926], 10.00th=[ 2024], 20.00th=[ 2180],
     | 30.00th=[ 2212], 40.00th=[ 2245], 50.00th=[ 2278], 60.00th=[ 2278],
     | 70.00th=[ 2311], 80.00th=[ 2442], 90.00th=[ 2737], 95.00th=[ 2999],
     | 99.00th=[ 7046], 99.50th=[ 7308], 99.90th=[ 8291], 99.95th=[ 8848],
     | 99.99th=[ 9241]
   bw (  MiB/s): min=12682, max=13044, per=100.00%, avg=12864.80, stdev=77.24, samples=60
   iops        : min=12682, max=13044, avg=12864.80, stdev=77.24, samples=60
  lat (msec)   : 2=8.64%, 4=89.01%, 10=2.35%, 20=0.01%
  cpu          : usr=82.35%, sys=12.72%, ctx=3014, majf=0, minf=5
  IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=100.0%, >=64=0.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.1%, 64=0.0%, >=64=0.0%
     issued rwts: total=0,385944,0,0 short=0,0,0,0 dropped=0,0,0,0
     latency   : target=0.00ns, window=0.00ns, percentile=100.00%, depth=32

Run status group 0 (all jobs):
  WRITE: bw=12.6GiB/s (13.5GB/s), 12.6GiB/s-12.6GiB/s (13.5GB/s-13.5GB/s), io=377GiB (405GB), run=30003-30003msec

============================================================
 AUFRÄUMEN
============================================================

Ihr könnt die beiden Scripts ja mal bei euch testen und das Eregbnis hier posten.
Um es gleich zu sagen: Meine Hardware funktioniert einwandfrei.

„Es ist Btrfs, es war schon immer Btrfs!“

Wow, ein eigenes Script zum Testen! – Ich habe hier einen im August 2025 neu aufgebauten PC mit einer Samsung NVME 990 EVO 2TB. Die habe ich jetzt mit KDiskMark vier mal getestet, einmal mit und einmal ohne COW sowie einmal mit 64 MB großen Dateien und einmal mit 1 GB großen Dateien. Ich habe keine Verschlüsselung drauf wohl aber ZSTD-Kompression auf 6 gesetzt.

Ergebnis: Die Leserate bleibt fast unverändert. Aber die Schreib-Rate bricht massiv ein, sobald COW aktiviert ist. Finde ich ja auch schade, aber die zusätzliche Sicherheit von COW ist es mir wert. Im praktischen Betrieb habe ich noch keine negativen Auswirkungen gespürt. Das macht sich eher bemerkbar, wenn man große oder viele Dateien von einem Laufwerk auf ein anderes kopieren will. Aber wie oft kommt das denn vor? Selbst jede Backup-Software arbeitet nicht so schnell, zumal ja meist dedupliziert und inkrementell gesichert wird.

Im Anhang die Screenshots von KDiskMark

Mit CoW

Ohne CoW

Gut, ist halt auch KDiskMark, das bringt auch nochmal overhead mit, usw., deswegen die Scripte, da wird direkt auf die Festplatte getestet.
Aber den Unterschied sieht man trotzdem.

Und ja, bei der Programmierung, insbesondere mit Rust bzw. beim kompilieren, ist das ziemlich ausschlaggebend. Ich kann es mit chattr -R /meinOrdner für den Ordner deaktivieren, macht aber irgendwie keinen Sinn da der Rest des Systems trotzdem ausgebremst wird.
Und die „Sicherheitsfunktionen“ brauche ich eigentlich nicht.
Backup mache ich täglich.

Moin

Es liegt an der M2 Physik und nur bedingt an Btrfs.Man liest auch sehr das M2 oder SSD platten sich mit Btrfs beissen können.

Warum?

Das problem ist die M2 hat Probleme bei sehr vielen kleinen Dateien wenn sie geschrieben werden oder gelöscht werden. Das Problem gibt es auch in Windows und ist nicht nur auf Linux bezogen

Du kannst ja mal testen. kopier mal 10000 Dateien die nur paar kb gross sind auf die M2 und kopier mal eine Datei die ! GB oder auch mehr hat. Die eine Datei is sehr schnell fertig und die andren brauchen ewichkeiten.

Ich hatte mal ein Verzeichnis gelöscht da waren einge Tausend Dateien drinnen mit nur wenigen kb grösse . Der hat über 30 Min gebraucht die zu löschen auf einer Pcie 3 M2 Festplatte.

Mit BTRFS bzw Cow ist es das selbe.

Du musst rechnen du kopierst was oder installierst was neues oder was auch immer. Durch das Cow schreibt der ja alle Daten im Endefekt doppelt auf die Festplatte dann schaut er nach ob noch eine alte Vairante von Cow Gespeichert worden ist die muss dan auhc löschen.

Also das heisst das Cow erzeugt am Ende sehr viele Schreiblast und Löschlast. Bei Linux gibt es sehr viele kleine Dateien das wie vorhin schon erwähnt Gift für die m2 sind.

Das Lesen geht mit vollen Speed.Beim Schreiben bricht der Speed dann ein.

Das gilt für alle Festplatten auser bei den alten mit Scheiben.

Für die M2 platte ist Schreiben und Löschen die gleiche Arbeit.

Das habe ich damals unter Windows festgestellt und unter Linux ist es nicht anders.

Unter Cow fällt es halt extreme auf.Aber merkst du es im normal Linux Betrieb ich glaub eher nicht.Ich finde Cow is schon eine sehr gute Sache und wenn die Sicherheit damit erhöht wird nehm ich das schon in kauf.

Vorallem das andre ist wie oft kopierst du Dateien hin und her oder löscht die? Das meiste wird vermutlich Linuxupdates sein.

Wie gesagt im normalen Betrieb is das vermutich garnicht spürbar ob die Festplatte jetzt nur mit geringem Tempo rennt wie sie eigentlich sollte.

Liebe Grüsse Pepsi

Öhm, natürlich liegt es an Btrfs bzw. an CoW, denn mit jedem anderen Dateisystem, z.B. ext4, habe ich volle Lese- und Schreibgeschwindigkeit.

Ja, ich merke das sehr.
Ich kopiere nichts, ich kompiliere Rust Quellcode, und zwar keine 2MB Programme, und da merkt man den Unterschied ziemlich extrem!

Ich habe den Test nicht aus Spaß gemacht, sondern weil mir das extrem auffiel.

Und welche Sicherheit überhaupt? Die Snaphots? Naja, die kann man mit jedem anderen Dateisystem genauso machen, ist ja jetzt kein Non-Plus-Ultra von Btrfs.

Also für mich ist das nix, verstehe auch nicht warum das mittlerweile das Standard Dateisystem ist bei den meisten Distributionen. Bei Fedora mit dem beschissenen Web-Installer hat man, wenn man nicht selbst basteln will, überhaupt keine Möglichkeit mehr, das einfach bei der Installation umzustellen.

Die Snapshots sind das eine ja. Aber ich meinte auch das Cow selber.In dem halt grob gesagt eigentlich alle Dateien doppelt gespeichert werden. Wenn zb eine Datei Lesefehler hat oder anderweitig beschädigt ist kannst du du über Cow wieder herstellen. MIt Cow kannst du halt Dateie beschädlgungen vorbeugen. Ob mans braucht oder nicht ka.Ich hatte bis jetzt noch nie das eine Datei kaput ging oder nicht mehr zum lesen war.

Ich vermmute weil es einfach zu bedienen ist. Und zum andren neue Leuten Linux besser schmackhaft zu machen. Das man mit den Snapshots und zurückspielen des System eine sicherheit hat die von Anfyng an geich mit dabei ist. In Windows brauchste divere BackupProgramme und musst Geld zahlen. In Linux bekommste alles frei Haus und sofort beim installieren gliech mit drinnen.

Du weist selber die Leute sind von Windows verwöhnt. In Linux läuft alles etwas anders. Wenn man es automatisieren kann und sich dann um nix kümmern muss is das für die neuen Leute leichter.

Was aber halt dann zu andren Problemen führen kann wenn man Pech hat.

Ja gut das ausgereifteste und best bewehrte System ist nunmal Ext4. Und mit Timeshift kannst du ja im Prinzip das selbe machen wie unter BTRFS und den Snbapshots.

BTRFS ist halt für Systemsichierung komfortabler als Ext4. Automatische Snapschots vor und nach den Update und das die einträge gleich in den Bootmanagergeschireben.

Das sind halt so Sachen zb die für neue Leute in Linux schwer zu verstehen sind vermute ich mal. Wenn man das alles händisch alles einzeln einstellen muss geschweige den ob die Leute überhaupt dadran denken?

Backup und Sicherheit vom System. Das is für viele eine Fremdwort. Aber gerade unter Linux und vorallem unter Arch Linux kann es ab nd zu vorkommen das ein Update auch mal hängen kann.

Wie gesagt muss jeder selber Wissen ob er Ext4 oder BTRFS nimmt. is halt auhc eine Frage des Backups wie man es gerne mag.

@Daemon

Ja gut du machst mit dem Pc halt auch mehr als manche andere Leute. Wenn ich Office benutze oder Spiele oder mal einen Film schaue also ich sag ma Ottonormalverbraucher da werd ich das wohl eher nicht merken. Aber klar wenn du programierst usw da siehst das schon anders aus.

Liebe Grüsse Pepsi

Hallo Pepsi,
bitte nicht Snapshots und Backups in einen Topf werfen. Das sind unterschiedliche Sachen. Snapshots sind ideal um einen alten Zustand wiederherzustellen, aber wenn die FP stirbt sterben auch die Snapshots und mit ihnen die Daten. Ein Backup ist eine eigenständige Kopie und mindestens extern (um ein wichtiges Kriterium von mehreren zu nennen).

Und unabhängig davon ist das (kleine?) Problem von von btrfs, dass gerade viele Umsteiger und Anfänger sich des Unterschieds von ext4 und btrfs gar nicht bewusst sind. Für ext4 ist das relativ egal, aber bei btrfs würde man damit vieles verschenken. Wie schrieb doch andreas85 in dem exzellenten Artikel über btrfs:
„Wenn man btrfs benutzt, kann man einfach alles machen wie bisher, aber um die Vorteile von btrfs zu nutzen muss man manches anders machen als bisher.“

Ich weiss, ich habe schon gefühlt tausendmal auf diesen Artikel verlinkt, werde aber nicht müde dies weiterhin zu tun, nicht nur weil ich ihn für Einsteiger verständlich und nützlich halte, sondern und vor allem auch als Pflichtlektüre unverzichtbar halte.

viele Grüsse gosia

Ich darf an dieser Stelle zu einem Beitrag im alten Manjaro Forum verweisen, das der User ManTuxer damals erstellt hat.
Es geht unter andrem Darum das btrfs 80% der SSD/HDD freier Speicherplatz haben muss.

Lest euch das bitte einmal durch: BTRFS: kein Platz mehr auf HDD für Updates – was tun?

Das war der Grund warum btrfs für mich keine Rolle mehr spielt.

PS
Gosia war etwas schneller, ist aber auch ein anderer, ähnlicher Beitrag. Unsere Beweggründe sind allerdings dieselben. :wink:

Nein da habe ich mich wohl etwas falsch ausgedrückt. Ich wollte mit den Snapshots dadrauf hinweisen. Wenn du Updates machst und die gehen schief kannst du über die Snapshots halt dein System wieder herstellen. Oder wenn du Anfänger bist und irgenwie dein System crasht kannst du damit das wieder zurück setzen , Mir ging es da nur um das System nicht um die eigenen Dateien oder Home Ordner.

Backup sollte man auf jedenfall machen für eigene Dateien bzw Home Ordner.

Und Snapshots ersetzen keine richtigen Backups.

Ja ich kenne den Artikel Gosia. Da gabs glaub ich sogar noch einen anderen von Megavolt oder so ähnlich der hat das auch gut erklärt.

Aber ob man mans unbedingt braucht ist wie gesagt Geschmacksache.

Naja ka ob das wirklich soviel Frei sein muss ? Das andere ist aber auch wenn du eine 500 gb Platte drinnen hast, und da nur Linuxsystem drauf ist und dein Home auf einer zweiten Festplatte ist, wirst du die 500 Gb Platte sogut wie nie voll bekommen außer du hebst 1000 Snapshots auf.

Aber ich habe auch in meinen vorherigem Post auch angesprochen das EXT4 das bessere Format ist weil das Robust und Ausgereift ist. BTRFS ist noch realtiv Neu.

Und da gebe ich auch Lagger Recht wenn er sagt er braucht kein BTRFS. Für die meisten Nutzer langt EXT4. Wie ich schon vorhin versucht habe zu sagen BTRFS is halt bei den neuen beliebt weil das halt Arbeit abnimmt und durch die Snapshots halt vieles automatisiert läuft. Und bei vielen Distros wenn du die neu installierst ist gleich Snapshot usw schon vorprogramiert.

Das war eigentlich Eine Erklärung zu Gosias Frage wieso viele auf BTRF setzen.

Seit Windows 10 keine Updates mehr macht haben viele zu Linux gewechselt und die haben halt wenig bis null Erfahrung mit Linux. Da sind dann solche Distros beliebt die schon alles von alleine Einrichten und man selber sich dann um nix kümmern muss leider :frowning:

Das ist halt die Windows bequemlichkeit. Runter laden Setup starten läuft das is halt Windows.

Aber man lernt halt schneller mit dem System umzugehen wenn man vieles selber einrichtet.

Liebe Grüsse Pepsi

Was mich an dem Artikel stört, ist schon die Überschrift „Btrfs best practice“.
Das triggert mich wie sau der Begriff. Wahrscheinlich bin ich von den ganzen Dienstleistern mit ihrem „Best practice“ einfach traumatisiert.

Aber, er beschreibt nur die Vorteile, weil Best practice, aber nicht die Nachteile.
Die findet man komischerweise nirgends.

Und, nur um es mal zu sagen: Bei mir sind die ganzen Sachen natürlich richtig eingestellt. Und genau das ist ja der Punkt.
Ich kaufe mir doch kein Auto mit 1000PS, nur um, weil es best practice ist und die ganzen Sicherheitsfunktionen aktiv sind und Leistung schlucken, gedrosselt zu werden auf 100PS. Klar, man kann diese auch deaktivieren, aber dann brauche ich kein Btrfs, sondern kann dann ein gescheites Dateisystem nehmen.

Und dann noch das was @LaGGGer zu recht kritisiert hat:

Frei übersetzt: :notebook: Ein letztes Wort: Wenn Sie BTRFS und Snapshots verwenden, behalten Sie das Dateisystem im Auge, um sicherzustellen, dass es zu etwa 20 % frei ist.

Stell ich mir grad irgendwie seltsam vor. Ich habe eine schnelle NVMe mit 2TB.
Ich werde erstens um das fast 4-fache gedrosselt, und soll dann (keine genau umrechnung) auch noch ca. 400GB frei halten?

Also jetzt mal ohne Witz: Wer hat sich diesen, in meinen Augen, Schrott ausgedacht?

Ne, also, wer das unbedingt will und braucht und Wert auf Snapshots legt, bitte, der soll es nehmen.
Und btw.: Snapshots gab und gibt es auch für andere Dateisysteme, die sind auch per grub und anderen Bootloadern aus dem Bootmenü heraus wählbar.

Für meinen Bedarf ist das eindeutig nichts.

Hallo Daemon,
„antworten oder nicht, das ist hier die Frage…“ :wink:
aber gut, es sei deutlicher klargestellt, was ich für klar hielt:
Ich benutze weder btrfs und empfehle es auch nicht. Aber wenn man es schon mal nimmt, sei es freiwillig oder fast ungefragt auf’s Auge gedrückt bekommen hat, wie es leider bei Manjaro der Fall war oder wohl noch ist, dann sollte man sich zumindest mit den Basics vertraut machen. Und genau die werden in dem von mir verlinkten Beitrag (und natürlich auch in anderen) schön vermittelt. Das ist jedenfalls besser, als gar nichts über btrfs zu wissen.
Und ja, „best practice“ hat etwas marktschreierisches, aber was solls. Man hätte es auch „Tutorial“, „Anleitung“ oder retro-mäßig „Was Sie schon immer über btrfs wissen wollten aber nicht zu fragen wagten“ :wink: nennen können, das ist mir egal und das nehme ich nicht so genau. Die Anleitung bietet einfach das, was ich allgemein unter der Kategorie „best practice“ erwarte, „erprobte Lösungsansätze, die zur Orientierung dienen können“. aber das weisst Du ja garantiert selbst.
Also gut, mehr kann und will ich nicht zum Thema btrfs sagen.

viele Grüsse gosia

@gosia

Ich habe schon verstanden was du damit sagen wolltest, war auch kein Angriff auf dich.

Mir geht es ehrlich gesagt nur auf die Nerven, dass egal bei was, immer nur gesagt wird „Produkt X ist super toll, weil es kann X,Y,Z, und überhaupt ist es sowieso das Beste auf dem Markt, usw. usf.“
Ganz egal ob das nun ein Dateisystem ist (ja auch Btrfs wird damit „beworben“), oder Software X, oder Auto Y, oder oder oder.

Aber keiner legt mal die Karten auf den Tisch, was Produkt X nicht kann, was es sonst noch so an Konsequenzen gibt, für wen oder was es geeignet ist oder eben nicht.


Was mich aber genauso ärgert, ist, dass ich natürlich erst den Rechner eingerichtet habe, und dann gedacht habe, ich könnte ja mal einen „Benchmark“ laufen lassen. Da ich dem Ergebnis von KDiskMark nicht zu 100% vertraut habe, habe ich nochmal die zwei Scripte gemacht.

Ich könnte jetzt einfach neu installieren, aber dazu bin ich wieder zu faul.

Was ich jetzt machen kann, ist damit leben und bei bestimmten Ordnern das CoW abschalten, also z.B. dort wo die Quelltexte liegen und kompiliert wird.
Und der Rest vom System läuft halt weiter so wie es ist. Natürlich merkt man davon erstmal nix ob das Ding mit 3GB/s läuft oder mit 13GB/s.

Ja das kotzt mich auch an.

Schau dir ma im Tv die Werbung an wenn es dann immer heist klinisch getestet oder wenn die mit 10 Zertifikate Werben wie toll das doch ist. Am ende kann keiner Üpberprüfen was das für Zertifikate sind und ob die überhaupt Rechtens sind. Es gibt Zertifikate wie Tüv geprüfte Sicherheit usw aber woher weis ich am Ende ob die wirklich was aussagen oder nicht? es gibt staatlich geprüfte Siegel es gibt Irgenwelche sebergemachte Siegel wo dann keiner weiss was das überhaupt ist oder was es aussagen soll. Schau dir mal die ganzen Bio Siegel an wieso gibts es 100 verschiedene Bio Siegel und nicht einfach 1 ?

Aber zurück zum Thema BTRFS wird zur Zeit bei vielen Distros gleich eingebaut weil es schmackhaft machen soll. Geht dein System nicht mehr nach einem Update hole es zurück.

Klar geht das auch mit Ext4 Timeshift usw auch. Aber du musst halt da selber Hand anlegen das is das Problem. Die Leute denken ich instaliere das System und dann kann es alles und ich muss nichts mehr machen. Das is das klassische Windows denken. Windows 10 ging in Rente und jetzt gibt es halt immer mehr Leute die Linux wollen weil sie kein Windows 11 wollen. Und für die muss man halt jetzt was bieten. Es fing einer an und dann machen alle es nach. Linux soll einfach sein es soll jeder bedienen können, und am besten soll gleich nen haufen Programme oder extras dabei sein die man jeden Tag braucht.Sicherheit soll da auch nicht fehlen. Und BTRFS und Cow hört sich gut an und lässt sich anscheindend auch sehr gut verkaufen unter Linux.

Die Leute kaufen oder nutzen das was sich gut anhört. Wenn du denen sagst das hat hier und da Probleme oder da könnte es nicht so gut laufen das will keiner hören die rennen gleich weg und zum nächsten Hersteller Anbieter oder oder.

Liebe Grüsse Pepsi

War halt dumm gelaufen. Ich hätte mich auch vorher informieren können. Ist ja nicht so dass ich Btrfs vorher nicht schon gekannt habe, nur bin ich eben nicht davon ausgegangen das es so extrem ist.

Wie auch immer, den Fehler mache ich kein zweites mal. :wink: