8/04/2008

Seamlessly інтеграція Windows ХР в Linux з SeamlessRDP

Оригінал: "Seamlessly integrate XP into Linux with SeamlessRDP"
Автор: Sergio Gonzalez Duran
Дата: 31 січня 2008 р.

Переклад: Михайло Веселовський

Дата перекладу: 04 серпня 2008 р.

Сьогодні користувачі мають багато варіантів запуску Windows XP і Linux на одній машині. Це можна традиційно зробити з системою з подвійним завантаженням, які завантажуються з різних дисків, але використовують певні партиції для спільного використання, чи можна використати емулятор Wine, який дозволяє встановити Windows програми на Linux . Програми віртуалізації, такі як VMware , наближають нас до ідеальної можливості використання одночасно двох систем, але одна з них завжди є – хостом, а інша – гостем, показаним у вікні. Але якщо зкомбінувати VMware сервер з деякими безплатними програмами, ми можемо запустити Windows XP з Linux не у вікні, а повністю інтегровано в Linux.

Щоб зробити це реальним нам будуть потрібні наступні програми заінсталені на нашій системі. Незважаючи на не опен сорсність, VMware сервер базплатний як пивоJ, він вимагає ліцензію яку можна отримати на сторінці звідки ви скачуєте його. (Звичайно нам потрібна ліцензійна версія Windows XP для встановлення), rdesktop – RDP клієнт який розповсюджується зі всіма дистрибутивами Linux і Cendio's SeamlessRDP – утиліта яка розповсюджується згідно GPL ліцензії і дозволяє інтегрувати rdesktop в Windows XP .

Завдяки цьому рішенню, ми підєднюємось до віртуальної машини у фоновому режимі, прицьому не відображаються ні рамка вікна, ні робочий стіл Windows XP. Ми отримуємо меню Windows XP разом з меню КДЕ чи GNOME, це створює ілюзію що обидві операційні системи працюють одночасно. На рисунку 1 показано КДЕ меню зверху а Windows XP меню знизу. Ми меємо змогу запускати програми обох операційних систем.

124908

Для початку потрібно встановити Windows XP на VMware зі стандартними опціями, також потрібно настроїти локальну мережу на NAT. Це спростить підєднання з головноної машини. Після повного встановлення Windows XP залогуйтесь і виставте пароль для користувача, завдяки цьому ми зможемо підєднюватись з Linux. Також нам потрібно дозволити віддалені з’єднання до Windows XP, це можна зробити на вкладці Start -> Control Panel -> System -> Remote tab і позначити "Allow users to connect remotely to this computer."

Тепер нам треба встановити VMware Tools для нашої Windows XP віртуальної машини. Також на потрібно знати ІР адрес який нам присвоїв VMware DHCP сервер.

Наступне що нам потрібно зробити це встановити SeamlessRDP на Windows XP. Відкрийте ваш улюблений броузер та скачайте SeamlessRDP. Створіть диресторію на диску С:\ (C:\seamless) і видобудьте архівний контент туди.

Тепер ми можемо відлогуватись з Windows XP сесії, тільки не вимикайте віртуальну машину. Як тільки Windows XP покаже Welcome screen, ви можете вимкнути консоль VMware Server, залишивши Windows XP працювати у фоновому режимі. Проста команда ps -ef | grep vmware покаже що Windows XP таки працює.

Зараз саме той час щоб використати rdesktop. Для початку ми спробуємо відкрити просту аплікацію, наприклад Блокнот. Запустіть термінальну сесію в Linux і виконайте наступну команду:

rdesktop -A -s "c:\seamless\seamlessrdpshell.exe notepad" 192.168.217.129 -u admin -p secret

Звичайно замініть ІР адресу, користувача та пароль на свої значення. Якщо все настроєно нормально повинен запуститись Блокнот.

Опція –А створює окреме вікно Х11 для кожної програми яку ви запускаєте. Опція –s вказує на оболонку яка запускає програми. Зауважте що ви використовуєте c:\seamless\seamlessrdpshell.exe яку ви раніше створили. Аргументом цієї команди є програма яку ви хочете запустити. Якщо шлях до програми на знаходиться в змінній path вам потрібно вказувати повний шлях до програми. Використання –u і –p не обовязкове. Якщо їх не використовувати вам завжди прийдеться вводити логін і пароль.

Зауваження! Якщо ви закриєте Блокнот то це не призведе до закриття сесії Windows, вам потрібно буде зайти у сесію Windows XP і завершити сеанс.

Тепер ми занаємо як завдяки rdesktop і SeamlessRDP запускати програми, чому б тепер не запустити explorer.exe. Ця програма створить нам робочий стіл в повному об’ємі(включаючи іконки, лінки на програми і картинку робочого стола), користувачі зможуть працювати використовуючи панель задач.

Звичайно нам не потрібен робочий стіл, який перекриває робочу область у Linux, ми можемо залишити тільки панель задач відредагувавши реєстр Windows. Запустіть реестр перейдіть в цю гілку HKEY_CURRENT_USER -> Software -> Microsoft -> Windows -> CurrentVersion -> Policies -> Explorer і створіть там New -> DWORD Value -> NoDesktop, встановіть значення цього ключа в 1. Перезагрузіть Windows.

Коли ви вимикаєте ваш Linux всі віртуальні машини які виконуються у фоновому режимі втрачаються, в цьому випадку вам потрібно буде стартувати VMware віртуальні машини і залишати їх працювати постійно коли ви хочете запускати Windows. Також перед запуском команди rdesktop перенесіть ваше меню вверх тому, що панель задач Windows буде знизу.

Тепер запустіть команду rdesktop:

rdesktop -A -s 'c:\seamless\seamlessrdpshell.exe c:\windows\explorer.exe' 192.168.217.129 -u admin -p secret

Voilà! За декілька секунд появиться панель задач Windows XP знизу екрану, і ви матимете змогу запускати програми з меню Пуск. Це створює ілюзію що обидві операційні системи працюють одночасно.

Цей фокус працює не тільки з VMware віртуальними машинами. Він працює також з Windows кліентами у вашій мережі та іншими програмами віртуалізації. Просто встановіть SeamlessRDP і настройте Windows XP щоб rdesktop міг приєднуватись до неї.

 

Sergio Gonzalez Duran is a Linux administrator, systems developer, and network security counselor who also teaches Linux courses and publishes the Spanish-oriented Linux and open source Web site linuxtotal.com.mx.