Помощь в создании обучающей виртуальной ОС на основе ReactOS

Обсуждаем ReactOS по-русски

Moderators: fog, fireball

Post Reply
Dima2010
Posts: 3
Joined: Wed Jan 05, 2011 6:53 pm

Помощь в создании обучающей виртуальной ОС на основе ReactOS

Post by Dima2010 »

Здравствуйте!

Я преподаю, вернее преподавал, компьютерные курсы для начинающих пользователей. В процессе работы накопилась масса идей часть из которых опубликовал на сайте http://capslock.su/. Одна из главных идей, которую хотелось реализовать, и привела меня сюда.

Собственно идея: настроенная виртуальная машина с гостевой ОС (с интерфейсом, близким к Win9x\XP), запускающаяся с CD\DVD в хостовой ОС WinXP/Vista/7(32-64 bit) под пользовательскими правами. Виртуальная машина нужна для обучения начинающих пользователей, т.к. решает сразу 2 задачи, мешающие обучению:

1. Убирает страх что нибудь сломать или испортить в процессе "проб и ошибок". Этот страх силен особенно у старшего поколения, и у тех кто учиться не на своем компьютере. Все изменения сделанные в виртуальной системе, после перезагрузки исчезают, поэтому нет риска что либо испортить. Вся работа проходит в гостевой системе и поэтому в хост-системе также ничего не "портиться".

При обучении в компьютерных классах можно использовать ShadowUser, Deep Freeze или Windows SteadyState, - достигающих по сути того же (возвращают все как было после перезагрузки). Но если речь идет о домашнем компьютере и обучении по книге - то таокй вариант не пройдет.

2. Создает возможность писать методические рекомендации и учебники, опираясь на конкретную настроенную систему. Грубо говоря, - если в книге написано - щелкните такой то значок там-то (мой компьютер, например), то этот значок точно будет там. То же самое - "откройте такой-то учебный документ" - точно документ будет лежать в там где положено и в том виде, в каком его сохранил преподаватель, или автор учебника.

Прообраз такой системы можно посмотреть у меня же: http://capslock.su/invention/uchebnaya- ... istema.htm, но эта система не подойдет для работы (см. на страничке раздел - "недостатки")

Я перебрал много вариантов с различными виртуальными машинами и образами операционных систем. В каждом конкретном случае - или требуется установка драйверов, или система жутко тормозит, или еще что.

В результате ближе всего такая вещь:

В качестве виртуальной машины была выбрана Qemu т.к. позволяет запускаться без прав администратора, также абсолютно свободна. Но под Qemu все варианты линуксов, которые планировалось использовать в качестве учебных ОС - жутко тормозят.

В качестве загрузчика - QStart http://www.pendrivelinux.com/use-qemu-t ... /#more-192 - запускает любой linux live-cd, лежащий с ним в одной папке.

В качестве ОС, после всех мучений с убунтой и убеждения что даже самый быстрый линукс (который внешне похож на виндовс) PuppyRus-Jeans - подтормаживает под Qemu... выбрал ReactOS. ReactOS достаточно шустро работает даже если его запустить через QStart (т.е. запускается qemu с официального образа live-cd, лежащего вместе с qemu в папке QStart). Правда запускается через раз.

Собственно вопрос:

Как сделать так, чтобы:

1. Скачав настроенный qemu с http://www.reactos.org/ru/download.html я мог произвести все настройки ReactOS (добавить приложения, учебные файлы и т.д.) и сделать из него live-cd.
2. Этот live-cd образ положить в QStart или что-то подобное. Записать на диск.
3. Пользователю выдается диск. В нем есть автозапускаемое меню, - щелкаешь там "Учебная операционная система" - и запускается ReactOS внутри qemu. Без всяких вопросов. Так же как он запускается с официального предустановленного qemu, только без выбора режимов запуска.
4. Пользователь по методичке выполняет действия (создает папки, копирует файлы и т.д.) После выключения виртуальной машины, никакие изменения не записываются, т.к. это сд-болванка.
5. повтор 4 пункта :)

Пока на пути реализации такой учебной системы следующие препятствия:

1. В QStart, ReactOS-LiveCD.iso запускается с с пятого раза на десятый. Может есть какие другие варианты запуска ReactOS образа с CD\DVD болванки?
2. Непонятно как самому сделать live-cd из ReactOS настроенного в виртуальной машине.

Какие есть варианты?

Заранее спасибо!
unxed
Posts: 220
Joined: Mon Aug 28, 2006 11:11 pm
Contact:

