Ich versuche, das proprietäre Dateiformat von Mozilla Firefox in den Griff zu bekommen .jsonlz4
, zum Beispiel verwendet, um sessionstore-backups/recovery.jsonlz4
, aber ohne Erfolg.
Wie erhalte ich meine Daten zurück, insbesondere Langtext, den ich in einigen Textbereichen einer abgestürzten Sitzung eingegeben habe? Es sind meine Daten!
.jsonlz4
Dateien.Antworten:
Es gibt nur wenige Google-Ergebnisse, die tatsächlich zu praktikablen Lösungen führen https://www.reddit.com/r/firefox/comments/2ps6wg/jsonlz4_bookmark_backups/ scheint Folgendes am zuverlässigsten zu funktionieren:
im
about:config
, umschalten diedevtools.chrome.enabled
Einstellung von der Standardeinstellung vonfalse
auf einen Wert vontrue
öffnen Notizblock aus Firefox heraus:
in der Menüleiste innerhalb von Notizblock von Firefox ändern Umgebung von Inhalt zu Browser (Das Weglassen dieses Schritts würde später zu Fehlern führen wie
Exception: ReferenceError: OS is not defined
im nächsten Schritt)Verwenden Sie Code wie den folgenden in der Notizblock von Firefox:
Der letzte Parameter zu
JSON.stringify
legt fest, wie viele Leerzeichen in jeder Zeile verwendet werden sollen; Wenn Sie 0 eingeben, wird das Ganze in einer einzelnen Zeile gedruckt. Wenn Sie 1 eingeben, werden die Zeilen richtig geteilt (wenn Sie 2 eingeben, wird zu viel nutzloses Leerzeichen erzeugt und die Datei wird vergrößert, ohne dass dies von Nutzen ist).drücke den
Run
TasteLauf
fgrep :textarea /Users/…/sessionstore-backups/recovery.baklz4.uncompressed.stringify
aus dem Terminal Appquelle
Leider funktionieren Standardtools aufgrund eines nicht standardmäßigen Headers nicht. Da ist es ein offener Vorschlag um das zu ändern. Anscheinend wurde der Mozilla-Header entwickelt, bevor es ein Standard-LZ4-Frame-Format gab. Es schließt einen Standard-LZ4-Block ein.
Das heißt, die gleicher Fehlerbericht beinhaltet ein paar alternative Methoden. Ich werde sie kurz auflisten:
dd if=original.jsonlz4 of=stripped.lz4 bs=8 skip=1
) und das sollte Sie mit einem gültigen lz4-Block verlassen. Beachten Sie, dass sich dies von einem lz4 unterscheidet Rahmen . Während die meisten Programmiersprachen Bibliotheken haben, die einen Block leicht dekodieren können, ist es schwieriger, ein vorgefertigtes Werkzeug dafür zu finden, z. dasliblz4-tool
Paket akzeptiert nur das Frame-Format.quelle
Ich konnte die URLs aus dem extrahieren {profile-dir} /sessionstore-backups/recovery.jsonlz4 Datei mit dem folgenden kostenlosen Online-Tool, das speziell für diesen Zweck entwickelt wurde:
https://www.jeffersonscher.com/ffu/scrounger.html
Dieselbe Site bietet ein ähnliches Tool zum Entschlüsseln jsonlz4 Dateien aus dem {profile-dir} / bookmarkbackups Verzeichnis.
quelle