current tty as console in CT [message #51757] |
Sat, 08 November 2014 06:06 |
|
Привет!
Обычно контейнер описывают как chroot на стероидах. Но chroot получает в качестве stdin и stdout текущий терминал. И поэтому в нём работают даже графические программы (framebuffer). Вот и для контейнера хочется такой же режим.
Для checkpoint/restore эта фича не совсем подходит и лучше сделать виртуальный framebuffer в CT, но для DESKTOP будет вполне хороша и должна быть проще в реализации.
Но вот как этого добиться? Как избавиться от namespace для устройств tty, console, vcs, vcsa, fb? Может разработчики подскажут?
Для чего фича нужна? Например, для запуска в контейнере android
В Paralles (http://habrahabr.ru/company/parallels/blog/174211/) под руководством master1981 (kir?) в 2012-2013 году два студента из кафедры МиИТ Академического университета Санкт-Петербург повторили работу http://systems.cs.columbia.edu/projects/cells/build/ Но там используется ядро 3.1 с доработткой device namespace так, что для всех контейнеров доступен framebuffer. Но только для foreground CT вывод реально осуществляется на экран, а для остальных CT вывод идёт просто в память.
Реализация довольно сложная и не подходит для checkpoit/restore. Поэтому для начала хочется subj -- иметь возможность избавиться в некоторых контейнерах от виртуализации tty и научиться запускать в CT графические программы (framebuffer).
Любая подсказка будет принята с благодарностью.
PS: правильный и длинный путь -- это реализация в CT spice-устройств. Тогда и checkpoint/restore будет с этим работать. И будут звук, принтер...
|
|
|