Если за Вами следят...

Oct 31, 2024 15:51

Сегодня я хочу рассказать о своём небольшом опыте работы с виртуальными машинами.
В новостях то и дело проскальзывают новости, что очередное обновление Винды сломало что-то внутри себя и перестали печатать принтеры, скорость скачивания по SMB стали резать, отвалилось что-то иное. А эти обновления сваливаются на головы простых пользователей внезапно и бескомпромиссно. Уж сколько было историй в интернете, когда винда начинала принудительно обновляться во время презентаций и вообще не вовремя. Можно ли себя обезопасить от такого? Можно, если засунуть винду в виртуалку и обрубить ей сеть или так настроить файрвол, чтобы он пускал винду только туда, куда можно. Второй случай подходит для серьёзных фирм, где внимательно следят за ситуацией в мире и отсекают вредные сайты. А вот первый вариант вполне себе подойдёт тем, кто работает в программах, которые не требуют подключения к сети. Вот про этот вариант я и расскажу.

И так, у нас есть потребность работать в программе под винду без обязательного подключения к интернету. Такая потребность может возникнуть, если программа очень древняя, работает только под старыми версиями ОС, а железо уже дышит на ладан. Ну или программа активно «стучит» куда не надо, если видит сеть, а от этого надо избавиться.

Что нам надо.
1. Не дохлый компьютер. Так как у нас будут одновременно крутиться 2 операционки со своими приложениями, то нужен нормальный процессор (от 8 ядер), много памяти (от 16 гигабайт) и большой диск. Самому линуксу много не требуется. Он вполне нормально может жить даже на 2-х ядерном процессоре и 4-х гигабайтах памяти. А если поставить SSD, то будет шустрить только в путь. Но много приложений не загрузишь. Тут нужно выбирать будет: либо онлайн видео, либо почта и Телеграм, либо что-то ещё. Но не одновременно, если ненужны тормоза. Так что в железо лучше вложиться.
2. Дистрибутив на базе ядра линукс (можно смело брать отечественный в рамках импортозамещения, там всё есть). Образ нужной винды и ещё пара сторонних драйверов.

С установкой линукса сейчас проблем нет, если это не дистрибутив для гиков. А так как речь идёт про российские дистрибутивы, то с установкой справится любой более-менее грамотный пользователь. Несколько раз нажать «Далее» да выбрать свой регион. Затем нужно установить и настроить виртуальную машину (ВМ). Я настроил себе ВМ на базе QEMU/KVM. Ничего сложного, есть куча сайтов, где описывается этот процесс. Например на сайте ROSA: wiki.rosalab.ru/ru/index.php/Работа_с_QEMU_и_KVM или Alt: https://www.altlinux.org/Libvirt_(Qemu%2BKVM%2BVirt-manager). А установив virt-manager не придётся ничего делать в командной строке. Именно им и будем пользоваться.

Запускаем «Менеджер виртуальных машин». Выбираем создание новой ВМ из локального ISO (чаще всего образы операционных систем именно в таком виде распространяются). Указываем файл образа. Сколько памяти и сколько ядер процессора выделим для ВМ.


Потом размер дискового пространства, в котором и будет жить ВМ. Тут надо сразу хорошо подумать о том, сколько гигабайт выделить для винды и того приложения, которое будет в ней работать. Ниже я расскажу как подключить дисковое пространство, где установлен линукс, но первоначальное пространство лучше не зажимать.

У нас всё практически готово, но перед установкой поставьте галочку напротив «Проверить конфигурацию перед установкой».


Откроется окно с настройками железа нашей ВМ.


Нам надо сделать две вещи: 1. В разделе «Память» поставить галочку в боксе «Enable shared memory». 2. Удалить сеть совсем.
При установке винды она не сможет скачать обновления и подключиться к своим сервисам и настучать о том, что у нас тут новая установка. Это именно то, чего мы добиваемся.




Можно запускать установку операционки. Там разметите диск, введёте ключ, создадите пользователя. И прочее, прочее. Обычная установка. Если виртуалка раскрылась на весь экран, и не знаете как свернуть-переключиться, то надо навести мышку посередине верхнего края экрана. Появится вот такой значок.


А пока всё это устанавливается, нам надо на сменный носитель (флешка или внешний диск) записать пару нужных драйверов.
1. WinFSP: https://github.com/winfsp/winfsp/releases/
2. virtio-win-guest-tools: https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/


Когда винда установится и перезагрузится, можно смело воткнуть флешку в компьютер. Она должна опознаться виндой.
Установим WinFSP. Во время установки необходимо и достаточно выбрать Core.


Далее Virtio.


Тут нужно перезагрузиться. Но мы выключим ВМ, потому что нам надо теперь и её донастроить.

В настройках ВМ нажимаем «Добавить оборудование» и выбираем из списка «Файловая система» и выбираем путь к папке и её название. Это будет общая папка для хоста (линукс) и гостя (винда). И её имя тоже задаём. У меня это просто «share».


Запускаем винду. После запуска нам нужно пойти в «Управление компьютером» (Device manager).




Надо убедиться, что драйвер установлен, подписан и работает. Думаю с этим проблем нет.

Теперь запускаем «Службы» (Services) и ищем VirtIO-FS Service.


Эту службу надо запустить. А можно (нужно!) выставить в её настройках, чтобы она автоматически запускалась вместо в ОС.

Запускаем «Проводник» и обнаруживаем диск Z со знакомым названием «share».


Готово. У нас есть папка в линуксе и диск в винде, которые являются общими для обеих систем. Можно обмениваться файлами из линуска, который подключен к сети и интернету, и винды, которая сеть в упор не видит, так как нет никакой сетевой карты.

Что ещё не пробовал, но надо будет проверить:
1. Подцепить в линуксе облачное хранилище как диск и подсунуть этот диск винде. Получится, что винда сможет брать и класть файлы прямо в облако. Ну или не получится.

Ссылки
1. https://www.debugpoint.com/kvm-share-folder-windows-guest/

линукс, linux

Previous post Next post
Up