Ecco come eseguo una versione minima di CentOS 7 su Windows 7 Enterprise, 64 bit, senza essere un membro del gruppo di amministratori (non amministratore).
L'idea di base è:
- Scarica qemu per Windows e decomprimilo ovunque
- Scarica un'immagine ISO della distribuzione Linux che desideri eseguire
- Crea un file che sarà il disco rigido della tua macchina virtuale
- Esegui qemu, avviando dall'immagine del CD
- Installa il sistema operativo
- Riavvia la macchina virtuale, questa volta senza l'immagine del CD
Il networking e la grafica di fantasia sono difficili da ottenere correttamente. Ancora in difficoltà, in realtà...
1. Scarica QEMU
Utilizzare un file binario precompilato trovato nella pagina dei collegamenti di QEMU. Ho usato la versione 2.8.0 per questo.
Per "installare" questa versione come utente non amministratore, apri un prompt dei comandi, esegui il comando set __COMPAT_LAYER=RunAsInvoker
ed esegui qemu-w64-setup-20170131.exe
da quel sollecito. Installa in una cartella in cui hai i permessi di scrittura, come "Documenti" o qualcosa del genere.
2. Scarica un'immagine ISO di Linux
Ancora una volta, aiutati. Ho usato la distribuzione Minimal di CentOS 7, il file si chiama CentOS-7-x86_64-Minimal-1611.iso
.
3. Crea un disco rigido virtuale
Ho usato un file batch per questo. Copia quanto segue in un file chiamato createvm.bat
e regola le variabili per adattarle al tuo ambiente:
@echo off
rem ==================================
rem Replace with your values
rem ==================================
set "QEMUDIR=%USERPROFILE%\Documents\Warez\qemu-2.8.0-win64"
rem ==================================
rem Safety net
rem ==================================
if not exist hda.img (
rem CREATE a virtual hard disk
%QEMUDIR%\qemu-img.exe create hda.img 40G
) else (
echo file hda.img already exist. Delete or move and try again.
goto:eof
)
4. Esegui QEMU, avviando dal CD virtuale
Usa un batch per questo, poiché potresti usarlo spesso. Copia quanto segue in installvm.bat
:
@echo off
rem ==================================
rem Replace with your values
rem ==================================
set "QEMUDIR=%USERPROFILE%\Documents\Warez\qemu-2.8.0-win64"
set "ISOFILE=CentOS-7-x86_64-Minimal-1611.iso"
rem ==================================
rem You can add a w suffix to this if
rem you don't want a console
rem ==================================
set "QEMUBIN=qemu-system-x86_64.exe"
rem ==================================
rem Run the virtual machine
rem ==================================
start "QEMU" %QEMUDIR%\%QEMUBIN% -drive file=hda.img,index=0,media=disk,format=raw -cdrom %ISOFILE% -m 2G -L Bios -usbdevice mouse -usbdevice keyboard -boot menu=on -rtc base=localtime,clock=host -parallel none -serial none -name centos -no-acpi -no-hpet -no-reboot
5. Installa il sistema operativo
Ho avuto problemi con il programma di installazione della GUI. Quando ti viene chiesto di installare CentOS, premi TAB chiave e sostituire la parola quiet
alla fine di quella riga con la parola text
.
Seguire le istruzioni di installazione sullo schermo. Al termine dell'installazione, la macchina virtuale verrà chiusa. Potrebbe volerci un po' di tempo, soprattutto se eseguito come utente non amministratore.
6. Esegui la tua immagine Linux in QEMU
Questo passaggio è ciò che farai più e più volte per eseguire la VM ogni volta che ne avrai bisogno. Copia quanto segue in runvm.bat
:
@echo off
rem ==================================
rem Replace with your values
rem ==================================
set "QEMUDIR=%USERPROFILE%\Documents\Warez\qemu-2.8.0-win64"
rem ==================================
rem You can add a w suffix to this if
rem you don't want a console
rem ==================================
set "QEMUBIN=qemu-system-x86_64.exe"
rem ==================================
rem Run the virtual machine
rem ==================================
start "QEMU" %QEMUDIR%\%QEMUBIN% -drive file=hda.img,index=0,media=disk,format=raw -m 2G -L Bios -usbdevice mouse -usbdevice keyboard -boot menu=on -rtc base=localtime,clock=host -parallel none -serial none -name centos -no-acpi -no-hpet -no-reboot -device e1000,netdev=user.0 -netdev user,id=user.0,hostfwd=tcp::2222-:22
Ho aggiunto un portforward locale:se esegui ssh/putty su localhost:2222, raggiungerai il demone SSH della tua VM. Attenzione che firewalld
o iptables
potrebbe bloccare il traffico, a seconda del modo in cui hai installato Linux.
Il manuale di Qemu sarebbe un buon punto di partenza. Ti aiuterà a capire cosa dovresti fare dopo, ovvero dire a qemu cosa fare ed esattamente come farlo.