Portál AbcLinuxu, 6. května 2025 06:06

Dotaz: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny

vandrovnik avatar 8.12.2020 15:02 vandrovnik | skóre: 21
Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Přečteno: 774×
Odpovědět | Admin
Dobrý den,

ve škole na (starém) hostiteli s Centos 5.11 máme virtualizovaný počítač s Windows XP, kde běží kdysi zakoupená služba pro obsluhu tiskáren, skenerů a kopírek. Je tam qemu-kvm.

Když ten virtuál přesuneme na jiný počítač (Centos 7), služba uvnitř Windows XP hlásí, že došlo ke změně hardware a vyžaduje novou aktivaci (za což si dodavatel chce naúčtovat něco kolem 10 tisíc...).

Dá se nějak docílit toho, aby uvnitř virtuálu nebylo možné poznat, že došlo k přesunu? Nový hostitel má jiné CPU a pokud tam virtualizační nástroj podstrčí i nějaký BIOS, tak teoreticky si ona služba může třeba porovnávat kontrolní součet BIOSu nebo něco podobného. Dopídit se toho, co přesně služba kontroluje, se nám bohužel nepodařilo...

Díky, K.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

8.12.2020 15:41 bigBRAMBOR | skóre: 37
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Odpovědět | | Sbalit | Link | Blokovat | Admin
export nastaveni toho VM do XML(virsh?) a vytvoreni na novem loadnim toho XML? Pak by melo byt vsechno stejne, ne?
8.12.2020 17:11 PetebLazar | skóre: 34 | blog: l_eonardovo_odhodlani
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Pokud bylo na stávajícím serveru v .xml konfiguraci CPU "Host passthrough" tak se GuestOS dozvěděl o fyzickém CPU (model/vlastnosti). Pokud se tato konfigurace přenese na jiný HW (předpokládán se zcela jiným CPU) z pohledu XP (programu) půjde o změnu. Pokud by měli CPU "Named model" pak by se to asi jevilo (modelově) stejně (otázkou je, podle čeho přesně změnu HW program detekuje). https://www.qemu.org/docs/master/system/qemu-cpu-models.html
vandrovnik avatar 8.12.2020 22:33 vandrovnik | skóre: 21
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
XML jsem zkopíroval, takže vše, co bylo v něm, stejné zůstalo (měnila se snad jen cesta, kde je uložený obraz disku). CPU tam výslovně nastavené nebylo, vlastně jediné, co je nastaveno ohledně procesoru, je <vcpu>2</vcpu>.
Jendа avatar 8.12.2020 18:59 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Odpovědět | | Sbalit | Link | Blokovat | Admin
A command-line parametry qemu jsou stejné?

Moje qemu defaultně zdá se nefejkuje cpuid, ale mělo by to jít nějak nastavit, snad.

Dále bych nabootoval Linux a spouštěl lshw a porovnával.

Podaří se ti zkompilovat to staré qemu na novém počítači a zkusit to s tím?
vandrovnik avatar 8.12.2020 22:38 vandrovnik | skóre: 21
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Díky za ten tip s linuxem, zkusím to v kombinaci s výše uvedeným odkazem na qemu-cpu-models a pokusím se nějak vynutit, aby si host myslel, že má stejný procesor, jako byl ten původní.
9.12.2020 18:20 j
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Hele tohle je spis fabulace, protoze to neznam do detailu, ale neni nahodou prave kombinace qemu-kvm o tom, ze ten virtual vidi na fyzicky CPU? A tudiz je to vykonejsi, nez samotny qemu, ktery ten CPU emuluje? Jinak receno, musel by terminovat KVMko a "vyrobit" virtualni CPU v qemu, ktery by se tvarilo jako ten puvodni, fyzicky? A kdovi jestli jen CPU.

BTW:(2vandrovnik): Pochlub se, co je to za milou firmu nebo krasnej SW? At si vemem ponauceni a nikdy jim neposlem ani cent.

Pokud se oprostis od svyho reseni, tak pokud si dobre pamatuju, vmware convertor umel vzit stroj, a vyrobit z nej virtual se "stejnym" HW. Parkrat sem to prave z podobnych duvodu pouzil. Ale uz pekne dlouho mi "do baraku" nesmi nic, co chce jakykoli podobny cypoviny.

Treti moznost kterou mas je to proste crackout, potazmo si to nekde crackly sosnout. Naprosto legalni, podotykam.

---

