Ltsp5 In Einer Stunde Zum Terminalserver

16
Über uns Über uns LTSP – In einer Stunde zum Terminalserver Rouven Sacha <[email protected]> Carsten Maass <[email protected]> Seit 1999 im Bereich Systemmanagement und Beratung im Linuxumfeld tätig Blinkenlichten GbR Mitbegründer der Open Source Bürogemeinschaft „Büro 2.0“ in Berlin Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

description

This presentation from Linuxtag 2009 describes how to get a Linux Terminal Server up and running in less then one hour using LTSp5.

Transcript of Ltsp5 In Einer Stunde Zum Terminalserver

Page 1: Ltsp5   In Einer Stunde Zum Terminalserver

Über unsÜber uns

LTSP – In einer Stunde zum Terminalserver

Rouven Sacha <[email protected]>

Carsten Maass <[email protected]>

→ Seit 1999 im Bereich Systemmanagement und Beratung im Linuxumfeld tätig

→ Blinkenlichten GbR

→ Mitbegründer der Open Source Bürogemeinschaft „Büro 2.0“ in Berlin

Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

Page 2: Ltsp5   In Einer Stunde Zum Terminalserver

Dies ist ein Live - HowtoDies ist ein Live - Howto

LTSP – In einer Stunde zum Terminalserver

Was erwartet Euch hier?

→ Kurze Einleitung ins Themengebiet Terminalserver

→ Live Installation eines Debian LTSP Servers

→ Booten zweier Thin Clients vom Terminalserver

→ Screencast und eventuell Video auf http://www.buero20.org/LT2009/ltsp/

Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

Page 3: Ltsp5   In Einer Stunde Zum Terminalserver

Was ist eigentlich so ein Terminalserver?Was ist eigentlich so ein Terminalserver?

LTSP – In einer Stunde zum Terminalserver

… und warum will ich sowas haben?

→ SadS: Software auf dem Server

→ Updatemanagement nur für einen Terminalserver

→ Ein Thin Client hat keine beweglichen Teile und kein OS!

→ Moderne Thin Clients haben ein Leistungsaufnahme unter 20W

Terminalserver = Dinosaurier des Cloud Computings :-)

Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

Page 4: Ltsp5   In Einer Stunde Zum Terminalserver

Kleine Historie des TerminalserversKleine Historie des Terminalservers

LTSP – In einer Stunde zum Terminalserver

… eine Reise ins Jahr 1978:

Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

ein Digital VT100 Terminal an einer VMS

Page 5: Ltsp5   In Einer Stunde Zum Terminalserver

Nachteile der X-Terminals – Entstehung des Linux Terminal Server ProjectsNachteile der X-Terminals – Entstehung des Linux Terminal Server Projects

LTSP – In einer Stunde zum Terminalserver

→ Keine Möglichkeit, lokale Geräte an den Terminals anzuschließen:

→ keine lokalen Drucker

→ kein Sound

→ kein USB-Storage

→ Entstehung des LTSP Projektes mit dem Ziel, die oben genannten Mängel

zu beheben

Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

Page 6: Ltsp5   In Einer Stunde Zum Terminalserver

Wie funktioniert eine LTSP-Sitzung?Wie funktioniert eine LTSP-Sitzung?

LTSP – In einer Stunde zum Terminalserver

→ LTSP ist ein Terminalserver für lokale Subnetze. Er versorgt die Thin Clients

→ mit einer Netzwerkkonfiguration um booten zu können

→ mit dem zu bootenden Kernel

→ mit einem angepaßten / Filesystem

Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

Page 7: Ltsp5   In Einer Stunde Zum Terminalserver

Eingesetzte TechnologienEingesetzte Technologien

LTSP – In einer Stunde zum Terminalserver

LTSP5

→ PXE – “Preboot Execution Environment“

→ Übermittlung der initialen Netzwerkkonfiguration mit Adresse des

TFP Servers

→ TFTP – „Trivial FTP“

→ Übertragung des zu bootenden Kernels

→ NFS/ NBD

→ Einbindung der Root Partition

Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

Page 8: Ltsp5   In Einer Stunde Zum Terminalserver

Energie!Energie!

LTSP – In einer Stunde zum Terminalserver

Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

host:~# apt-get install ltsp-server-standalone

host:~# ltsp-build-client --dist lenny --arch i386 –mirror http://localhost:9999/debian --security-mirror http://localhost:9999/security

LTSP Pakete installieren und initiales Client Chroot erzeugen:LTSP Pakete installieren und initiales Client Chroot erzeugen:

Page 9: Ltsp5   In Einer Stunde Zum Terminalserver

DHCP Konfiguration für PXE anpassenDHCP Konfiguration für PXE anpassen

