Omschrijf QemuInstallerenOnderSuSE10.0 hier.
Win98 of win2k installeren onder SuSE 10.0 door middel van qemu
Qemu laat je toe een besturingssysteem te emuleren, onder je hudig besturingsysteem. Met qemu kan je dus een versie van Microsoft Windows draaien onder Linux. Je kan feitelijk alle versies van windows emuleren : windows 95, windows 98, windows millenum, windows 2000, windows 2003 en windows XP
Hieronder ga ik uitleggen hoe je win98 onder SuSE Linux 10.0 aan de praat te krijgen. Wil jj echter een andere versie van windows gebruiken, geen probleem. Verander gewoon win98 door hetgene jij wilt installeren.
Voorbeeld : als ik spreek van win98.img en jij wilt win 2000 installeren, verander dit dan door win2k.img
Een opmerking aangaande XP en 2003.
Deze kan je op dezelfde wijze installeren, doch er schijnen problemen te zijn met de activatie van deze versies.
Aan de slag
Qemu kan je eventueel installeren via yast, maar dit gaan we niet doen. We gaan qemu zelf compileren. Als we dit willen proberen onder onze suse 10.0, ga je van een kale reis thuiskomen. Qemu wil niet compileren met de meegeleverde versie van de gcc compiler. Qemu heeft een gcc compiler nodig kleiner dan 4. Vooraleer we dus qemu kunnen compileren, gaan we eerst een versie van gcc-3.x installeren.
Belangrijk !
Voordat je zelf iets kan compileren op jouw systeem, moeten er een paar devel paketten geïnstaleerd zijn op jouw systeem.
Installeer via yast het pakket gcc gcc-cc+. Als je deze paketten installeert, zal yast auto de andere paketten installeren die nodig zijn om software te compileren op je systeem.
Ik heb zelf de versie 3.3.6 gecompileerd, en er een rpm van gemaakt, die je hier kan downloaden : http://www.essetee.be/downloads/gcc-3.3.6-1.i386.rpm
Als je deze rpm wilt installeren, ga je een fout krijgen. Aangezien je nu al een compiler hebt op je systeem ( versie 4.x weigert suse om een lagere versie te installeren. Daarom is het nodig om als root de rpm te installeren met het volgende commando :
rpm -i gcc-3.3.6-1.i386.rpm --force
Na de installatie van deze rpm, ga je de gcc-3.3 compiler terugvinden in /opt/gcc3/bin
De volgende stap. Download de 2 volgende bestanden :
Plaats deze 2 bestanden in dezelfde map. We gaan nu eerst het eerste bestand uitpakken met het commando :
tar xzvf qemu-0.8.0.tar.gz [enter]
Wat dan een map oplevert qemu-0.8.0
Vervolgens geven we het commando :
cd qemu-0.8.0 [enter]
We zitten dus nu in de map qemu-0.8.0, waarin we het volgende commando geven :
tar xzvf ../kqemu-0.7.2.tar.gz [enter]
Dit commando zorgt ervoor dat het bestand kqemu-0.7.2.tar.gz uitgepakt wordt in de map waarin wij ons nu bevinden. De ../ voor de naam van bestand, wil zeggen, dat het bestand juist een map hoger staat. Daarom dat ik vooraf gezegd heb, zorg dat de 2 bestanden in dezelfde map staan, anders ga je nu een fout krijgen dat hij het bestand niet kan vinden.
Met het commando : ls [enter] zie je de inhoud je huidige map, en als alles goed is verlopen zie je daar dan ook een map met de naam kqemu.
Nu wordt het dus tijd om onze qemu te compileren.
Nog steeds in de map qemu-0.8.0 geven we het volgende commando :
./configure --prefix=/usr/local --cc=/opt/gcc33/bin/gcc-3.3 --enable-adlib --target-list="i386-user arm-user armeb-user sparc-user ppc-user i386-softmmu ppc-softmmu sparc-softmmu x86_64-softmmu mips-softmmu" [enter]
Als configure zijn werk heeft gedaan, geven we dan het volgende commando :
make [enter]
En als make gedaan heeft, is het nu tijd om alles te installeren. Voor het volgende commando moet je root zijn ! Indien je nu geen root bent, geef dan het commando : su [enter] waarna je het root paswoord moet ingeven. als root geef je dan het commando : make install [enter]
Als het make install zijn commando gedaan heeft, moeten we nu nog een paar commando's uitvoeren als root.
modprobe kqemu major=0 [enter]
Dit zorgt ervoor dat de kernelmodule kqemu wordt geladen. Om te testen of dat ook zo is :
lsmod | grep kqemu [enter]
Wat het volgende oplevert :
kqemu 40840 0
Vervolgens geven we de volgende commando's :
mknod /dev/kqemu c 250 0 [enter] chmod 666 /dev/kqemu [enter] chown jouw_usernaam:root /dev/kqemu [enter]
Mijn usernaam op mijn suse is serge, dus ik doe chown serge:root /dev/kqemu
Maak nu met een editor de volgende file aan : 48-qemu.rules
In die file plaatsen we het volgende :
KERNEL="kqemu*", NAME="%k", GROUP="audio", MODE="0666"
En sla de file op. Vervolgens kopieer je deze file naar /etc/udev/rules.d
Zo, onze qemu en kqemu staan op ons systeem. We gaan er nu voor zorgen dat de module kqemu wordt geladen als we ons systeem opstarten.
Open yast2 en kies voor Systeem. Klik dan op Editor voor /etc/sysconfig bestanden. Kies vervolgens Systeem->Kernel en klik op MODULES_LOADED_ON_BOOT. In het rechtse venster vul je dan in kqemu snd-pcm-oss snd-mixer-oss, en je slaat de configuratie op.
Als root geef je nu het volgende commando :
modprobe snd-pcm-oss [enter] modprobe snd-mixer-oss [enter]
Zo, het moeilijkste gedeelte zit erop
Een versie van windows installeren
Het eerste wat we nu moeten doen, is een partitie aanmaken waarop we windows gaan installeren.
Je moet nu geen root meer zijn, we gaan nu alles doen als de normale user op jouw systeem.
Maak nu eerst een map aan in je home dir met de naam images.
We gaan vervolgens in deze map gaan staan ( cd images [enter]) en we geven het volgende commando :
qemu-img create win98.img 5GB [enter]
Met dit commando maken we een partitie aan van 5 GB. Je kan deze grootte natuurlijk aanpassen naar jouw behoefte.
Plaats nu de win98 cdrom in de cd drive en, als deze gemount is, geef dan het volgende commando :
qemu -m 256 -localtime -cdrom /dev/cdrom -boot d /home/jouw_usernaam/images/win98.img
De optie -m 256 vertelt hoeveel geheugen je gaat gebruiken voor je virtuele machine. Gebruik minstens 64 MB ( 128 MB aangeraden
Terug hier jouw_usernaam veranderen door je eigen usernaam !
Na dit commando wordt de win98 cdrom geboot, en begint de install van win98. Kies voor opstarten vanaf cdrom, en druk op enter om windows te installeren. Nu ga je een melding krijgen of windows de partitie moet klaarmaken om het te kunnen gebruiken. Ja antwoorden, en win98 zal terug herbooten. Kies terug om te booten vanaf cdrom, en nu kan je windows 98 installeren zoals je dat vroeger gewoon was.
Na de installatie gaan we nu nog eerst iets veranderen. Open als root de file /etc/fstab en voeg het volgende toe :
/home/serge/images/win98.img /mnt/windows vfat rw,users,loop,uid=serge,gid=users,noauto,offset=32256,umask=000 0 0
Alles op één lijntje en vervang hier serge door jullie gebruikersnaam.
Vervolgens geven we als root het volgende commando : mkdir /mnt/windows [enter]
En nu als user geven we het commando : mount /mnt/windows [enter]
Als je nu gaat kijken naar /mnt/windows, ga je daar de windows bestanden zien staan. Dat is dus je c: schijf onder windows.
Als we windows 98 willen opstarten willen we natuurlijk ook geluid hebben. Download nu de 2 volgende bestanden in de /mnt/windows directory :
Ga nu naar de map /mnt/windows en geef het commando : bunzip2 powerarchiver61.exe.bz2 [enter]
Geef nu het commando : cd [enter] en je bent terug in je eigen home dir.
Nu wordt het tijd om onze eerste sessie van windows 98 op te starten. Dit doen we met het commando :
qemu -m 256 -soundhw all -localtime images/win98.img [enter]
Nadat windows is opgestart, ga naar je c: schijf en installeer powerarchiver. Nadat deze applicatie geï&nstalleerd is, kan je nu het bestand Ensoniq.zip uitpakken. Dit levert je een map op ensoniq op, met daarin terug een map met de naam Pci_1370. Ga in die map en run het setup bestand. Dit zorgt ervoor dat de juiste drivers geïnstalleerd worden voor de geluidskaart.
Na de reboot gaat je windows 98 geluid produceren.
Zo, je hebt nu gratis windows 98 op je PC zonder dat je gebruik moet maken van software zoals vmware of win4lin.
Je kan u natuurlijk ook naast win98 win2k installeren of een andere versie. Je start dan qemu op met de win2k.img zoals je de win98 opstart.
Dit werkt hier allemaal probleemloos op mijn computer, graag wat feedback als het bij jullie niet werkt, of indien je iets onduidelijk vindt in deze uitleg.
Als je de computer reboot dan verdwijnt ook de kqemu node in de /dev directory. Dus de volgende keer dat je qemu start, is de kqmenu accelerator niet meer beschikbaar. Ik heb dat opgelost door in de file /etc/boot.local het volgende toe te voegen :
# Start Qemu met de KQemu accelerator mknod /dev/kqemu c 250 0 # De KQEMU device aanmaken chmod 666 /dev/kqemu # Toegangkelijk maken voor alle gebruikers
Bij een volgende reboot zorgt dit ervoor dat de kqemu node wordt aangemaakt samen met de juiste permissies.
Nadat qemu opgestart is en windows 98 actief is, dan kreeg ik geen toegang tot mijn cdrom. Lastig als je iets wilt installeren vanaf cdrom. De oplossing is feitelijk simpel. Verander de opdracht om qemu te starten door :
qemu -m 256 -soundhw all -localtime -cdrom /dev/cdrom images/win98.img [enter]
Als je ook een floppy wenst te gebruiken :
qemu -m 256 -soundhw all -localtime -cdrom /dev/cdrom -floppy /dev/fd0 images/win98.img [enter]
Op mijn laptop hier gebruikt windows 98 nogal wat cpu. Na wat rondzoeken op het net kwam ik te weten dat dit een bug is in win98. Om dat op te lossen, download hier http://www.essetee.be/downloads/amnhltm.zip
Sla deze file op in je /mnt/windows map. Start vervolgens qemu op, en onder windows unzip je de file in je c: map. Open vervolgens een dos prompt, tik in de dosprompt cd .. [enter] zodat je op je c: komt en tik dan in amnhlt [enter]. Je gaat een popup krijgen of je het register wilt aanpassen. Ja antwoorden, en de virtuele machine herbooten.
Tip : als je KDE of gnome draait, vragen deze windowmanagers al veel resources van je systeem. Als je nu twm gebruikt als windowmanager, en je start qemu op, gaat dat al heel wat vlotter gaan. Meer nog, als windows 98 is opgestart en je drukt op ctrl+alt+f, dan is het of je echt op een real windows systeem werkt
Hosted by http://qemu-buch.de