Вот как я запускаю минимальную версию CentOS 7 на 64-битной Windows 7 Enterprise, не входя в группу администраторов (не администратор).
Основная идея:
- Скачайте qemu для windows и разархивируйте его где угодно
- Загрузите ISO-образ дистрибутива Linux, который вы хотите запустить
- Создайте файл, который будет вашим жестким диском виртуальной машины
- Запустите qemu, загрузившись с образа CD
- Установить ОС
- Перезагрузите виртуальную машину, на этот раз без образа компакт-диска
Сеть и модная графика трудно понять правильно. Все еще борется, на самом деле ...
1. Скачать QEMU
Используйте предварительно скомпилированный двоичный файл, найденный на странице ссылок QEMU. Я использовал версию 2.8.0 для этого.
Чтобы "установить" эту версию без прав администратора, откройте командную строку, введите набор команд set __COMPAT_LAYER=RunAsInvoker
и запустите qemu-w64-setup-20170131.exe
из этой подсказки. Установите в папку, где у вас есть права на запись, например, "Мои документы" или что-то в этом роде.
2. Загрузить ISO-образ Linux
Снова, помогите себе. Я использовал минимальный дистрибутив CentOS 7, файл называется CentOS-7-x86_64-Minimal-1611.iso
.
3. Создать виртуальный жесткий диск
Я использовал командный файл для этого. Скопируйте следующее в файл с именем createvm.bat
и настройте переменные в соответствии с вашей средой:
@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. Запустите QEMU, загрузившись с виртуального CD
Используйте пакет для этого, как вы могли бы использовать его часто. Скопируйте следующий файл в 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. Установить ОС
У меня были проблемы с установщиком графического интерфейса. Когда будет предложено установить CentOS, нажмите клавишу TAB и замените слово quiet
в конце этой строки словом text
.
Следуйте инструкциям по установке на экране. После завершения установки виртуальная машина завершит работу. Это может занять некоторое время, особенно если вы работаете как пользователь без прав администратора.
6. Запустите свой образ Linux в QEMU
Этот шаг - то, что вы будете делать снова и снова, чтобы запускать виртуальную машину каждый раз, когда вам это нужно. Скопируйте следующий файл в 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
Я добавил локальный portforward: если вы используете ssh/putty для localhost: 2222, вы достигнете демона SSH вашей виртуальной машины. Помните, что firewalld
или iptables
могут блокировать трафик в зависимости от того, как вы установили Linux.