Re: Помощь в создании обучающей виртуальной ОС на основе Rea

Post by unxed »

Dima2010 wrote: Как сделать так, чтобы:

1. Скачав настроенный qemu с http://www.reactos.org/ru/download.html я мог произвести все настройки ReactOS (добавить приложения, учебные файлы и т.д.) и сделать из него live-cd.
2. Этот live-cd образ положить в QStart или что-то подобное. Записать на диск.
Вот между пунктами 1-2 и 3-5 не вижу связи. Кто мешает установить ROS в образ QEMU, сделать внутри него все настройки, создать (или взять из предустановленной ROS) батник запуска QEMU, прописать его в autorun.inf, записать на CD этот авторан, сам QEMU и образ с готовой ROS и так же выдавать диск пользователю? Всё равно всё крутится внутри хост-системы, зачем livecd?
Dima2010 wrote: 3. Пользователю выдается диск. В нем есть автозапускаемое меню, - щелкаешь там "Учебная операционная система" - и запускается ReactOS внутри qemu. Без всяких вопросов. Так же как он запускается с официального предустановленного qemu, только без выбора режимов запуска.
4. Пользователь по методичке выполняет действия (создает папки, копирует файлы и т.д.) После выключения виртуальной машины, никакие изменения не записываются, т.к. это сд-болванка.
5. повтор 4 пункта :)
Dima2010
Posts: 3
Joined: Wed Jan 05, 2011 6:53 pm

Re: Помощь в создании обучающей виртуальной ОС на основе Rea

Post by Dima2010 »

Вот между пунктами 1-2 и 3-5 не вижу связи. Кто мешает установить ROS в образ QEMU, сделать внутри него все настройки, создать (или взять из предустановленной ROS) батник запуска QEMU, прописать его в autorun.inf, записать на CD этот авторан, сам QEMU и образ с готовой ROS и так же выдавать диск пользователю? Всё равно всё крутится внутри хост-системы, зачем livecd?
В таком виде, как вы описали, система пытается записать изменения в свой образ жесткого диска на CD. И естественно это у нее не выходит и она виснет, даже не загрузившись. В случае с live-cd изначально понятно что никакие изменения мы на болванку нашу не запишем и даже не пытаемся. Попробуйте сами - запишите qemu-машину скачанную с сайта в образ iso, подмонтируйте алкоголем или еще чем, и попробуйте запуститься.
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

система пытается записать изменения в свой образ жесткого диска на CD
Попробуйте режим „только для чтения“ (-drive … snapshot=on или -snapshot).
Dima2010
Posts: 3
Joined: Wed Jan 05, 2011 6:53 pm

Re: Помощь в создании обучающей виртуальной ОС на основе Rea

Post by Dima2010 »

Попробуйте режим „только для чтения“ (-drive … snapshot=on или -snapshot)
Спасибо огромное за подсказку! С ключом "-snapshot" система запускается с компакта.

Остается несколько вопросов - самый главный из них такой:
В получившимся режиме невозможно сохранить созданные документы. При запуске live-cd той же убунту, возможность сохранять документы есть. Конечно они исчезают после перезагрузки, но это не критично. Может есть возможность как-то прописать чтобы держал созданные документы временно на ram-диске? Документы будут небольшие - просто текстовые файлы или пара рисунков bmp. Хотел проверить, а поддерживает ли сохранение документов live-cd ReactOS, но что-то не везет в последнее время с загрузкой с лайв-сиди, раньше раза с 5-того запускался, а сейчас ни в какую.

Остальные вопросы напишу чуть позже, если не получится самому решить.
spb-ivan92
Posts: 112
Joined: Sun May 03, 2009 10:19 am
Location: Russia, Saint-Peterburg
Contact:

Re: Помощь в создании обучающей виртуальной ОС на основе Rea

Post by spb-ivan92 »

В интернете случайно наткнулся на такую штуку http://www.comodo.com/home/data-storage ... covery.php , сразу вспомнил про эту темку - может кому полезно будет. Аналог эпплского "Time Machine" (делает снимки состояния файловой системы, с возможностью полного или частичного отката, в том числе при загрузке системы), но только под windows XP - 7. Бесплатен, хоть и проприоритарен. Жаль что под РОС вероятнее всего не заработает (пока).
fog
Moderator
Posts: 827
Joined: Sun Nov 13, 2005 7:45 am
Location: Russia
Contact:

Re: Помощь в создании обучающей виртуальной ОС на основе Rea

