A napokban segítenem kellett valakinek a kvm imagéből kiszedni fájlokat.
Az első reakcióm a guestfish volt. Centos alatt kell néhány csomag hozzá, hogy ntfst is tudjon. Ezeket a yum simán felrakja:
$ yum libguestfs libguestfs-tools libguestfs-winsupport
Találtam egy hasznos kis perl scriptet, ami képes bemountolni a windows meghajtót a fájlrendszerünkbe.
Na ezt! Ezt ne használd, cefet lassú: 500k-2MB/s a csúcs.
Ennél a guestfish copy-outja jóval gyorsabb. Viszont az csak fájlonként tud. Erre megoldás a tar-out, ami könyvtárakat kirak tarba.
Ez már elég jó és gyors :)
A guestfish legyeszerűbben -i kapcsolóval használható, ekkor megpróbálja fellelni a parítciókat és auto mountolni magába:
$ guestfish --ro -a kepfile.img -i
A --ro kapcsoló a read-onlyt jelzi. Ofc, ha módosítani akarunk, ez nem kell.
[root@marwin 2014-07-17]# guestfish --ro -a kvm3583.img -i
Welcome to guestfish, the libguestfs filesystem interactive shell for
editing virtual machine filesystems.
Type: 'help' for help on commands
'man' to read the manual
'quit' to quit the shell
Operating system: Windows Server 2012 Datacenter
/dev/sda2 mounted on /
>
A guestfish konzolon:
listázás: ll
másolás: copy-out
könyvtár csomagolva kimásolása: tar-out
Amit nem próbáltam ki, mert későn jött az ötlet, az az, hogy a guestfish is tud stdoutra tarozni, nekem meg ftp-n át kellett töltenem a fájlokat és az lftp fogad stdinről feltöltenivalót.
Ezt az ötletet majd legközelebb .)
UPDATE:
Vágyam még ma teljesült, így néz ki egy minta parancs:
$ virt-tar-out --ro -a kvm3583.img /KONYVTAR - | lftp -u useride,passwordide 84.21.7.211 -e "put /dev/stdin -o file.tar; quit;"
Legnagyobb hátránya, hogy csak könyvtárakat enged tarozni a libguestfs.
Nincsenek megjegyzések:
Megjegyzés küldése