Thema: storage
-
Neue Disk in Windows Server vorbereiten: von Get-Disk bis Format-Volume und warum sie offline startet
Die Abfolge im PowerShell-Storage-Modul von Get-Disk bis zum eingebundenen, formatierten Volume (Initialize-Disk -PartitionStyle GPT, New-Partition -UseMaximumSize, Format-Volume), das spätere Vergrössern mit Get-PartitionSupportedSize sowie die SAN-Richtlinie, die manche neu angebundenen Disks standardmässig offline lässt.
-
AIX LVM in der Praxis: lsvg/lspv/lslv, JFS2-Dateisystem online vergrössern und rootvg spiegeln
Der AIX-eigene Logical Volume Manager organisiert Platten in Volume Groups, Logical Volumes und JFS2-Dateisysteme und wird mit lsvg/lspv/lslv statt mit pvs/vgs/lvs von Linux untersucht. Ein Dateisystem online zu vergrössern erfordert nur einen chfs-Befehl; das Spiegeln von rootvg für höhere Verfügbarkeit ist eine Abfolge aus vier Schritten (extendvg, mirrorvg, bosboot, bootlist) und nicht nur mirrorvg.
-
Browser-Speicher im Vergleich: Cookies, Web Storage und IndexedDB
Cookies werden bei jeder Anfrage mitgeschickt und sind laut Spezifikation klein; localStorage und sessionStorage sind synchrone String-Speicher mit wenigen MiB je Origin; IndexedDB ist asynchron, transaktional und teilt sich das grosse Kontingent der Origin. Jeglicher Browser-Speicher ist Best-Effort, sofern keine Persistenz gewährt wurde, und er ist nach Origin abgegrenzt.
-
Ausfallsicherer Speicher auf einem Standalone-Server mit Speicherplätzen (Storage Spaces) und Austausch einer defekten Festplatte
Physische Festplatten mit New-StoragePool zusammenfassen, mit New-VirtualDisk ein Mirror- oder Parity-Laufwerk anlegen, den Zustand mit Get-PhysicalDisk und Get-StorageJob überwachen und eine defekte Festplatte nach dokumentiertem Ablauf ersetzen, ohne den Pool zu verlieren.
-
Disk-I/O-Latenz mit iostat -x: r_await, w_await, aqu-sz und warum %util bei SSD und RAID in die Irre führt
iostat -x ergänzt die reine Durchsatzansicht um Latenz- und Queue-Felder pro Gerät. r_await und w_await trennen Lese- von Schreiblatenz, aqu-sz zeigt die Zahl ausstehender Requests (in älteren sysstat-Versionen avgqu-sz), und das sysstat-Manual warnt selbst, dass %util bei Geräten mit paralleler Bearbeitung keine Sättigung mehr anzeigt.
-
Neue Festplatte nicht-interaktiv partitionieren, ohne auf das falsche Gerät zu schreiben
parted -s und mkfs laufen ohne Rückfrage, sobald ein Zielgerät angegeben ist. Der einzige wirksame Schutz besteht darin, die Identität des Geräts (Seriennummer oder WWN über /dev/disk/by-id) vor dem ersten Schreibzugriff zu prüfen, nicht danach. wipefs -n und lsblk sind rein lesende Prüfungen, die vor jeden schreibenden Schritt gehören.
-
Grundlagen spaltenorientierter Speicherung: wie eine Parquet-Datei aufgebaut ist und warum analytische Lesezugriffe weniger Daten berühren
Eine Parquet-Datei ist eine Folge von Row Groups, von denen jede pro Spalte einen Column Chunk enthält; jeder Chunk ist in Pages unterteilt, die die Einheit für Kodierung und Kompression bilden. Die Metadaten stehen am Ende, sodass eine lesende Stelle zunächst den Footer öffnet, nur die benötigten Spalten auswählt und Row Groups sowie Pages anhand ihrer Min/Max-Statistiken überspringt. Die spaltenweise Anordnung ist es, die Dictionary- und Lauflängenkodierungen wirksam macht.
-
NFS-Freigaben robust einbinden: hard oder soft, timeo und was passiert, wenn der Server ausfällt
Die Standardoption hard lässt den NFS-Client bei unerreichbarem Server endlos wiederholen und blockiert den aufrufenden Prozess. Das ist meist richtig, doch ein nicht antwortender Server lässt Befehle wie df oder ls hängen, bis er wieder erreichbar ist. x-systemd.automount oder nofail verhindern, dass ein unerreichbarer Server den Boot blockiert.
-
Software-RAID1-Spiegel mit mdadm aufbauen und eine ausgefallene Platte ersetzen
mdadm --create erstellt ein Linux-Software-RAID aus Partitionen oder ganzen Platten. Ohne Eintrag in mdadm.conf und aktualisiertes initramfs kann das Array beim nächsten Boot womöglich nicht wieder zusammengesetzt werden, obwohl es direkt nach der Erstellung einwandfrei läuft.
-
/etc/fstab sicher bearbeiten: UUIDs, nofail, x-systemd-Optionen und findmnt --verify
Eine fehlerhafte Zeile in /etc/fstab kann beim nächsten Start in eine Emergency-Shell führen. Diese Methodik verwendet UUID= statt Gerätenamen, nofail und x-systemd.device-timeout= für optionale Mounts sowie findmnt --verify und mount -a, um die Datei vor dem Neustart zu prüfen.
-
Datenvolume mit LUKS2 verschlüsseln: Formatieren, Öffnen, crypttab und die Folgen eines verlorenen Headers
Mit cryptsetup luksFormat und luksOpen wird ein LUKS2-Volume eingerichtet und entsperrt; /etc/crypttab automatisiert das Entsperren beim Booten. Eine verlorene Passphrase sowie ein verlorener oder beschädigter LUKS-Header sind nicht wiederherstellbar, daher ist luksHeaderBackup ein zwingender Schritt und keine optionale Ergänzung.
-
LVM Logical Volume und Dateisystem im laufenden Betrieb vergrössern, ohne auszuhängen
Mit lvextend -r lassen sich ein Logical Volume und sein Dateisystem in einem Schritt vergrössern, während es eingehängt bleibt; je nach Dateisystem ruft lvextend dafür xfs_growfs oder resize2fs auf. XFS-Dateisysteme können nur wachsen, nie schrumpfen; die Methodik beschreibt den Online-Weg für beide Dateisysteme.
-
Grosse Binärdateien mit git filter-repo aus der Git-Historie entfernen
Ein Repository bleibt gross, nachdem eine grosse Datei gelöscht wurde, weil jeder Klon die Historie mitträgt; die Verkleinerung bedeutet, die betroffenen Blobs zu finden, alle Commits, die sie enthalten, mit git filter-repo in einem frischen Klon umzuschreiben, jeden Branch und Tag per Force-Push zu übertragen, und alle Mitwirkenden neu klonen zu lassen, weil umgeschriebene Commits neue IDs erhalten.
-
SMB/CIFS-Freigaben unter Linux mit Credentials-Datei einbinden, statt das Passwort einzubetten
mount -t cifs nimmt Benutzername und Passwort direkt in den Mount-Optionen entgegen, sodass sie in Prozesslisten und in /etc/fstab im Klartext sichtbar sind; eine nur für root lesbare Credentials-Datei beseitigt beide Angriffsflächen. uid/gid/file_mode/dir_mode legen fest, wer die Dateien lokal nutzen kann, da SMB-Berechtigungen nicht auf Unix-Besitzverhältnisse abgebildet werden.
-
ZFS-Administration unter Solaris 11.4: Pools, Datasets, Snapshots und Scrubs
zpool verwaltet Speicherpools (status, list, scrub, iostat), zfs die darin enthaltenen Datasets (list, create, set, snapshot, rollback, send/receive). Da Boot-Umgebungen ZFS-Datasets sind, bilden diese beiden Befehle die Grundlage für sicheres Patching ebenso wie für die Speicheradministration.
-
Downsampling und Aufbewahrungsstufen für Zeitreihendaten
Rohdaten für ein kurzes Zeitfenster aufbewahren, sie für ein längeres Fenster in feste Bins mit Count, Sum, Min und Max zusammenfassen und beim Ablauf einer Stufe partitionsweise löschen; Aggregate wählen, die sich erneut aggregieren lassen, Bins an einem festen Ursprung ausrichten und das Rollup für einen Bin erst ausführen, nachdem dessen verspätete Daten eingetroffen sind.
-
Git LFS: Pointer-Dateien, Smudge-Filter und wann man es nicht einsetzen sollte
Git LFS ersetzt getrackte grosse Dateien durch kleine Text-Pointer (version, sha256 oid, size) und speichert die Inhalte über Clean- und Smudge-Filter auf einem separaten Server; das hält Klone klein, fügt aber ein zweites Speichersystem mit eigenen Kontingenten hinzu, sodass das Tracken selten geänderter kleiner Assets oder von Build-Ausgaben damit meist mehr kostet, als es einspart.
Maschinenlesbar: JSON