Post by fog »

Копипаста из https://web.archive.org/web/20120425232 ... m#more-994

Создание учебной операционной системы


Рабочий проект

Учебная ОС это решение двух основных задач, возникающих при обучении по работе с компьютером:

1. Убрать страх что-либо испортить своими неумелыми действиями на компьютере (и действительно убрать такую возможность)

2. Создать единую изначальную среду обучения – единством интерфейса, расположения элементов, настроек и т.д.

Подробнее:

1. Начинающие пользователи боятся что-нибудь испортить или сделать что-то не так при работе с компьютере. Этот страх силен особенно у старшего поколения, и у тех кто учиться не на своем компьютере. Он очень мешает при обучении. Есть варианты, как настроить систему в компьютерном классе так, чтобы можно было спокойно сказать пользователям сказать – «не бойтесь ничего испортить внутри компьютера, главное не пинайте его ногами, а все остальное – ерунда : )». Однако, тут тоже есть сложности с настройкой ПО. Если пользователь учиться самостоятельно, на своем домашнем компьютере, по книге или интерактивному курсу, то такой гарантии дать нельзя. Учебная ОС убирает страх что нибудь сломать или испортить в процессе «проб и ошибок». Все изменения сделанные в виртуальной системе, после перезагрузки (или возврата к исходному снимку системы) исчезают, поэтому нет риска что либо испортить. Вся работа проходит в гостевой системе.

2. При работе в компьютерном классе, каждый пользователь меняет какие либо настройки той машины, за которой работает (расположение значков, папок, свойства мыши и т.п.) Для преподавателя удобнее, когда при запуске новой группы, или смене групп – на компьютерах сохранялось однообразие настроек, чтобы не подходить к каждому по отдельности и возвращать на место «потеряшки». При этом все личные папки с заданиями пользователи могут хранить на сервере. Постоянство и единая настройка, также создает возможность писать методические рекомендации и учебники, опираясь на конкретную настроенную систему. Грубо говоря, – если в книге написано – щелкните такой то значок там-то (мой компьютер, например), то этот значок точно будет там. То же самое – «откройте такой-то учебный документ» – точно документ будет лежать в там где положено и в том виде, в каком его сохранил преподаватель, или автор учебника.

Также для опытных и начинающих пользователей, активно пользующихся интернетом, актуальным вопросом стоит безопасность компьютера. Одним из лучших решений является работа браузера и других программ, использующих интернет в так называемой «песочнице», изолированной от всей остальной системы.



Для начала уточню мой список требований, предъявляемых для учебной ОС:
» Запуск с оптического диска, без записи чего-либо на жесткий диск реальной машины. Однако, если будет система, которая будет соответствовать остальным требованиям, то сойдет и запуск с жесткого диска компьютера.
» Учебная операционная система должна запускаться без перезагрузки компьютера, каких-либо настроек (в том числе в биосе), установок драйверов и т.д. Т.е. должна работать в виртуальной машине. Естественно, что вопросов защитных систем не избежать (»Вы действительно хотите запустить.. внести изменения на жесткий диск компьютера.. предоставить доступ в интернет» и т.д. и т.п.).
» Возможность запуска под учетной записью пользователя.
» Минимальное потребление системных ресурсов, т.к. виртуальная машина использует только часть ресурсов, и без того не очень мощных машин большинства начинающих пользователей. Т.е. требуется отсутствие «тормозов».
» Возможность предварительно настроить систему, разложить учебные файлы по папкам и т.д. Т.е. не редактируемый live-cd образ не подойдет.
» Русский интерфейс и полная поддержка русского языка.
» Возможность возврата к изначальному состоянию системы. Можно автоматически, т.е. после перезапуска все возвращается к исходному состоянию, можно вручную – например через снимок состояния системы в виртуальной машине.
» Интерфейс, максимально приближенный к интерфейсу ОС семейства windows 9x/2000/xp или Vista/7. Это также касается настроек мыши, клавиатуры и т.д. Желательно, чтобы можно было настроить две темы – одну под winXP, вторую под win Vista/7.
» Стабильная работа системы, без вылетов
» Возможность создания своих файлов и папок. Пусть даже на одну сессию (в случае с автоматическим возвратом к исходному образу ОС после перезагрузки т.е. «режим live-cd»), или временно (до возврата самим пользователем к изначальному снимку системы). В обоих вариантах: настройки, папки и файлы созданные пользователем – пропадают, но зато это дает гарантию что в случае любых действий все можно вернуть как было, и что любые действия в учебной ОС, не приведут к каким либо изменениям на реальном компьютере.
» Недоступность файловой системы реальной машины для гостевой ОС. Кроме доступа к CD/DVD-приводу и доступа к интернету через NAT. Доступ к общим сетевым папкам реальной машины или других реальных машин в сети должен быть закрыт или ненастроен.
» Защищенность машины от вирусов и других видов вредоносного ПО. Дабы антивирус не тормозил виртуальную систему и не мешал пользователю своими уведомлениями. А сам пользователь не должен думать о вирусах и троянах, пока дело (книга, методичка, курс) до этой темы не дойдет.
» Система должна запускаться как на и 32-битных и 64-битных хост-ОС.
» При запуске, должно открываться минимальное количество вспомогательных окон. В идеальном случае запускается только одно окно – окно с учебной ОС. «Запустился менеджер – в нем надо нажать кнопочку – запуститься окно» – не лучший вариант.
» При запуске не должно быть никаких вопросов со стороны загрузчика ОС, никаких «выберите язык, safe mode – normal mode» и тому подобное. Нажал – появилось окошко, что-то там помелькало-помелькало импортными буковками на черном фоне и в итоге появился рабочий стол и все дела.
» Минимальное обращение к приводу компакт-дисков при работе системы. Пусть этап загрузки будет в три раза дольше, но вся система будет в оперативной памяти, чем быстрая загрузка и постоянные обращения к медленному приводу.
» Минимальный размер занимаемый работающей ОС в оперативной памяти реального компьютера. Желательно не выходить за рамки 128 Мб. В крайнем случае – 192. При соблюдении предыдущего пункта, все вместе рождает следующий пункт:
» Минимальный размер дистрибутива учебной ОС.
» Сама ОС и виртуальная машина на основе которой она будет работать, должны быть бесплатными и свободно-распространяемыми. Дабы не было проблем с копирастами.

