|
|
|
СЪВЕТИ
|
Как да инсталираме, използваме и тестваме с quemu seamlessrd
|
|
|
|
|
|
от alabal(9-09-2006)
рейтинг (12)
[ добре ]
[ зле ]
Вариант за отпечатване Статията
има за цел да
опише за какво
и как може да
се инсталира
и използва един
изключително
полезен модул
на rdesktop - seamlessrdp. Rdesktop с този
модул е тестван
от автора в две
дистрибуци
на Линукс –
Gentoo и Debian при взаимодействие
с Windows XP и Windows Server 2003 R2. В
допълнение
е дадено и кратко
обяснение как
да инсталираме
и използваме
виртуална
машина с помощта
на qemu, за тези
които имат
желание да
тестват този
модул.
И тъй!
Среда
и необходимост
Търсейки
бюджетно решение
за инсталирането
и поддръжката
на значителен
брой компютри,
както и на подход
за лесно централизирано
управление
на потребителите,
различен от
обичайния
Windows/Samba Primary Domain Controller, си спомних
за две статии
от сайта описващи
използването
на тънки клиенти.
След
около седмица
експерименти
се оказа, че
ltsp е точно това
което ми трябва
- леко, гъвкъво,
невероятно
евтино и добро
спестяващо
пари, време и
усилия решение.
След
като успях да
инсталирам
и настроя в две
мрежи ltsp - общо
взето подобни,
едната с пет,
другата с осем
тънки клиента
(всъщност пълноценни
конфигурации
с инсталиран
Windows XP, просто за
целите на
демонстрациите
"боотваха"
от мрежата, без
използване
на твърдия
диск) и по един
"сървър" работещи
съответно под
Debian и Gentoo - резултатът
беше впечатляващ.
Идеята беше
одобрена и като
бюджет и като
форма за централизирано
управление
на достъпа на
потребителите.
(Невероятно
приятно е да
видиш колко
учудени остават
хората от тази
всъщност доста
стара и леко
позабравена
идея за използването
на терминали.)
НО!
Имаше
едно голямо
"НО!!!". Общо взето
възраженията
(напълно справедливи,
според мен) се
състояха в
следното: "Харесваме
идеята, искаме
да я използваме,
но ние имаме
лицензи за
програми, които
работят под
Windows и не можем да
отделим нови
средства за
закупуване
на лицензи под
Linux на същите
програми, а
имаме и други,
които ни се
налага да използваме,
а те нямат Linux
аналози."
Следователно
решението
трябва да се
търси в използването
на някакъв
вариант на
емулация или
използването
на възможностите
на rdp протокола.
Изпробвах
wine, но срещнах
сериозни затруднения
дори за емулирането
на относително
добре поддържания
Office XP. Тогава единственото
решение се
оказа rdesktop. При
него проблемът
пък бе, че след
осъществяване
връзката с
машина работеща
под Windows ви се отваря
цял пълноценен
десктоп, което
само би объркало
бъдещите потребители
на системата.
Предположението
ми, че и други
са се сблъсквали
с подобни проблеми
се оказа вярно
и след известно
търсене по
google попаднах на
seamlessrdp
Как
работи
След
като изтеглите
seamlessrdp от адреса
по-горе трябва
да разархивирате
в някоя удобна
директория
на машината
работеща под
Windows, например
C:\seamlessrdp.
Трябва
да разрешите
remote desktop на съответната
машина и да
укажете кои
потребители
могат да управляват
машината отдалечено.
След свързването
с rdesktop seamlessrdpshell.exe осигурява
различен шел
от Explorer и разполагате
с напълно
функциониращо
Windows приложение,
работещо в
собствената
си среда и изобразено
в един-единствен
прозорец в
работното поле
на машината
от която се
свързвате.
Свързването
към машината
отнема минимално
време, а в работата
на приложенията
не се забелязва
почти никакво
забавяне.
Ограничения
и слабости:
Ltsp:
-
основното
ограничение,
според мен,
при решение
за използване
на тънки клиенти
е мрежата –
ако се налага
да използвате
тежки графични
приложения,
трансфер на
видео и аудио
сигнал мрежа
10/100MBit е неподходяща;
-
при по-голям
брой тънки
клиенти (20 и
повече), може
да се наложи
използване
на два сървъра
и някакво
load-balancing решение.
Подобно решение
се налага и
ако трябва да
осигурите
висока степен
на сигурност
и непрекъстнатост
на работа.
Windows:
-
Seamlessrdp може
да работи само
с Windows XP Professional и Windows Server 2003 (R2),
без допълнително
инсталиране
на Terminal Services и Remote Desktop. При
по-стари или
ограничени
версии се налага
инсталирането
на тези услуги.
- Windows
XP Professional позволява
само една-единствена
връзка с един
потребител.
ВАЖНО!!! За да
работи seamlessrdp е
ЗАДЪЛЖИТЕЛНО
да няма потребители,
които да са
“логнати” в
момента на
свързване.
Всеки втори
опит за свързване
е обречен на
неуспех. На
този
адрес
има кратко
описание как
да се инсталират
конкурентни
връзки към
Remote Desktop на Windows XP Professional.
Rdesktop:
-
Seamlessrdp работи
с версия на
rdesktop по-висока
от 1.5.0.
Инсталиране
Gentoo:
# echo 'net-misc/rdesktop ~x86'
>> /etc/portage/package.keyword
# emerge -av rdesktop
Debian:
# apt-get install build-essential
cvs
И като
обикновен
потребител:
cvs
-d:pserver:anonymous@rdesktop.cvs.sourceforge.net:/cvsroot/rdesktop
login
cvs
-z3
-d:pserver:anonymous@rdesktop.cvs.sourceforge.net:/cvsroot/rdesktop
co -P rdesktop
cd rdesktop
./bootstrap
./configure
make
su
make install
ln -s /usr/local/bin/rdesktop /usr/bin/rdesktop
Свързване:
След
като rdesktop е инсталиран
и Remote Desktop е разрешен
за даден потребител
(user) със съответна
парола (password) на
машина отговаряща
на IP адрес 172.20.0.15,
за да стартирате,
примерно, notepad
използвайте
следната команда:
$
rdesktop -A -a 16 -s "c:\seamlessrdp\seamlessrdpshell.exe
notepad" 172.20.0.15 -u user -p password
Ако
имате домейн
контролер
трябва да добавите
и: -d domain
За
да стартирате
кое да е друго
приложение,
трябва да опишете
пътя до неговия
стартиращ файл.
Например за
MS Word 2003 ще трябва
да изпълните
следното:
$
rdesktop
-A -a 16 -s "c:\seamlessrdp\seamlessrdpshell.exe c:\program
files\microsoft office\office11\winword.exe" 172.20.0.15 -u user
-p password
Ако
всичко работи
тези команди
могат да бъдат
записани в
скрипт и със
съответни
линкове разположени
(копирани) в
десктопите
на всеки потребител
да бъде улеснено
свързването.
Примерно скрипт
за MS
Word 2003 за конкретния
потребител
ще изглежда
така:
#!/bin/bash
rdesktop
-A -a 16 -s "c:\seamlessrdp\seamlessrdpshell.exe c:\program
files\microsoft office\office11\winword.exe" 172.20.0.15 -u user
-p password
Тестване
с виртуална
машина:
Aко
вече имате
инсталиран
Windows на виртуална
машина, то се
уверете, че тя
се “вижда” от
хост машината,
чрез:
ping IP_address_na_virtualnata_mashina
след
което опитайте
да се свържете
с нея по гореописания
начин.
Aко
нямате инсталирана
виртуална
машина, можете
да използвате
следното:
Инсталирайте
qemu, за предпочитане
с kqemu модул.
Уверете
се, че имате
компилиран
модула tun за
Universal TUN/TAP (modprobe -l | grep tun), ако го
нямате ще трябва
да го компилирате
– намира се в
раздел Device Drivers->Network
device support -> Universal TUN/TAP device driver support.
Уверете
се, че имате
поддръжка на
iptables в ядрото –
ако не, компилирайте
ново ядро с
необходимите
модули. Ето
едно упътване
как да стане
това: HOWTO IPtables for newbies
След
което:
# su
# modprobe kqemu
# modprobe tun
# qemu-img create disk.img 4G ## Създаване
на дял от 4G
# nano /etc/qemu-ifup
Копирайте
следния скрипт
в този файл:
#!/bin/sh
/sbin/ifconfig $1 172.20.0.1
# chmod +x /etc/qemu-ifup
Стартирайте
quemu така:
# qemu -net user -net nic,model=rtl8139 -net tap -m 512 -localtime -hda disk.img -cdrom /dev/cdrom -boot d
Това
ще стартира
qemu със първо boot
устройство
/dev/cdrom и използване
на 512 MB от RAM (-m
512) ако е много
- намалете я
на 256. Ще бъде
създадено
устройство
tap0 с адрес 172.20.0.1,
ако желаете
друг адрес –
променете
/etc/qemu-ifup. След като
инсталирате
Windows (за предпочитане
Server 2003, вижте по-горе
защо) създайте
потребители,
дайте им права
за Remote Desktop, задайте
следните настройки:
IP:172.20.0.XX
netmask 255.255.0.0
gateway:172.20.0.1
DNS:- този на вашата машина.
За да имате Интернет изпълнете това:
# echo "1" > /proc/sys/net/ipv4/ip_forward
# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Изтеглете seamlessrdp и го инсталирайте.
Тествайте!
Заключение:
Дори
и с варианта
на допълнителна
машина работеща
под Microsoft Server 2003 алтернативата
е все още приемлива
и мисля, че
значително
по-евтина от
другите варианти.
Точните изчисления
за цените на
различните
алтернативи,
подробно howto за
ltsp и някои специфични
настройки ще
бъдат дадени
в една или две
бъдещи статии.
***************************************************
Връзки:
Статия на Никола Антонов - линк
Статия
на Станимир
Иванов - линк
Howto
Quemu – Gentoo - линк
Howto
Seamlessrdp (Ubuntu) - линк
Howto
Ltsp (Gentoo) - линк
Linux
Terminal Server Project - линк
ThinStation - линк
<< SSH без парола :) | Съхранение на поверителна информация в БД >>
|
|
|
|
|
Или накратко ... (?) От: the_real_maniac На: 10-09-2006@8:43 GMT+2 Оценка: 1/НеутраленКлиентите достъпват Линукс терминал чрез ltsp, а през него си пускат rdesktop , чрез който се свързват с Windows пуснат в/у QEMU ?
[Отговори на този коментар]
Към: Или накратко ... (?) От: alabal На: 10-09-2006@18:55 GMT+2 Оценка: 1/НеутраленМоже и така да се направи, но идеята при мен е да има отделна машина на която да работят windows приложенията.
[Отговори на този коментар]
Към: Към: Или накратко ... (?) От: the_real_maniac На: 12-09-2006@11:59 GMT+2 Оценка: 1/НеутраленЕ тогава как е накратко ситуацията :-) ?
[Отговори на този коментар] Към: Към: Към: Или накратко ... (?) От: alabal На: 12-09-2006@13:11 GMT+2 Оценка: 1/НеутраленОще малко тестове и ще мога да кажа.в момента инсталирам Server 2003 и ще кажа тея дни.
[Отговори на този коментар]
Към: Или накратко ... (?) От: Yasen6275 <ohtya (a) chem__dot__uni-sofia__dot__bg> На: 11-09-2006@13:22 GMT+2 Оценка: 1/НеутраленИ ако трябва да преоборудваш компютърна зала, вместо да копуваш 6 компютъра за 300-400$ и след година две да ги изхвърлиш, купуваш един сървар за 1800-2400$ и решаваш проблема за същото време. Но след това не го хвърляш а копуваш втори и разпределяш натоварването между двата.
Само да успея да убедя шефа ;-)
[Отговори на този коментар]
Към: Към: Или накратко ... (?) От: alabal На: 11-09-2006@22:47 GMT+2 Оценка: 1/НеутраленТочно такава е и моята идея. Още повече, че наличните компютри при мен остаряват със страшна сила и само като си помисля колко пари ще трябва за обновяването и ми прилошава.
Ако искаш един съвет - инсталирай ltsp, конфигурирай го, накрай един от windows компютрите да използва seamlessrdp само за една сесия. И го покаже - страшно убедително е - хората си мислят, че са в НАСА (въпреки, че технологията, като идея е от началото на компютърните мрежи).
[Отговори на този коментар]
Много благодаря. !!! Убунту инфо !!! От: Yasen6275 <ohtya __@__ chem[ точка ]uni-sofia[ точка ]bg> На: 10-09-2006@12:23 GMT+2 Оценка: 1/НеутраленМного благодаря за информацията.
Бях тръгнал по следите на нещо подобно, но ми отне страшно много време поткарването на LTSP-то под (?)ubuntu дериватите.
Нали си спомняте старата максима "Направи нещо глупако устпйчиво и само глупаци ще го ползват". Почвам да мисля че ubuntu е точно такава глупако устойчива.
НЕ се опитвайтв да инсталирате LTSP по начина указан в предпоследния линк. Единственото което трябва да направите е:
1. Вдигате втория интерфейс, който ще ви свързва тънките клиенти,
2. Инсталирате ltsp-standalone пакета.
3. Рестартирате nfs-kernel-moduls, dhcpd i inetd
И имате работешто ЛТСП.
И много важно! НИКОГА не използвайте пакети от LTSP.org. Те не работят в убунту среда.
[Отговори на този коментар]
Към: Много благодаря. !!! Убунту инфо !!! От: alabal На: 10-09-2006@12:50 GMT+2 Оценка: 1/НеутраленРадвам се, че статията е била полезна за теб, но нали Ubuntu имат някаква дистрибуция с интеграция на K12 проект, подкрепян и донякъде съвместен с Ltsp?
[Отговори на този коментар]
Към: Към: Много благодаря. !!! Убунту инфо От: Yasen6275 <ohtya (a) chem__dot__uni-sofia__dot__bg> На: 11-09-2006@13:18 GMT+2 Оценка: 1/НеутраленДа но не се развива май. Сега имa edubuntu което си убунту с малко по захаросани иконки и цветове. Има и някакъв образователен софтуер, но от бързия преглед остан с впечатлението че е на ниво 3-6 клас.
[Отговори на този коментар]
Лицензи??Информация?? От: foxb На: 14-09-2006@13:48 GMT+2 Оценка: 1/НеутраленАко трябва да се инпoлзва 2003 сървър защо ще се използва LTSP?
Така или иначе трябва да се купят лицeнзи за Win 2003 CAL/Terminal serveices/Office 2003...
А клиента мойе да боотва по TFTP и да се свързва с W2003 - има специализирани дистрибуции за това...
[Отговори на този коментар]
Към: Лицензи??Информация?? От: alabal На: 15-09-2006@10:56 GMT+2 Оценка: 1/НеутраленТакааа, тежък въпрос с лесен отговор, но явно съм пропуснал да доопиша някои неща от средата.
Лицензите ги има - налице са, но е необходима лесна за конфигуриране среда, което с терминален клиент и Windows Serve 2003 мисля, че неизпълнимо.
Подобни са били идеите (за доста подобна среда ) и на фирмата разработила seamlessrdp.
Както казах изчисленията за алтернативите ще бъдат направени скоро.
[Отговори на този коментар] Към: Лицензи??Информация?? От: Yasen6275 <ohtya __@__ chem__dot__uni-sofia__dot__bg> На: 17-09-2006@19:05 GMT+2 Оценка: 1/НеутраленА ти опитвал ли си се да бутваш от вин по тфтп?
Аз съм наблюдавал опити. При положение че сървара и клиента са вързануи с кросовър кабел. зареждането отне близо 20 мин на 100 мб карти. На 10 мб ЛТСП-то се зарежда от клиента до логин прозорец за по малко от 3 мин.
[Отговори на този коментар]
Към: Към: Лицензи??Информация?? От: foxb На: 17-09-2006@22:52 GMT+2 Оценка: 1/НеутраленTFTP сървъри има и за windows, но ако прочетеш още веднъж моя коментар ще видиш, че пише специализирана дистрибуция, а не win - т.е. боотваш до мини линукс с RDP клиент.
Предимството е, че нямаш нужда от втора мощна машина за LTSP, а само файлов/тфтп сървър и вин сървър.
[Отговори на този коментар]
Не мога да го подкарам От: Gle <i_liketowin (a) mail __точка__ bg> На: 12-10-2007@8:53 GMT+2 Оценка: 1/НеутраленИ да се спукам пак не мога да накарам виртуалната машина да има пинг до хост машината.
qemu-system-x86_64 -no-acpi -no-kqemu -m 256 -boot c windows1.img -smp 2 -net user -net nic,model=rtl8139,macaddr=01:00:00:10:30:20 -net tap,ifname=tap0
тап0 има ip 192.168.10.1, зададен kato GW w windows guest с ip 192.168.10.10.
пинг никакъв в никаква посока.
[Отговори на този коментар]
|
|
|
|
|
|
|
|