QEMU QCOW2 (.qcow2)
QEMU StandardowyQEMU Copy-On-Write v2 (QCOW2) to flagowy format wirtualnego dysku dla nowoczesnej wirtualizacji linuksowej (KVM, Proxmox, OpenStack, QEMU), oferujący dynamiczne alokowanie miejsca (thin provisioning), wewnętrzne migawki, pliki bazowe oraz transparentną kompresję.
Konwertuj QCOW2 na RAW
Darmowy konwerter z QCOW2 na RAW w przeglądarce. Konwertuj pliki natychmiast na swoim urządzeniu.
Inspekcja i metadane
Systemy operacyjne i analizatory plików identyfikują pliki QCOW2, sprawdzając początkową sekwencję bajtów binarnych:
Podpis nagłówka na poziomie bajtów (Magic Bytes)
Systemy operacyjne i analizatory plików identyfikują pliki QCOW2, sprawdzając początkową sekwencję bajtów binarnych:
PODPIS HEX (OFFSET 0):
51 46 49 FB 00 00 00 02 / 03REPREZENTACJA ASCII: QFIû...
Normalizacja: QEMU QCOW2 Image Format Specification
Specyfikacja techniczna
| Architektura kontenera | Two-level cluster allocation table (L1 and L2 tables) supporting Copy-on-Write backing files, snapshots, and encryption |
| Kompresja | Zlib Deflate or Zstandard (Zstd) cluster-level compression |
| Kolejność bajtów (Endianness) | Big-Endian header and cluster offsets |
| Przestrzenie kolorów | N/A (Virtual Machine Disk) |
| Kanały i struktura | Virtual machine hard drive partitions, filesystems, and point-in-time snapshots |
| Maks. wymiary | Up to 2 Petabytes (supports 64-bit cluster addresses) |
| Przezroczystość | None |
| Streaming i progresywne ładowanie | High-speed Copy-on-Write random-access block mapping |
Techniczna macierz porównawcza: QCOW2 a konkurencja
| Atrybut techniczny | QCOW2 (Bieżący) | RAW | VHD | VMDK |
|---|---|---|---|---|
| Ekosystem wirtualizacji | KVM / QEMU / Proxmox / OpenStack | Bezpośredni fizyczny / KVM | Microsoft Hyper-V / Azure | VMware ESXi / Workstation |
| Dynamiczne alokowanie (Thin Provisioning) | Natywna alokacja klastrów na żądanie | Brak (pełna alokacja) | Dynamiczna alokacja VHD | Cienka alokacja VMDK |
| Pliki bazowe (CoW) | Pierwszorzędna funkcja natywna | Brak | Dyski różnicowe | Powiązane klony (linked clones) |
| Wewnętrzna kompresja | Natywna zlib i Zstandard (Zstd) | Brak | Brak | Zoptymalizowana kompresja strumienia |
Typowe tryby uszkodzeń i przewodnik odzyskiwania szesnastkowego
Błąd QEMU: „qemu-system-x86_64: qcow2: Image is corrupt: cannot find refcount block".
Główna przyczyna: Nieczyste zamknięcie systemu gospodarza (hosta), które przerwało liczniki odniesień alokacji klastrów.
Odzyskiwanie: Napraw alokacje klastrów za pomocą polecenia „qemu-img check -r all broken.qcow2" lub użyj narzędzia File2File.
Analiza bezpieczeństwa i wektory ataku na parser
Analizatory składni QCOW2 oceniają tablice przesunięć klastrów, gdzie wadliwe odwołania mogą prowadzić do uszkodzenia pamięci hosta w hiperwizorach.
Znane wektory ataku
- Ucieczka z hiperwizora poprzez zapisy klastrów poza granicami bufora w podatnych sterownikach blokowych QEMU.
- Podatności polegające na przekraczaniu ścieżki w odwołaniach do ścieżek plików bazowych.
- Atak typu odmowa usługi (DoS) poprzez cykliczne łańcuchy odwołań do plików bazowych.
Najlepsze praktyki obronne:
Pochodzenie historyczne i kamienie milowe
Główne zalety
- Dynamiczne alokowanie przestrzeni (thin provisioning): zajmuje fizyczne miejsce na dysku tylko dla tych klastrów, do których faktycznie zapisano dane.
- Pliki bazowe Copy-on-Write (CoW): umożliwiają uruchomienie setek maszyn wirtualnych z jednego szablonu bazowego bez powielania pamięci masowej.
- Wewnętrzne migawki: rejestrują stan maszyny wirtualnej w danym punkcie w czasie bez zatrzymywania uruchomionych instancji wirtualnych.
Ograniczenia techniczne i wady
- Nieco większy narzut operacji We/Wy (I/O) w porównaniu do surowych urządzeń blokowych z powodu dwupoziomowego wyszukiwania w tabeli klastrów.
- Potencjalna fragmentacja metadanych po długotrwałych, intensywnych cyklach losowego zapisu.
- Wymaga narzędzia qemu-img lub narzędzi wirtualizacji do inspekcji lub manipulacji poza systemem Linux.
Ciekawe informacje techniczne
- Pierwsze 4 magiczne bajty to 0x51 0x46 0x49 0xFB, co odpowiada ciągowi ASCII „QFI", po którym następuje bajt 0xFB (będący skrótem od „QEMU File Image").
- Format QCOW2 został stworzony przez legendarnego francuskiego programistę Fabrice'a Bellarda, który jest także twórcą projektów FFmpeg, QEMU oraz QuickJS.
- Platformy Proxmox VE i OpenStack używają formatu QCOW2 jako głównego wirtualnego formatu pamięci masowej dla korporacyjnych wdrożeń w chmurze.
Często zadawane pytania techniczne
Czym jest plik QCOW2?
Plik QCOW2 to obraz wirtualnego dysku twardego używany przez oprogramowanie do wirtualizacji systemu Linux, takie jak QEMU i KVM, charakteryzujący się dynamicznym przydzielaniem pamięci (thin provisioning) oraz natychmiastowymi migawkami (snapshots).
Jak mogę przekonwertować QCOW2 na RAW lub VMDK?
Możesz przekonwertować obrazy dysków QCOW2 do formatu RAW, VMDK lub VHD za pomocą File2File.app lub polecenia „qemu-img convert”.
Co oznacza Copy-on-Write?
Copy-on-Write oznacza, że dysk zapisuje wyłącznie zmiany wprowadzone w systemie. Oryginalny obraz bazowy pozostaje nienaruszony, co pozwala setkom maszyn wirtualnych dzielić ten sam szablon bazowy.
Powiązane pary konwersji QCOW2
Konwersja wirtualnych plików dyskowych QEMU QCOW2 do surowego obrazu dysku (RAW) usuwa otokę copy-on-write, zapewniając nieskompresowany dostęp do dysku na poziomie bloków.
Konwersja płaskiego surowego obrazu dysku (Raw) na format QEMU QCOW2 znacznie zmniejsza rozmiar kopii zapasowej, umożliwiając dynamiczny wzrost i inteligentną kompresję.