Требования эти взяты не с потолка, а в процессе подбора и поиска подходящих виртуальных машин и ОС. А также на основе опыта работы с начинающими пользователями.

Все эти требования можно изложить коротко в практическом применении:

Пользователю (учащемуся на компьютерных курсах, читающему книгу «Компьютер для чайников», запускающему видеоуроки или интерактивный курс) выдается диск. В автозапуске диска есть кнопочка – «Запустить учебную ОС» (если это видеокурс, или интерактивный диск) либо автозапуск сразу выполняет загрузку виртуальной машины (если на диске только учебная ОС). Вопросы с отключенным автозапуском, контролем учетных записей, непонятками пользователей по поводу иностранных кракозябр в окне запускаемой машины – решаемы описанием в учебнике, методичке объяснениями на курсах.

Загрузился рабочий стол – можно выполнять упражнения описанный в книге\курсе, не боясь что-то сломать и т.д. Папки, файлы, работа с программами, текстовыми редакторами. Если у пользователя есть настроенный интернет, то также можно обучать работе с браузерами, сайтами и т.д.

В случае каких либо неполадок, можно легко вернуть систему в изначальное состояние. Возможно, для продолжения обучения, придется создавать часть папок и файлов заново, но это пойдет на пользу – больше практики.

После начального обучения в учебной системе, можно переходить к реальной ОС и машине.

В процессе поиска были перепробованы различные варианты. На данный момент выбраны:

В качестве виртуальной машины выбрана Qemu.

В качестве загрузчика\менеджера виртуальной машины есть три кандидата: QStart, QemuManager Portable, и сборка от команды ReactOS (см. пункт «Предустановленная в QEMU»)

В качестве ОС кандидатами являются Ubuntu (в разных вариациях) а также Slitaz, DSL и PuppyRus, также возможен вариант с ReactOS.

На данный момент есть следующие проблемы (задачи):

- получить интерфейс, максимально близкий к winXP\7, и максимальное быстродействие. Для среды GNOME есть как тема под win7 так и тема под winXP, в которых с первого взгляда не поймешь что это линукс вообще. Но GNOME не для слабых машин (а виртуальная машина в данном случае не «слабая» а «очень слабая» машина). В «быстрых» дистрибутивах для слабых машин (Slitaz, DSL и PuppyRus) используются оконные менеджеры, для которых я пока не нашел тем «под виндовс» – настолько же повторяющих оригинальный интерфейс как тема winXP и тема win7 под GNOME.
Post Reply

Who is online

Users browsing this forum: Ahrefs [Bot] and 10 guests