Blog (2)
Komentarze (6)
Recenzje (0)
@Admin_RossiLTSP — X terminale w wydaniu open source!

LTSP — X terminale w wydaniu open source!

16.04.2016 | aktual.: 17.04.2016 23:57

Witam

W tym wpisie chciałbym choć troszkę przybliżyć działanie dość ciekawego projektu.Jest nim Linux Terminal Server Project, który w sposób znaczący ogranicza wydatki na sprzęt w firmach. Dlaczego? Ponieważ do uruchomienia klienta wystarczy nam dowolne MiniPC czy kilkuletni komputer.

Osobiście jestem bardzo początkującym użytkownikiem Linuxa(w sumie nowa praca mnie do tego zmusiła na co wcale nie narzekam :‑) ), więc proszę o dystans do mojego podejścia do tematu.

Ważne

Pomijam w tym wpisie procesy elementarne np. ustawianie statycznego adresu ip dla interfejsu, tablice routingu itp. Zakładam,że każdy użytkownik zabierający się za konfigurację serwera terminalowego nie ma z tym większego problemu :)

Środowisko!

PC z Ubuntu 14.04 64bit Intel NUC Kit DN2820FYK Switch TP‑LINK TLSG-108

Porada

Pierwszą instalację oraz konfigurację polecam zrobić na wersji jądra 4.x

Dlaczego?

Ponieważ wersje niższe potrafią odmawiać posłuszeństwa we współpracy z niektórymi MiniPC. W komputerach stacjonarnych nie zauważyłem tej nieprawidłowości. Dla takich MiniPC w wersji jądra poniżej 4 trzeba tworzyć profile oraz kojarzyć je  z urządzeniami, co w tej części wpisu wolał bym uniknąć.

Od słów do czynów!

To co musimy mieć zainstalowane na swojej dystrybucji to:

TFTP:  [code=bash]sudo apt‑get install tftp[/code]

NFS:  [code=bash]sudo apt‑get install nfs‑common[/code]

DHCP:  [code=bash]sudo apt‑get install isc‑dhcp-server[/code]

SSH: [code=bash]sudo apt‑get install openssh-server[/code]

Konfiguracja DHCP

Polecam konfigurację rozpocząć od ustawienia interfejsu na adres statyczny. W moim przypadku to będzie: 192.168.0.1/24. Następnie polecam usunąć powstały na skutek instalacji podstawowy plik konfiguracyjny poleceniem:

sudo rm -r /etc/dhcp/dhcpd.conf

Utworzenie pustego:

sudo touch /etc/dhcp/dhcpd.conf

Oraz edycję:

sudo nano /etc/dhcp/dhcpd.conf

A tu przedstawiam przykładową konfigurację której sam używałem:


subnet 192.168.0.0 netmask 255.255.255.0 {
    range 192.168.0.20 192.168.0.40;
    option domain-name "przyklad.pl";
    option domain-name-servers 8.8.8.8;
    option broadcast-address 192.168.0.255;
    option routers 192.168.0.1;
    next-server 192.168.0.1;
#    get-lease-hostnames true;
    option subnet-mask 255.255.255.0;
    option root-path "/opt/ltsp/amd64";
    if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" {
        filename "/ltsp/amd64/pxelinux.0";
    } else {
        filename "/ltsp/amd64/nbi.img";
    }
}

Trzeba pamiętać o wybraniu domyślnego interfejsu w pliku:

sudo nano /etc/default/isc-dhcp-server

Znajdujemy linię:

Interfaces = "" <- i tu wpisujemy nazwę naszego interfejsu.

No i teraz to co najciekawsze!

Instalację odpowiednich pakietów oraz wstępną konfigurację rozpoczynamy poleceniem:

sudo apt-get install ltsp-server-standalone

A tą komendą "zbudujemy cienkiego klienta":

sudo ltsp-build-client 

Zróbmy sobie przykładowego użytkownika o nazwie test

sudo adduser test

W ten sposób mamy poprawnie skonfigurowane podstawowe środowisko! Poprawne bootowanie:

Przykład bootowania.
Przykład bootowania.

Aby je przetestować należy połączyć serwer z klientem przy pomocy switcha oraz podziwiać oto taki widok:

Tak powinno wyglądać nasze pierwsze logowanie!
Tak powinno wyglądać nasze pierwsze logowanie!

A teraz troszkę teorii, która pozwoli nam lepiej zrozumieć istotę samego projektu. Klienci logują się do swoich kont za pomocą kont lokalnych w standardowej konfiguracji.Wszystkie działania wykonywane są na serwerze, a tylko wyniki w postaci x‑ów przesyłane są do terminali. Stacje takie nie muszą posiadać dysku! Wszystko przechowuje się na serwerze. Daje nam to bardzo dużą kontrolę nad użytkownikami w naszej sieci oraz bardzo ogranicza koszt sprzętu, kiedy potrzebujemy zwiększyć liczbę stanowisk. Samo uruchomienie usługi w środowisku testowym daje sporo frajdy.

Zdaje sobie sprawę z częściowo chaotycznego i okrojonego charakteru tego wpisu. Jestem praktykiem, więc sam nie lubię wychodzić poza zbędne minimum teorii.Specjalnie nie zamieszczałem zbyt wielkiej ilości treści z wikipedii, ponieważ jest to na wyciągnięcie ręki. Wpisy będą kontynuowane więc sądzę, że na sam początek to wystarczy.

Czekam na opinie oraz opisy. W razie jakichkolwiek problemów pozostaję do dyspozycji.

have fun!

PS: Dla leniwców :)

Wybrane dla Ciebie
Komentarze (5)