NitroPC Pro 2 с внешним графическим процессором#

Примечание

Это руководство работает только в том случае, если вы используете образ GPU Qubes OS OEM от Nitrokey, который вы можете собрать здесь.

Это руководство объясняет, как использовать NitroPC с внешней графической картой (GPU) с Qubes OS.

Предупреждение

Следование этому руководству может создать некоторые проблемы с безопасностью в Qubes OS. Следуйте ему на свой страх и риск.

Создание куба Windows#

Примечание

Это позволит установить Windows Qube из официального пробного ISO. Если вы хотите получить полноценную Windows, вам нужно будет добавить лицензионный ключ.

В этой части используется проект ElliotKillick.

  1. Откройте терминал в dom0 и убедитесь, что у вас подключен интернет.

  2. Установите Qubes Windows Tools, в dom0 : sudo qubes-dom0-update qubes-windows-tools-4.1.69, когда появится запрос, нажмите y и введите.

Примечание

Пожалуйста, ознакомьтесь с последствиями для безопасности установки QWT.

  1. Сделайте скрипт установки исполняемым, в dom0 : sudo chmod +x /install.sh.

  2. Запустите сценарий установки, в dom0 : /install.sh.

Если вы увидите это сообщение : [+] Installation complete!, то можете продолжать.

На этом этапе сценарий создал новый Qube под названием windows-mgmt. Теперь мы загрузим ISO для создания Windows Qube.

Для этого нам нужно скопировать скрипт ~/qvm-create-windows-qube/windows/isos/mido.sh из куба windows-mgmt в одноразовый куб с подключением к интернету.

  1. Заведите новый DVM (одноразовый) Qube и выделите ему не менее 10 ГБ личного хранилища.

  2. Запустите windows-mgmt Qube и скопируйте скрипт, в windows-mgmt Qube : qvm-copy qvm-create-windows-qube/windows/isos/mido.sh затем выберите DVM Qube (dispXXXX).

  3. После копирования скрипта запустите его, в dispXXX : ./QubesIncoming/windows-mgmt/mido.sh win10x64

Примечание

В этом руководстве мы устанавливаем Windows 10, но доступны и другие версии Windows, которые можно перечислить с помощью ./QubesIncoming/windows-mgmt/mido.sh.

  1. Если вы получите сообщение об успехе, то вам нужно будет скопировать загруженный ISO с DVM на windows-mgmt Qube, в dispXXXX : qvm-copy QubesIncoming/windows-mgmt/win10x64.iso и выбрать windows-mgmt Qube.

После копирования вы можете закрыть DVM Qube.

  1. В windows-mgmt Qube : mv QubesIncoming/dispXXXX/win10x64.iso qvm-create-windows-qube/windows/isos/ (замените «dispXXXX» на имя созданного вами одноразового Qube).

  2. Тогда в dom0 : qvm-create-windows-qube -n sys-firewall -oy -i win10x64.iso -a win10x64-pro.xml work-win10

Примечание

Вы можете предварительно установить любой пакет с этого сайта. Например: qvm-create-windows-qube -n sys-firewall -oyp firefox,notepadplusplus,office365proplus -i win10x64.iso -a win10x64-pro.xml work-win10

Если скрипт остановится или застрянет, повторяйте попытки до тех пор, пока не увидите это сообщение: [+] Completed successfully!.

  1. Теперь вам нужно подключить GPU к Windows Qube, для этого перейдите в Qube Manager и параметры Windows 10 Qube (убедитесь, что Qube выключен), на вкладке Devices выберите вашу графическую карту и проведите ее вправо, затем нажмите на Configure strict reset for PCI devices, затем выберите вашу карту и нажмите OK.

  2. Теперь, когда ваша графическая карта подключена к Windows Qube, вам нужно установить драйверы для нее. Найдите в строке поиска Check for updates, затем нажмите на Check for updates (вам придется несколько раз перезагрузиться).

Теперь Windows установит все драйверы, необходимые для работы с внешней графической картой. Если у вас возникли проблемы, убедитесь, что в Windows Qube достаточно места для установки обновлений.

После этого вы можете подключить к графической карте дополнительный дисплей.

Если вы хотите использовать специальную мышь или клавиатуру для Windows Qube, то вам нужно использовать sys-usb и подключить к нему нужное устройство.

Создайте Linux Qube#

Debian#

  1. Перейдите в менеджер Qube и создайте новый автономный Qube, а после создания запустите настройки.

  2. На вкладке advenced измените режим на HVM, отключите балансировку памяти и выберите необходимый объем оперативной памяти.

  3. На вкладке устройств выберите GPU и проведите его вправо, затем нажмите на Configure strict reset for PCI devices, выберите свою карту и нажмите OK.

  4. Закройте настройки и запустите Qube.

  5. Добавьте non-free в список источников: sudo sed -i '1 s/.*/& non-free/' /etc/apt/sources.list

  6. sudo apt update

  7. sudo apt install nvidia-driver dbus-x11

Теперь вам нужно создать 3 разных файла:

screen.conf:

Section "Device"
Identifier  "GPU"

# name of the driver to use. Can be "amdgpu", "nvidia", or something else
Driver      "nvidia"

# The BusID value will change after each qube reboot.
BusID       "PCI:0:8:0"
EndSection

Section "Screen"
Identifier "GPU screen"
Device     "GPU"
EndSection

xorgX1.sh:

#!/bin/bash

binary=${1:?binary required}

# Find the correct BusID of the AMD GPU, then set it in the Xorg configuration file
pci=$(lspci | grep "VGA" | grep -E "NVIDIA|AMD/ATI" | cut -d " " -f 1 | cut -d ":" -f 2 | cut -d "." -f 1 | cut -d "0" -f 2)
sed -i 's/"PCI:[^"]*"/"PCI:0:'$pci':0"/g' /home/user/screen.conf

# Start the Xorg server for the X screen number 1.
# The X screen n°0 is already used for QubesOS integration
sudo startx "$binary" -- :1 -config /home/user/screen.conf

xfce.sh:

#!/bin/bash
sleep 5 && sudo setxkbmap -display :1 fr &
/bin/sudo -u user PULSE_SERVER=unix:/run/user/1000/pulse/native bash -c 'sudo xhost + local:;/usr/bin/startxfce4'
  1. sudo chmod +x xorgX1.sh xfce.sh

  2. sudo ./xorgX1.sh ./xfce.sh

Теперь вторичный экран должен включиться и показать рабочий стол Debian XFCE.

Если вы хотите использовать специальную мышь или клавиатуру для Linux Qube, то вам нужно использовать sys-usb и подключить к нему нужное устройство.