Вот что у меня сработало после долгой борьбы:
прежде всего отредактируйте файл конфигурации виртуальной машины qemu следующим образом:
cd /etc/libvirt/qemu
sudo virsh define win10_GPU.xml
sudo virsh edit win10_GPU
где «win10 _GPU» — это, конечно, имя вашей виртуальной машины. и добавьте
<qemu:commandline>
<qemu:arg value='-cpu'/>
<qemu:arg value='host,hv_time,kvm=off,hv_vendor_id=null,-hypervisor'/>
</qemu:commandline>
после </devices>
почти в конце файла
затем нажмите ctrl+O (save ), ctrl+X (exit )и введите sudo virsh define win10_GPU.xml
снова;
удалите все остальные интерфейсы дисплея с вашей виртуальной машины, прежде чем даже начать установку Windows (например, spice, video cirrus и т. д. );
Это мой личный опыт. Любая другая вещь, которую я пробовал, приводила к этому коду ошибки 43.
Общая форма команды — exec > output
, которая вызывает отправку всего последующего вывода на стандартный вывод в файл «output».
Это можно расширить; например exec 2> error
приведет к тому, что весь дальнейший вывод на stderr будет отправлен в файл «ошибка»
Итак, >(...)
— это башизм, означающий запись вывода в команду ; в данном случае это команда "tee logfile"
Итак, мы складываем их вместе.
exec > >(tee logfile)
означает "записывать весь дальнейший вывод в команду tee logfile
".
Это означает, что весь будущий вывод будет отправляться на экран и(черезtee
)в файл "logfile"
Теперь я понимаю.
$ exec 7>&1
$ exec > >(tee logfile)
$ ls -l /proc/self/fd
fd/ fdinfo/
logan@logan-mainPC:~/my-test/learning-process-substitution$ ls -l /proc/self/fd
total 0
lrwx------ 1 logan logan 64 Feb 14 15:40 0 -> /dev/pts/0
l-wx------ 1 logan logan 64 Feb 14 15:40 1 -> pipe:[9603908]
lrwx------ 1 logan logan 64 Feb 14 15:40 2 -> /dev/pts/0
lr-x------ 1 logan logan 64 Feb 14 15:40 3 -> /proc/398229/fd
lrwx------ 1 logan logan 64 Feb 14 15:40 7 -> /dev/pts/0
$ echo hi i will restore stdout now
hi i will restore stdout now
$ exec 1>&7
$ exec 7>&-
$ ls -l /proc/self/fd
total 0
lrwx------ 1 logan logan 64 Feb 14 15:41 0 -> /dev/pts/0
lrwx------ 1 logan logan 64 Feb 14 15:41 1 -> /dev/pts/0
lrwx------ 1 logan logan 64 Feb 14 15:41 2 -> /dev/pts/0
lr-x------ 1 logan logan 64 Feb 14 15:41 3 -> /proc/398237/fd
$ cat logfile
total 0
lrwx------ 1 logan logan 64 Feb 14 15:40 0 -> /dev/pts/0
l-wx------ 1 logan logan 64 Feb 14 15:40 1 -> pipe:[9603908]
lrwx------ 1 logan logan 64 Feb 14 15:40 2 -> /dev/pts/0
lr-x------ 1 logan logan 64 Feb 14 15:40 3 -> /proc/398229/fd
lrwx------ 1 logan logan 64 Feb 14 15:40 7 -> /dev/pts/0
hi i will restore stdout now