Erweitert
Dieses Kapitel versammelt die Power-User-Oberflächen der App — jene, die Sie gelegentlich statt in jeder Sitzung nutzen. Ihr Herzstück ist der eingebaute ext4-Dateibrowser, der die Disk-Images eines Arbeitsbereichs direkt auf Ihrem Mac öffnet, ohne die VM zu starten: um eine Datei aus einem Arbeitsbereich zu retten, den Sie lieber nicht starten möchten, oder um einen zu reparieren, der nicht mehr bootet. Ein kurzer Abschnitt am Ende dokumentiert zwei Low-Level-Konfigurationsvorgaben.
Alles hier setzt voraus, dass Sie mit dem Speichermodell aus Arbeitsbereiche und Sitzungen vertraut sind.
Der ext4-Dateibrowser
Jeder Arbeitsbereich speichert seine Daten in Linux-ext4-Disk-Images — der Systemdatenträger disk.img und das Home-Image home.img. macOS bietet keine native ext4-Unterstützung, daher ist der einzige Weg, in diese Images hineinzusehen, normalerweise das Starten der VM. Bromure Agentic Coding umgeht das mit einem eigenen, abhängigkeitsfreien ext4-Leser und -Schreiber im Userland: Er parst das On-Disk-Format direkt und zeigt Ihnen den Baum.
Arbeitsbereiche ▸ ext4-Datei öffnen… öffnet jedes ext4- (auch ext2 oder ext3) .img — ein rohes Dateisystem oder einen MBR-/GPT-partitionierten Datenträger — in einem Finder-ähnlichen Fenster. Es wird nichts eingehängt, keine VM gestartet und keine erhöhten Rechte benötigt.
Hinweis: Das Image wird standardmäßig schreibgeschützt geöffnet — sicher, selbst wenn eine Arbeitsbereich-VM den Datenträger noch angehängt hat. Das Bearbeiten ist ein separater, ausdrücklich abgesicherter Schritt (siehe Ein Image bearbeiten).
Was Sie öffnen können: die Datenträger in einem Arbeitsbereich
Ein Arbeitsbereich liegt unter ~/Library/Application Support/BromureAC/profiles/<uuid>/. Zwei Images dort lohnen sich zum Durchsuchen, zuzüglich ihrer Rollback-Snapshots:
| Image | Was der Browser anzeigt | Toolbar-Infozeile lautet |
|---|---|---|
disk.img | Das Ubuntu-System-Root — /etc, /var, /usr, /opt usw. Der Datenträger ist ein GPT-Layout (eine 512-MiB-EFI-Partition plus das ext4-Root); der Browser findet das ext4-Root automatisch. | partition @…MiB |
home.img | Das /home/ubuntu des Gasts direkt im Dateisystem-Root — Dotfiles, Projekt-Checkouts, .ssh, Shell-Verlauf und der Paste-Cache unter .bromure/. | raw |
checkpoints/<ts>.img | Ein boot-erprobter Rollback-Snapshot von disk.img. | partition @…MiB |
checkpoints/home/<ts>.img | Ein Rollback-Snapshot von home.img. | raw |
Das Home-Image verhält sich so, weil der Gast es mit mkfs.ext4 formatiert und beim Booten über /home/ubuntu einhängt — daher ist das eigene Root-Verzeichnis des Images dieser Home-Ordner. Bei einem Arbeitsbereich, der noch das ältere Home per geteiltem Ordner verwendet, gibt es kein home.img zum Öffnen; siehe Sitzungen für die Speichermodelle und das einmalige Upgrade.
Ein Image öffnen
- Wählen Sie Arbeitsbereiche ▸ ext4-Datei öffnen….
- Ein Öffnen-Dialog mit dem Titel ext4-Disk-Image öffnen erscheint — „Wählen Sie ein ext4-
.img-Disk-Image (roh oder partitioniert)." — beginnend in~/Library/Application Support/BromureAC. Navigieren Sie in den Ordnerprofiles/<uuid>/eines Arbeitsbereichs und wählen Siedisk.img,home.imgoder eine Datei untercheckpoints/. - Der Browser öffnet sich in einem Fenster mit dem Titel ext4 — «Dateiname» und zeigt das Dateisystem-Root.
Die Infozeile der Toolbar (unten links) fasst das Volume zusammen: seine Bezeichnung, Gesamtgröße, ob das Dateisystem roh oder an einem Partitions-Offset gefunden wurde, und seinen Zustand — clean, not cleanly unmounted oder journal needs recovery. Es gibt ein Fenster pro Image; das erneute Öffnen eines bereits geöffneten Images fokussiert einfach dessen Fenster.
Durchsuchen, Vorschau und Extrahieren
Die Hauptansicht ist eine dreispaltige Tabelle — Name, Größe und Typ — mit den Verzeichnissen zuerst. Der Typ unterscheidet Ordner, Dateien und Symlinks sowie die speziellen Unix-Knotentypen (Char, Block, FIFO, Socket).
- Navigieren — doppelklicken Sie auf einen Ordner, um ihn zu betreten; klicken Sie auf den Pfeil Nach oben in der Toolbar, um zurückzugehen. Der Breadcrumb zeigt den aktuellen Pfad.
- Vorschau — doppelklicken Sie auf eine Datei oder klicken Sie mit der rechten Maustaste darauf und wählen Sie Vorschau. Textdateien werden als Text dargestellt; Binärdateien werden als Hex-Dump dargestellt. In jedem Fall ist die Vorschau auf das erste 1 MiB begrenzt, und die Fußzeile meldet, wie viele der Gesamt-Bytes der Datei angezeigt werden. Ein Symlink wird als sein Zielpfad angezeigt.
- Extrahieren — klicken Sie mit der rechten Maustaste auf eine Datei und wählen Sie Extrahieren…, um ihren vollständigen Inhalt über einen Sichern-Dialog auf Ihren Mac zu schreiben. Dies ist der schreibgeschützte Weg, den Sie am häufigsten nutzen werden.
Ein Image bearbeiten
Das Bearbeiten liegt bewusst hinter einer Absicherung. Klicken Sie in der Toolbar auf Bearbeiten aktivieren…; eine Warnung erscheint:
Bearbeiten Sie nur ein Image, dessen Arbeitsbereich-VM gestoppt ist. Das Schreiben auf einen Datenträger, den eine laufende VM geöffnet hat, beschädigt ihn.
Bestätigen Sie, und das Image wird schreib-lesbar erneut geöffnet, mit einem orangefarbenen Stift-Abzeichen Bearbeiten in der Toolbar. Das Kontextmenü einer Datei erhält dann Ersetzen…: Wählen Sie eine Host-Datei, deren Inhalt die ausgewählte Datei an Ort und Stelle überschreibt. Der Editor berechnet die metadata_csum-Prüfsumme des Inodes neu, sodass das Ergebnis konsistent bleibt und keine Reparatur benötigt.
Warnung: Das Ersetzen erfolgt nur an Ort und Stelle. Der neue Inhalt muss in die bereits zugewiesenen Blöcke der Datei passen — eine größere Datei wird mit Diese Datei müsste wachsen abgelehnt (das Vergrößern, Erstellen und Löschen von Dateien ist noch nicht aktiviert). Inline-Data-Dateien können nicht bearbeitet werden. Schreibvorgänge werden abgelehnt, solange das Journal eine Wiederherstellung benötigt — führen Sie zuerst
fsckaus (unten). Und bearbeiten Sie niemals ein Image, das eine laufende VM angehängt hat.
fsck ausführen
Die Schaltfläche fsck ausführen… in der Toolbar führt fsck.ext4 (e2fsck) gegen das geöffnete Image aus, um das Journal wiederzugeben und das Dateisystem zu reparieren. Sie bestätigt zunächst — „fsck.ext4 auf diesem Image ausführen?", mit dem Hinweis, dass die Arbeitsbereich-VM gestoppt sein muss und dass das Werkzeug das Image verändern kann — und führt dann eine erzwungene automatische Reparatur durch. Bei einem rohen Image läuft fsck direkt auf der Datei; bei einem partitionierten Datenträger wird das Image mit hdiutil ohne Einhängen angehängt, die ext4-Slice geprüft und das Image anschließend wieder abgehängt. Es sind keine erhöhten Rechte beteiligt.
Die Ergebnisse erscheinen in einem Berichtsblatt mit einer verständlichen Zusammenfassung — „Filesystem is clean.", „Filesystem errors were corrected." oder „Filesystem errors remain UNCORRECTED." — plus der vollständigen Werkzeugausgabe; das Image wird dann erneut geöffnet.
Hinweis: macOS liefert kein
e2fsprogsmit. Fehlt das Werkzeug, lautet ein Hinweis fsck.ext4 ist nicht installiert mit der Lösungbrew install e2fsprogs. Die App durchsucht zuerst ihr eigenes Bundle, dann$PATH, dann Homebrews keg-onlye2fsprogs-Speicherorte.
Wann Sie darauf zurückgreifen
Der Browser macht den Datenträger eines gestoppten Arbeitsbereichs zu etwas, das Sie vom Host aus inspizieren und aus dem Sie retten können:
- Eine Datei retten aus einem Arbeitsbereich, den Sie lieber nicht booten möchten — holen Sie eine nicht committete Änderung oder ein Log aus
home.imgmit Extrahieren… heraus. - Einen Prüfpunkt inspizieren, bevor Sie ein Rollback durchführen, um zu bestätigen, dass er das enthält, was Sie erwarten. Kombinieren Sie dies mit Home wiederherstellen… und Auf Base zurücksetzen…, beide behandelt unter Prüfpunkte und Rollback.
- Einen Arbeitsbereich retten, der nicht bootet — ersetzen Sie eine fehlerhafte Konfigurationsdatei an Ort und Stelle und führen Sie dann
fsckaus, falls der Schreibvorgang das Journal in einem Zustand hinterlassen hat, der eine Wiederherstellung benötigt. Siehe Fehlerbehebung für die Diagnose von Boot-Fehlern.
Entwicklervorgaben
Zwei Low-Level-Stellschrauben werden aus der UserDefaults-Domain der App, io.bromure.agentic-coding, gelesen. Setzen Sie sie mit defaults write, während die App nicht läuft, und starten Sie sie dann neu:
| Schlüssel | Wirkung | Standard |
|---|---|---|
vm.homeImageGB | Scheinbare (für den Gast sichtbare) Größe eines neu erstellten ext4-Home-Images in GiB. Die Host-Datei ist sparse, daher kostet dies im Voraus nichts. Auf 8–1024 begrenzt. | 64 |
vm.mtu | MTU-Begrenzung für die primäre NIC einer Arbeitsbereich-VM, die bei jedem Booten in den Gast geschrieben wird. Der Standard von 1280 ist VPN-sicher (WireGuard, IKEv2 und Unternehmens-PMTU-Pfade). | 1280 |
Um beispielsweise die Home-Images künftiger Arbeitsbereiche als 128 GiB erscheinen zu lassen:
defaults write io.bromure.agentic-coding vm.homeImageGB -int 128
Hinweis:
vm.homeImageGBbetrifft nur Home-Images, die nach der Änderung erstellt werden; bestehende Images behalten ihre Größe. Ein Home-Image kann später vergrößert (ein Online-Truncate plusresize2fs), aber nicht verkleinert werden.
Tipp: Für wirklich wegwerfbare Arbeit bootet
bromure-ac vm run --rmeinen Docker-artigen, wegwerfbaren Arbeitsbereich, dessen Datenträger gelöscht wird, wenn die VM stoppt — dokumentiert in Automatisierung & die CLI.