STŘEDOŠKOLSKÁ ODBORNÁ ČINNOST Obor SOČ: 18. Informatika Školní sdílení PC obrazovek School sharing PC screens Autoři: Vojtěch Průša Škola: Střední průmyslová škola elektrotechnická Havířov Konzultant: Ing. Ladislav Opiol Havířov 2013
Prohlášení Prohlašuji, že jsem svou práci vypracoval(a) samostatně, použil(a) jsem pouze podklady (literaturu, SW atd.) uvedené v přiloženém seznamu a postup při zpracování a dalším nakládání s prací je v souladu se zákonem č. 121/2000 Sb., o právu autorském, o právech souvisejících s právem autorským a o změně některých zákonů (autorský zákon) v platném znění. V dne podpis:
Poděkování. Děkuji Ladislavu Opiolovi za obětavou pomoc a podnětné připomínky, které mi během práce poskytoval. Anotace Programy pro sdílení obrazovek existují, ale postrádají možnost efektivního využití ve školách. Zde učitel často potřebuje sledovat, jak žáci pokročili s prací a v dnešním uspořádání počítačových souprav v učebnách musí často chodit po třídě a při testech nemá dostatečnou jistotu, že studen nebude kopírovat soubory z PC. Sdílení obrazovek PC ve školách umožní rychlou kontrolu práce studentů, případně kontrolu obrazovek po celé školní síti. Klíčová slova: sdílení obrazovek, kontrola studentů, software, sítě
Obsah: Úvod 1 Instalace 1. 1 Server 1. 1. 1 Spuštění instalačního programu serveru - Linux 1. 1. 2 Spuštění instalačního programu serveru - Windows 1. 2 Klient 1. 2. 1 Výběr klienta k PC 1. 2. 2 Nastavení defaultních hodnot 2 Spouštění 2. 1 Server 2. 1. 1 Linux
2. 1. 2 Windows 2. 2 Klienti 2. 2. 1 Automatické spouštění a přihlašování 2. 2. 2 Ruční spouštění, změna přednastavené konfigurace 3 Princip 3. 1 Popis principu klient server 3. 2 Struktura 3. 2. 1 Server 3. 2. 2 Klient 3. 3 Systém skupin klientů 3. 3. 1 Dočasné skupiny 3. 3. 1 Trvalé skupiny 3. 2 Komunikace získání a odeslání dat 3. 3 Pravomoc klientů defaultní nastavení, změna 4 Ovládání 4.1 Server 4. 1. 1 Linux 4. 1. 2 Windows 4. 2 Klient 4. 2. 1 Skrytý 4. 2. 2 Master 4. 2. 3 Multi-klient
Úvod Školní sdílení PC obrazovek (ŠSO) je program pro sdílení obrazovek, jak na školních počítačích, tak na pracovištích, případně také na soukromých PC pro sdílení informací. Zjednoduší kontrolu práce studentů nebo zaměstnanců. Podobné programy již napsány jsou avšak pouze pro soukromé firmy, které tímto kontrolují své zaměstnance, případně mají některé funkce placené. Napsaný v programovacím jazyce Java. K realizaci je nutné mít nainstalován virtuální stroj Javy (JVM) na všech počítačích, který tento program obsluhuje. Java je již na většině PC již několik let naplno využívaná například v Appletech, na webových serverech, kde na ní běží Servelty, ořezané verze javy jsou také na mobilní zařízení. Server je možné realizovat na Linux i na Windowsu, klientskou část pouze na Windowsu, avšak grafiku serverové části lze spustit v každém prostředí, kde je java nainstalovaná a podporuje ji (grafické rozhraní Linuxu). Při instalaci je možné vybrat automatické zapnutí jak serveru, tak klienta. Kdy se, klient a server automaticky po spuštění počítače zapnout. Klient se poté bude pokoušet připojit na server, dokud se mu to nepovede nebo se nevypne PC. Defaultní nastavení umožňuje jednoduchou obsluhu i pro ty co s PC nejsou nijak zdatní; po prvotní instalaci a konfiguraci je program samostatný(instalace viz. níže). Tímto lze dosáhnout větší, kontroly nad tím, jak se studentům daří práce, aniž by musel učitel obcházet třídu. Další využití je na soukromých PC, kde je možné sdílet data. Je zde možnost program využít také jako Chat.
1 Instalace Instalační program obsahuje všechny soubory, které extrahuje a nakonfiguruje dle parametrů zadaných při instalaci. Parametry jsou nastaveny jako defaultn vždy po spuštění, není-li nastaveno jinak se s nimi program spustí. 1. 1 Server Server lze nainstalovat na Linux i na Windows - Windows server obsahuje grafické rozhraní a je určen spíše pro krátkodobé využití, s možností sledování obrazovek klientů. Toto nicméně zatěžuje server a je možné, že způsobí zpomalení přenosu dat. Proto se doporučuje otevřít klienta, připojit se k serveru s Master účtem a sledovat obrazovky přes něj.
Viz. Ovládání 4. 1. 1. - Linux server slouží pro dlouhodobé zapnutí. Obsluhuje se z příkazové řádky, případně přes vzdáleného Master klienta. 1. 1. 1 Spuštění instalačního programu serveru Linux Server se extrahuje do nově vytvořené složky SV, v adresáři s instalačním Defaultně zde lze nastavit port. programem. Zapnout lze program z příkazové řádky, doporučuje se zapnout ho na pozadí. (Viz 2. 1. 1 Linux ) 1. 1. 2 Spuštění instalačního programu serveru Windows Viz. 1. 1. 1 Spuštění instalačního programu serveru Linux, s rozdílem spouštění. Přidána možnost automatického spouštění programu při zapnutí PC, lze nastavit také spouštění s nebo bez grafiky. Program lze také spustit ručně, dvojklikem, kdy se otevře grafické rozhraní. 1. 2 Klient Druhy defaultního nastavení klienta: - Schovaný - Zobrazený - Multi-klient -> lze použít jako server/klient 1. 2. 1 Výběr klienta k PC Klienti se rozdělují, dle toho, jsou li ovládáni serverem nebo ne. Schovaný klient při spuštění, se nezobrazí jeho grafika, do doby než ze serveru přijde žádost o zobrazení grafiky, tu může poslat jen Master klient nebo vlastník skupiny (GroupMaster) klient, tito 2 klienti také mohou grafiku vypnout, po vypnutí klienta se nastavení zresetuje a při dalším spuštění je grafika klienta opět vypnutá. Lze nastavit automatické zapnutí při startu PC a následná snaha připojit se na přednastavený server.
Zobrazený klient má defaultně nastaveno zobrazení při startu programu, může se dále nastavit spuštění programu při startu PC a automatický pokus o se serverem. spojení 1. 2. 2 Nastavení defaultních hodnot Vysvětlivky k defaultním hodnotám: - IP IP adresa na kterou se klient přihlásí - Port v případě servru se jedná o port, na který se bude přihlašovat klient - Port - v případě klienta se jedná o port serveru na který se klient přihlásí - GroupID defaultní unikátní ID skupiny do které se klient přihlásí 1. -1 nová skupina, při vytvoření se vypíše její ID 2. jiná čísla přihlásí se do vytvořené skupiny 3. název skupiny přihlásí se do trvalé skupiny (viz 3. 3. 1 Trvalé skupiny) 2. 1 Server Start serveru záleží na OS, na kterém běží a na nastavení viz. Defaultní nastavení serveru. Jako první se na obou OS načte config, poté trvalé skupiny a uživatelské nastavení. 2. 1. 1 Linux Server na linuxu se zapne z příkazové řádky Př.: java -jar sv.jar -9800 Multi-klient lze zapnout jako server z příkazové řádky, kdy se musí zadat parametr typu spuštění: Př.: java -jar sv.jar -s -9800 - není-li zadán parametr (-port nebo -s) zapne se server s defaultním nastavením, zadaným při instalaci 2. 1. 2 Windows
1) Multi-klient možnost výběru server/klient 2) Tlačítko Connect/Start/Disconnect/Stop Ovládání spojení 3) Přihlašovací údaje User: 1. User uživatelské jméno unikátní ve skupině 2. Pass heslo skupiny 3. IP - IP adresa serveru k přihlášení 4. Port Port serveru 4) Rychlost FPS / Čas trvání cyklu přenosu dat 5) GroupID identifikace skupiny 6) Výstup programu Chat / Systémová hlášení 7) Seznam klientů / Seznam klientů ve skupině 8) Vstupní pole pro Chat / Příkazová řádka (Viz. 4. 1. 2 Windows) 9) Tlačítko Send pro odeslání z 8), reaguje i na klávesu Enter Jednotlivé body se mohou lišit v závislosti na typu klienta, základ však zůstává stejný
Při spuštění tohoto klienta z příkazové řádky se zadává bez parametrů. S může spustit Server/Schovaný klient/linux server parametry se 2. 2 Klienti Každý typ klienta má svoje specifické vlastnosti, pro skrytého klienta je například specifické, že se při startu nezobrazí jeho grafická ovládací stránka. Naopak u multi-klienta, který lze zároveň použít jako server, je grafika neustále zapnutá. 2. 2. 1 Automatické spouštění a přihlašování Automatické spouštění se nastavuje při instalaci případně v pozdější konfiguraci. Toto lze udělat buď přímo na daném PC nebo přes jiného pravomocně silnějšího klienta, případně přímo na serveru. Viz. 1. 1. 1 Spuštění instalačního programu serveru Linux a 1. 1. 2 Spuštění instalačního programu serveru Windows 2. 2. 2 Ruční spouštění, změna přednastavené konfigurace 3 Princip Ruční spouštění znamená spustit program, nastavit přihlašovací údaje a připojit se (jedná-li se o klienta s grafikou). Změna přednastavené konfigurace se provádí v grafickém rozhraní klienta nebo ve složce SV v souboru config.txt. Server lze nakonfigurovat na Master nebo Slave. Je-li server Master, pak má možnost přepsat konfiguraci na klientské straně. Je-li server Slave, tuto možnost postrádá a může konfigurovat jen data v sobě obsažená. 3. 1 Popis principu klient server Školní sdílení PC obrazovek pracuje na principu klient-server, kde se server stará o požadavky klienta a na daný požadavek odešle daná data. Data obrazovky přeposílá automaticky. 3. 2 Struktura Server obsahuje 2 základní části: 1. část se stará o nově připojené klienty. Jedná se o samostatné vlákno s nekonečnou smyčkou. Po přijmutí nového klienta, se zkontroluje správnost přihlašovacích údajů. Souhlasí-li vytvoří se nové vlákno které obsluhuje příjem dat od klienta.
2. část se stará o obsluhu příjmu klientských dat samostatné vlákno, které naslouchá vstupnímu proudu dat. Objeví-li se zde data, přijme je a zpracuje, dle typu přijatých dat. Zpracování dat probíhá kontrolou komu jsou určena, mají-li k nim daní koncový uživatelé pravomoc a má-li odesilatel pravomoc tyto data přeposlat (viz. Pravomoci). 3. 2. 2 Klient Při spuštění se vytvoří několik procesů, které se starají o: příjem dat, grafiku, snímání obrazovky, odesílání obrazovky. Přijatá data jsou rozdělena podle odesilatele. Jedná-li se o obrazovku, je otevřeno nové okno a zobrazena přijatá obrazovka. 3. 3 Systém skupin klientů Klienti jsou na serveru rozděleni do skupin, každé uživatelské jméno smí být v dané skupině jen 1x aby nedošlo k zaměnění přeposlaných dat. K tomu je použita podmínka při přihlášení uživatele. Přeposílání dat je vždy jen v rámci dané skupiny. Pro odesílání dat obrazovky do více skupin je nutné otevřít nového klienta a přihlásit se do dané skupiny. 3. 3. 1 Dočasné skupiny Skupiny klientů, které po odchodu posledního klienta ze skupiny jsou zrušeny. 3. 3. 1 Trvalé skupiny Skupiny, které jsou vytvořeny při startu serveru s daným unikátním názvem. Jejich konfigurace je načtena ze souboru. Po odchodu posledního uživatele skupiny tyto skupiny zůstávají. Při změně jejich konfigurace se jejich vlastnosti ukládají. 3. 2 Komunikace získání a odeslání dat Data klient a server odesílá pomocí Datového a Objektového toku. Objektový tok je používán pro komunikaci na velikostně nízko datové prostředky zpráva, konfigurace, poloha myši, atp. Datový tok se využívá jen pro odesílání a příjem dat obrazu obrazovky. Důvod je lepší jednodušší práce s daty a zároveň vyšší rychlost přenosu obrazu.
Kombinace těch to dvou způsobů je z důvodu kombinace rychlosti přenosu snadnému přístupu k méně velikostně náročným objektům. velkých dat a 3. 3 Pravomoc klientů defaultní nastavení, změna Pravomoci klientů jsou defaultně nastaveny, již v samotném programu, jejich změna je ukládána na serveru do souboru, jedná-li se o konfiguraci pravomocí trvalých skupin. Defaultní nastavení lze změnit v konfiguračním souboru serveru nebo pomocí příkazů Viz. 4 Ovládání. 4 Ovládání Ovládání je buďto přes příkazovou řádku nebo grafickou stránku klienta. Toto je závislé na typu klienta a serveru. Přes příkazovou řádku se klient nebo server ovládá danými příkazy, ostatní a nesprávné jsou ignorovány je vypsané chybové hlášení. Grafické: Označit lze více klientů na jedno přidržením klávesy CTRL.
1) Zobrazí obrazovky všech označených klientů 2) Zobrazí dialog ve vstupní liště pro napsání soukromé zprávy 3) Vyhodí klienta ze skupiny, doporučuje se nejprve změnit heslo skupiny 4) Zobrazí jedinou obrazovku klienta 4.1 Server Server lze ovládat v závislosti na typu OS, na kterém běží. 4. 1. 1 Linux Ovládá se pomocí příkazové řádky: - exit vypne program 4. 1. 2 Windows Ovládá se pomocí grafického rozhraní, případně příkazové řádky. Příkazy se shodují s příkazy v 4. 1. 1 Linux Viz také. 2. 1. 2 Windows 4. 2 Klient Ovládání pomocí grafické stránky programu nebo příkazy. Příkazy se dají rozdělit na Commands a Request, kdy Commands jsou všechny z příkazové řádky a Request jsou systémové, které však koncový klient nemusí vyslyšet. 4. 2. 1 Skrytý Jen v případě, povolil-li Master skupiny u daného uživatele grafiku, zobrazí se klientovi. Viz. 4. 2 Klient 4. 2. 2 Master
Master skupiny nastavuje pravomoci skupiny, má možnost získat informace o ostatních členech skupiny a to i jejich aktuální obrazovku. Ovládání grafickým rozhraním. 4. 2. 3 Multi-klient Jedná se o program, ve kterém při spuštění můžete na OS Windows nastavit, zda se chcete připojit k již existujícímu serveru nebo vytvořit server nový. Viz. 2. 1. 2 Windows