Dete s tim guuglem dopice!
vandrovnik avatar 9.12.2020 19:31 vandrovnik | skóre: 21
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Je to MyQ, je ke dvěma poměrně starým barevným A3 multifunkcím od Kyocery a je tam především proto, aby se studenti mohli čipem přihlásit ke kopírce a poznalo se, komu kopírování naúčtovat. Ty multifunkce se nejspíš za pár let stejně vyřadí, ale kdyby tam kvůli nim nemusel strašit starý server, na kterém ten virtuál běží, byli bychom rádi. Pokud by pro tenhle virtuál poklesl výkon, bylo by to nejspíš jedno, všechno ostatní se dá dát jinam.
9.12.2020 22:50 bigBRAMBOR | skóre: 37
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Na strankach jsem nasel ze bys mel mit narok na dve reaktovace po preusnu vm na jiny hw zdarma, nevypada to, s ohledem na to jak stare to mate ze byste nejak cato presouvali.
vandrovnik avatar 9.12.2020 22:54 vandrovnik | skóre: 21
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Možná to je jen po dobu, kdy se platí průběžná údržba (což se tady už pár let neplatí) - kolega s nimi jednal a nepochodil.
9.12.2020 23:41 bigBRAMBOR | skóre: 37
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Neni ta castka vlastne cena doplatek za maintanance kterou jste neplatili?
vandrovnik avatar 10.12.2020 09:43 vandrovnik | skóre: 21
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Pravděpodobně ano (maintanance jsme nepotřebovali, protože se kdysi koupily tyhle dvě multifunkce, ke kterým MyQ bylo nutné, jinak se všemi ostatními tiskárnami se bez MyQ obejdeme, práva k tisku i účtování řešíme přes Novell).
9.12.2020 23:51 lertimir | skóre: 64 | blog: Par_slov
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Jen tak mimochodem, proč přecházíte od Kyocery? Mě na dlouhodobý tisk připadají velmi dobré, dražší stroje a velmi levný provoz. A na tom jejich MyQ je možné provozovat i MFT jiných výrobců.
vandrovnik avatar 10.12.2020 09:23 vandrovnik | skóre: 21
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Já mám jejich tiskárny rád a používám je všude, kde mám nějaké tiskárny řešit (slušná cena, nízké náklady na tisk, dlouhá životnost - máme tam tiskárnu, co má přes milion stránek, ovladače bez problémů instalovatelné přes Novell a celkově ty ovladače jsou už dost let bez potíží), ale tyhle dvě staré multifunkce jsou problémové, podání barev je mizerné a i když je pánové ze servisu nakalibrují, po pár týdnech se barvy zase záhadně rozjedou. Po těch letech asi už mají i nárok, i když zrovna tyhle trochu zlobily od začátku.
Jendа avatar 9.12.2020 22:57 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Hele tohle je spis fabulace, protoze to neznam do detailu, ale neni nahodou prave kombinace qemu-kvm o tom, ze ten virtual vidi na fyzicky CPU? A tudiz je to vykonejsi, nez samotny qemu, ktery ten CPU emuluje? Jinak receno, musel by terminovat KVMko a "vyrobit" virtualni CPU v qemu, ktery by se tvarilo jako ten puvodni, fyzicky? A kdovi jestli jen CPU.
CPUID se dá trapovat. Ještě by asi musel třeba vypnout AVX, protože ten software může teoreticky zkoušet použít instrukce a čekat, jestli dostane chybu. Ale to bych neviděl jako moc pravděpodobné.
9.12.2020 18:44 Tonda Panenka
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Odpovědět | | Sbalit | Link | Blokovat | Admin
Dá se nějak docílit toho, aby uvnitř virtuálu nebylo možné poznat, že došlo k přesunu?
Logicky vždy platilo že se musí stávající deaktivovat a teprve pak ji aktivovat jinde pokud nejde o OEM, druhá věc je jestli to MS ještě dělá u OS s ukončenou podporou.

Pokud tohle chceš obejít v podstatě je to porušení licence.
vandrovnik avatar 9.12.2020 19:21 vandrovnik | skóre: 21
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
O Windows XP nejde, ty fungují v pohodě i po tom přenesení (na prvním serveru virtuál vypnu, přenesu ho na nový server, tam ho stejným konfiguračním XML vytvořím a zapnu). Potíž dělá jen jedna služba, která tam běží, ta si všimne, že se něco (asi CPU) změnilo, a vyžaduje novou aktivaci, což bohužel dodavatel chce zaplatit.
9.12.2020 19:53 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ono to nemusí byť zmena CPU, môže to byť aj nejaký iný text v BIOSe, alebo iný typ HW (Motherboard zmenený z napríklad i440FX na niečo iné, či omylom povolená inštrukcia vracajúca výrobné číslo CPU). Ja to skôr typujem na inú implementáciu virtualizovaného BIOSu. Nedal by sa ten Legacy SeaBIOS podhodiť zo starého servera na nový?
vandrovnik avatar 9.12.2020 20:27 vandrovnik | skóre: 21
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Možná dal, ale nevím jak, zatím jsem ve stádiu, že zkouším posbírat tipy :)
9.12.2020 20:41 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Od roku 2007, kedy vyšiel CentOS 5, sa zmenili implementácie otvorených biosov. Otázkou je či to aj pomôže, a čo bolo na tom prastarom stroji použité. A tak isto aj či to zoberie novší KVM, i keď by mal.
9.12.2020 21:23 MarV | skóre: 11
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Odpovědět | | Sbalit | Link | Blokovat | Admin
Asi se námaha za 10k nevyplatí, ale pokud jde výzvu/princip/nudu ...