LTSP – In einer Stunde zum Terminalserver

Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

authoritative;

subnet 192.168.99.0 netmask 255.255.255.0 { range 192.168.99.100 192.168.99.200; option domain-name "buero20.linuxtag"; option domain-name-servers 192.168.99.3; option broadcast-address 192.168.99.255; option routers 192.168.99.3; next-server 192.168.99.3;# get-lease-hostnames true; option subnet-mask 255.255.255.0; option root-path "/opt/ltsp/i386"; if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" { filename "/ltsp/i386/pxelinux.0"; } else { filename "/ltsp/i386/nbi.img"; }}

/etc/ltsp/dhcpd.conf:/etc/ltsp/dhcpd.conf:

Page 10: Ltsp5   In Einer Stunde Zum Terminalserver

Über unsÜber uns

LTSP – In einer Stunde zum Terminalserver

Rouven Sacha <[email protected]>Carsten Maass <[email protected]>

Seit 1999 Systemmanagement und Beratung für KMU auf der Linux-Plattform.Seit 2007 Mit-Initiatoren der Open Source Bürogemeinschaft „Büro 2.0“ in Berlin

Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

Page 11: Ltsp5   In Einer Stunde Zum Terminalserver

Das X-Window System und die X-TerminalsDas X-Window System und die X-Terminals

LTSP – In einer Stunde zum Terminalserver

… die Neunziger:

→ Einführung des TCP/IP basierten X-Window System (X11: 1987)

→ viele „billige“ X-Terminals an einer teuren Unix Workstation

Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

Page 12: Ltsp5   In Einer Stunde Zum Terminalserver

Was bootet der Client?Was bootet der Client?

LTSP – In einer Stunde zum Terminalserver

Minimalkonfiguration:

→ X

→ LDM (LTSP Display Manager

Beliebig viele „Local Apps“

→ lokalen Pulseaudio Server

→ Fuse Daemon, um lokale Storage Devices an den Server

durchzureichen

→ HP Jetdirect Emulation, um lokale Drucker über Port 9100 TCP

durchzuschleifen

Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

Page 13: Ltsp5   In Einer Stunde Zum Terminalserver

DHCP Konfiguration für PXE anpassenDHCP Konfiguration für PXE anpassen

LTSP – In einer Stunde zum Terminalserver

Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

host hp1 { hardware ethernet 00:21:5a:6f:d0:21; fixed-address 192.168.99.101;}

host igel1 { hardware ethernet 00:e0:c5:60:54:87; fixed-address 192.168.99.102;}

/etc/ltsp/dhcpd.conf Clientkonfiguration:/etc/ltsp/dhcpd.conf Clientkonfiguration:

Page 14: Ltsp5   In Einer Stunde Zum Terminalserver

DHCP Konfiguration für PXE anpassenDHCP Konfiguration für PXE anpassen

LTSP – In einer Stunde zum Terminalserver

Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

host:~# mv /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.orighost:~# ln -s /etc/ltsp/dhcpd.conf /etc/dhcp3/dhcpd.conf

/etc/default/tftp-hpa:RUN_DAEMON="yes"

/etc/inetd.conf:#tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /var/lib/tftpboot

/etc/exports:/opt/ltsp *(ro,no_root_squash,async,no_subtree_check)

host:~# /etc/init.d/openbsd-inetd restarthost:~# /etc/init.d/tftpd-hpa restarthost:~# /etc/init.d/dhcp3-server restart

LTSP DHCP, tftpd und NFS aktivieren und neu starten:LTSP DHCP, tftpd und NFS aktivieren und neu starten:

Page 15: Ltsp5   In Einer Stunde Zum Terminalserver

Clients konfigurierenClients konfigurieren

LTSP – In einer Stunde zum Terminalserver

Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

/opt/ltsp/i386/etc/lts.conf

[default] SOUND = True LOCALDEV = True X_COLOR_DEPTH = 16 CONSOLE_KEYMAP = de XKBLAYOUT = de XKBMODEL = pc105 XKBVARIANT = nodeadkeys

[00:21:5a:6f:d0:21] XSERVER = radeonhd X_COLOR_DEPTH = 24 X_MODE_0 = 1280X960 #X_CONF = /etc/X11/xorg-radeon.conf LDM_DIRECTX = True

LTSP Boottime variablen für Clients übergebenLTSP Boottime variablen für Clients übergeben

Page 16: Ltsp5   In Einer Stunde Zum Terminalserver

Clients konfigurierenClients konfigurieren

LTSP – In einer Stunde zum Terminalserver

Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin

adduser carsten fuse

Terminalserver user für die Fuse Unterstützung aktivierenTerminalserver user für die Fuse Unterstützung aktivieren