И еще про SPICE
2015-07-20 21:45:44
Разобрался, наконец, как в QEMU включить USB redirection по spice-протоколу.
Оно там конечно ...
+ развернуть текст сохранённая копия
Разобрался, наконец, как в QEMU включить USB redirection по spice-протоколу.
Оно там конечно требует три строчки матерных ругательств на каждый пробрасываемый порт, но работает.
Собственно, на этом все мои потребности в удовлетворении виртуальными машинами практическиу удовлетворены. Можно было бы свои скрипты и не писать. Но раз уж начал, надо будет добить.
Далее, установил, что в пакет virt-viewer, входит клиент remote-viewer, который не проявляет никакого излишнего интеллекта, и, соответсвенно не требует его от сервера. Просто указываешь ему в командной строке spice:// url и поехал. Удобный GUI для проброса USB у него есть.
Вот чего не хватает, так это столь же удобного UI для подключения-отключения iso-образов к CD-ROM виртуальной машины.
Все что удалось выяснить по поводу опций командной строки для SPICE описал здесь
This entry was originally posted at http://vitus-wagner.dreamwidth.org/1108955.html. Please comment there using OpenID. Now there are comments
Тэги:
open,
source
Qubes OS
2015-07-19 20:06:09
Указали мне на существование интересного проекта Qubes OS. Проект операционной системы, в которой ...
+ развернуть текст сохранённая копия
Указали мне на существование интересного проекта Qubes OS. Проект операционной системы, в которой активности пользователя аккуратно поделены между виртуальными машинами. Сделано на базе Xen.
Пример использования есть вот в этой статье:
Software compartmentalization vs physical separation
Чтение описания этой системы показывает, насколько сложно действительно аккуратно распределить задачи. решаемые современным пользователем на своем компьютере по разделам с разными уровнями безопасности, и насколько на это не расчитаны современные программные продукты.
This entry was originally posted at http://vitus-wagner.dreamwidth.org/1108152.html. Please comment there using OpenID. Now there are comments
Тэги:
open,
source,
безопасность,
компьютерная
Проект VWS
2015-07-17 20:13:06
Я всё-таки собрался довести то, что начал обсуждать несколько постов назад до проекта. И даже какого ...
+ развернуть текст сохранённая копия
Я всё-таки собрался довести то, что начал обсуждать несколько постов назад до проекта. И даже какого-то кода.
Начал с того, что интересовало
nasse - командно-строчного интерфейса к qemu-монитору.
Лежит это хозяйство все на https://www.wagner.pp.ru/fossil/vws/
А поскольку я параноик, то сертификат этого сайта выдан моим собственным CA, сертификат которого надо сначала взять здесь и установить в бразуер себе (если кто еще на мои ресурсы по https не ходил и этот сертификат себе не поставил).
SHA1 Fingerprint=84:5D:B7:0B:00:C3:B6:AE:19:9D:7A:A2:7B:0E:A5:B1:05:7E:CE:78
SHA256 Fingerprint=F2:2A:B7:FF:E3:C5:43:ED:5A:00:18:F0:25:C2:B8:3E:3A:39:65:47:B9:02:9E:B6:A0:DC:5E:C1:1D:7B:41:09
Регистрироваться там в fossil-е для того чтобы редактировать вики - можно.
This entry was originally posted at http://vitus-wagner.dreamwidth.org/1107673.html. Please comment there using OpenID. Now there are comments
Тэги:
open,
source
Уточненное ТЗ по qemu GUI
2015-07-17 00:10:58
Эксперименты показали, что в качестве дисплея надо использовать spice. Потому что clipboard sharing ...
+ развернуть текст сохранённая копия
Эксперименты показали, что в качестве дисплея надо использовать spice. Потому что clipboard sharing это сильно.
Ради этого стоит потерпеть и то, что при отсутствии в guest-системе соответствующих тулзов курсор будет ей захватываться и без нажатия специальной комбинации клавиш не отпускаться (у SDL такое поведение просто неотключаемо, а у VNC его нет вообще).
Правда, если использовать spice, писать придется на python с использованеием gtk для gui.
Был бы VNC, можно было бы на tcl/tk писать, tk widget vnc-viewer-а бывает. Правда, с другой стороны, разные реализации VNC очень сильно отличаются по производительности, и есть подозрение что у Кристиана Вернера - не самая быстрая и не самая фичастая.
В любом случае, дисплей получается отцепляемым. А значит, отцепляемым надо делать и монитор, и позволять машине
уходить в бэкграунд. Но хочется сделать такую систему, что когда виртуальная ни одна машина не запущена, никаких процессов вообще нет.
Возникает идея - монитор цеплять к unix-domain-сокету, имя которого в файловой системе как-то тесно связано с именем машины (либо имеется общесистемная директория с этими сокетами, либо в директории где лежат все файлы виртуальной машины, имеется сокет monitor). Это соглашение, кстати, позволит иметь параллельный интерфейс для управления машинами из командной строки. Уж по крайней мере, system_powerdown туда сказать из скрипта всяко можно будет.
Соответственно, при желании присоединиться к работающей машине, мы коннектимся к ее монитору, лочим его (если не смогли - значит там кто-то другой уже работает), а потом спрашиваем у qemu на каком порту он ждет в гости spice/vnc клиента. Благо рассказать он об этом умеет. В принципе, конечно, tcp-порт монитора можно из файла конфигурации машины вычитывать. Но тогда придется его там хранить, а значит - оперативно редактировать этот файл конфигурации, если этот порт вдруг оказался занят. Впрочем, при создании снапшотов его все равно редактировать.
Интерфейс должен выглядеть как в левой полосе - элементы управления, а основное поле - экран гостевой системы.
Элементы управления сверху вниз removable диски, usb-устройства, снапшоты, а в самом низу кнопкки shutdown/reboot/etc. Над ними - окошко консоли монитора.
По верху окна вместо меню кнопки клавиш, которые можно туда послать.
Это если мы запустились с параметром "имя машины".
Если без него - то предлагаются варианты "открыть машину"/"создать машину".
При создании машины предлагается всего два варианта сети на выбор - подключиться к существующему бриджу или использовать user networking.
При подключении устройств и дисков должна быть предусмотрена опция "персистентное подклчение". В смысле пытаться при следующем запуске это устройство подключить обратно.
При закрытии GUI у нас должны быть варианты выбора - shudown, suspend, background.
This entry was originally posted at http://vitus-wagner.dreamwidth.org/1106795.html. Please comment there using OpenID. Now there are comments
Тэги:
open,
source,
мысли,
непричесанные
Еще немного про QEMU/KVM, Spice и jessie
2015-07-16 16:10:26
Разобрался, как в jessie запускать kvm от юзера.
1. Юзер должен входить в группу kvm.
+ развернуть текст сохранённая копия
Разобрался, как в jessie запускать kvm от юзера.
1. Юзер должен входить в группу kvm.
2. Файлы виртуальных дисков должны быть доступны ему (группе) на rw (как бы очевидно)
3. Сеть должна быть или user или bridge. Если сеть brige, то /usr/lib/qemu/qemu-bridge-helper должен быть suid root. Он вообще-то специально написан именно для того, чтобы туда suid-бит ставить.
Поигрался со spice. Заставить его таскать файлы из виндов в хостовый spacefm сходу не удалось, но текст через clipboard копируется. Usb redirection там тоже как-то не очень пока работает.
Клиент spicy написан безобразно. А именно при попытке отправить его в бэкграунд моментально получает SIGTTIN.
У них там странная идея пихать ввод со stdin прямо в основной канал протокола.
Ну а соответственно, всем прочим товарищам хинт - хотите пользоваться spicy как честным GUI приложением, запускайте его как
spicy параметры </dev/null
.
Питоновский клиент виджет - это еще более забавная штука. У него ВООБШЕ нет никакой документации. В пакет python-spice-gtk-client не входит даже двухстрочная README - только so-шка и обязательные copyright и сhangelog.
Из этой so-шки pydoc что-то показывает, но ни одного не сгенеренного автоматически gtk docstring-а я не нашел.
На сайте тоже как-то ничего хорошего в плане документации на клиенскую библиотеку сходу не нашел. Есть подозрение что питоновский интерфейс там достаточно тонкая обертка над сишным.
Но блин делать RTFS в проекте, в котором даже в coding convention написано "длина строки 100, а не 80"!
This entry was originally posted at http://vitus-wagner.dreamwidth.org/1106524.html. Please comment there using OpenID. Now there are comments
Тэги:
debian,
open,
source