Domanda semplice, come posso estrarre i file da un'AppImage?
Interfaccia grafica, interfaccia grafica, non importa, purché esegua il lavoro.
Sto usando openSUSE Tumbleweed se è importante
Domanda semplice, come posso estrarre i file da un'AppImage?
Interfaccia grafica, interfaccia grafica, non importa, purché esegua il lavoro.
Sto usando openSUSE Tumbleweed se è importante
Risposte:
Innanzitutto , controlla se il tuo file AppImage utilizza la versione più recente del suo formato interno:
/path/to/your.AppImage --appimage-help
Se vedi la seguente riga nell'output:
--appimage-extract Extract content from embedded filesystem image
puoi concludere come procedere. In questo caso hai di fronte un formato AppImage di tipo 2 (più recente) . (La parte 'percorso' del comando può essere relativa o assoluta.)
In secondo luogo , se il primo comando non ha funzionato, è possibile utilizzare uno strumento di supporto. Tuttavia, per questo sono necessari i privilegi sudo / root: downloadappimagetool
(che ovviamente è disponibile come AppImage). Renderlo eseguibile ed esegui:
/path/to/appimagetool-x86_64.AppImage --list /path/to/your.AppImage
Questo dovrebbe darti un elenco di tutti i file e dei loro percorsi (relativi) incorporati in your.AppImage . Per estrarre your.AppImage in una directory denominata e situata in / path / to / somedir , esegui
mkdir /path/to/somedir
/path/to/appimagetool-x86_64.AppImage /path/to/your.AppImage /path/to/somedir
In terzo luogo , puoi montare AppImages (tipo 1 e tipo 2) anche senza lo strumento helper:
Tipo 1:
mkdir mountpoint
sudo mount -o loop my.AppImage mountpoint/
# You can now inspect the contents
# You can now also copy the contents to a writable location of your hard disk
sudo umount mountpoint/
# Do not forget the umount step!
# If you do forget it, your system may exhibit unwanted behavior.
Tipo 2:
mkdir mountpoint
my.AppImage --appimage-offset
123456 # This is just an example output
sudo mount my.AppImage mountpoint/ -o offset=123456
# you can now inspect the contents
sudo umount mountpoint/
# Do not forget the umount step!
# If you do forget it, your system may exhibit unwanted behavior.
Suggerimento per il "paranoico": se non si desidera fidarsi dell'AppImage, è preferibile il terzo metodo. Perché in esecuzione (per il tipo 2 AppImages)the.AppImage --appimage-extract
othe.AppImage --appimage-mount
oppurethe.AppImage --appimage-offset
significa che in realtà si sta eseguendo un AppImage (anche se non il suo contenuto).
Per rispondere alla domanda di @jayarjo nel commento seguente ( come reimballare l'AppImage dopo le modifiche? ):
È possibile utilizzare appimagetool non solo per estrarre un'AppImage esistente in un AppDir. Puoi usarlo anche per reimballare l'AppDir (possibilmente dopo alcune modifiche) in un'AppImage (modificata).
Corri
appimagetool -v /path/to/AppDir
Guarda l'output del comando (reso dettagliato da -v
) per la posizione e il nome dell'AppImage appena creato. Questo è tutto.
"appimagetool -v /path/to/AppDir"
. Guarda l'output del comando (reso dettagliato da -v
) per la posizione dell'AppImage appena creata. Questo è tutto.