Není-li známo, jaké změny aktivace překousne, tak bych začal z druhého konce. Na starém stroji bych postupně měnil konfiguraci qemu-kvm a sledoval, zda změna projde či ne (RAM, CPU, chipset, ...?). Jako druhý stupeň bych na starém HW rozjel Centos7 a na něm pustil starý virtuál. Potom bych se teprve snažil o přechod na nový HW i SW, když se to bude zdát reálné.
9.12.2020 22:45 bigBRAMBOR | skóre: 37
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Nez si to rozvrta zjistil bych zda kopie vm na tom samem hw pojede v poradku, a ano pak bych chtelo zkusit tohle menit a zjistit na co to reaguje.
Jendа avatar 9.12.2020 23:00 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Eh, tak to by bylo hodně hardcore, kdyby nejela…
9.12.2020 23:47 bigBRAMBOR | skóre: 37
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
a ty vis jak dela kopii toho vm, jeho prenos? Treba neco koni hned tady.
vandrovnik avatar 10.12.2020 09:25 vandrovnik | skóre: 21
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Samozřejmě, že se vrtám jen v kopii :-)
10.12.2020 07:23 MarV | skóre: 11
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
No klon/snapshot či jiný typ zálohy jsem předpokládal jako samozřejmost :-)
12.12.2020 13:19 LarryL | skóre: 27
Rozbalit Rozbalit vše Re: Přesun virtuálního PC na jiného hostitele, aby si host nevšiml změny
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pokud to ještě nemáš pořešené, tak bych postupoval takto:

CPU:

Pokud říkáš, že v XML není definován CPU, tak příkazem sudo virsh qemu-monitor-command <jméno_vm> --hmp "info qom-tree" | grep cpu zjistíš jaký cpu se používá na staré VM (na Centos 5.11) a ten nadefinuj do XML, aby se používal i na nové VM (na Centos 7).

Typ stroje - verze Qemu:

Zkontroluj jestli v XML máš uveden "type machine", něco jako:
<os>
    <type arch="x86_64" machine="pc-i440fx-4.1">hvm</type>
Bios:

Předpoládám, že je použit typ stroje i440fx, takže se používá Seabios. U mě je uložen zde: /usr/share/qemu/bios.bin . Můžeš ho zkusit zkopírovat ze starého Centos do nového.

uuid:

Zkontroluj jestli v XML máš pořád zachováno stejné číslo v <uuid>. Jestli se ti třeba na novém stroji nenahradilo novým číslem.

Pokud nic z toho nepomůže, tak můžeš příkazem sudo virsh qemu-monitor-command <jméno_vm> --hmp "info qom-tree" nebo sudo virsh qemu-monitor-command <jméno_vm> --hmp "info qtree" vypsat celý strom virtuálního HW na novém i starém stroji a porovnat je mezi sebou, abys viděl co se změnilo.

Doufám, že v tom XML máš nadefinované PCI adresy, něco jako <address type="pci" domain="0x0000" bus="0x00" slot="0x03" function="0x0"/>. Pokud jsi XML vytvářel v libvirtu, tak by to mělo být OK, protože libvirt to dělá automaticky při vytváření nové VM.

SMBIOS:

Ještě mě napadá ve WinXP vypsat údaje co poskytuje BIOS (na linux viz dmidecode, u WinXP bys musel najit obdobý nástroj) a zase je porovnat na starém a novém stroji. Je možnost na starém WinXP údaje dumpnout a podstrčit je WinXP na Centos 7 pomocí parametru -smbios file=./dmi.bin

Zanořená virtualizace:

Je taky varianta se na výše uvedené vyprdnout a zkusit WinXP jako zanořenou virtualizaci - udělat ze starého Centos 5.11 virtuálku a tu přenést na Centos 7. Uvnitř virtuálky Centos 5.11 by byla další virtuálka s WinXP.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.