GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Extrahieren verketteter cpio-Archive

gunzip muss nur einmal ausgeführt werden (verbraucht alle Eingaben), während cpio einmal pro eingebettetem Archiv ausgeführt werden sollte, etwa so:

gunzip -c <input.cgz | while cpio -i; do :; done

/usr/lib/dracut/skipcpio $your-initrd-img | zcat | cpio -id --no-absolute-file-names

oder sonst

/usr/lib/dracut/skipcpio $your-img | gunzip -c | cpio -id

(In FreeBSD gibt es keine Option --no-absolute-file-names für cpio)

Dieses kleine Programm skipcpio wenn Teil des Dracut-Pakets. Aber Sie können den Code (skipcpio.c) herunterladen und sogar unter FreeBSD kompilieren.

Sie benötigen dies, wenn Sie mit dracut erstellte initrd-Images extrahieren, zumindest unter RedHat-betriebenen Distributionen wie Fedora. Es platziert eine Datei namens "early_cpio" in das Image, daher wird das Extrahieren Ihrer initramfs auf eine normale, zuvor bekannte Weise nicht funktionieren.


Linux
  1. Linux Housekeeping:Umgang mit Archiven und Backups

  2. Selbstextrahierende Skripte:Tar -xo und Dd?

  3. Linux-cpio-Beispiele:So erstellen und extrahieren Sie cpio-Archive (und tar-Archive)

  4. cpio-Befehl – ​​kopiert, listet und extrahiert Dateien in und aus Archiven

  5. Extrahieren von Text aus MS-Word-Dateien in Python

Daten extrahieren und anzeigen mit awk

Tar-Befehl unter Linux (Archive erstellen und extrahieren)

Eine Bash-Funktion zum Extrahieren von Dateiarchiven verschiedener Typen

So entpacken Sie tar bz2 xz gz-Archive unter Linux

Symlinks beim Extrahieren von Tarball ignorieren

Extrahieren von SFX-Dateien unter Linux