Kirjoittaja Aihe: LTSP ja Ubuntu Breezy 5.10 (Intel x86) - osat 1-4  (Luettu 12273 kertaa)

Asmo Koskinen

  • Käyttäjä
  • Viestejä: 4443
    • Profiili
LTSP ja Ubuntu Breezy 5.10 (Intel x86) - osa 1

 - Tulostettava versio ilman kuvia -
 - http://www.arkki.info/howto/LTSP_Ubuntu/Ohje_LTSP_Ubuntu_Breezy_5.10.pdf -

---

Huomautus: LTSP on mahdollista asentaa käyttäen Ubuntun Breezyn omia ltsp-paketteja (ltsp-server, ltsp-server-standalone ja
ltsp-utils) Merkittävin muutos on, että tftpd-hpa-palvelu käynnistyy inetd-palvelulla - asennettu paketti on tällöin netkit-inetd; ei xinetd, kuten tässä ohjeessa. Muiden palvelujen (dhcp3-server, nfs-kernel-server, tftpd-hpa, gdm jne) osalta tämä ohje pätee.

---

Tämä ohje kertoo, kuinka Linux Terminal System Project-järjestelmä saadaan toimimaan Ubuntu Linuxissa niin, että päätteissä on mahdollista käsitellä ja käyttää myös multimediaa tavanomaisten toimisto-ohjelmien lisäksi. Tässä ohjeessa kerrotaan myös, kuinka USB-väylää käyttäviä oheislaitteita voidaan käyttää päätteissä.

Tämä ohje ei ole askel askeleelta ja kädestä pitäen etenevä, vaan paremminkin muistio (myös itselleni) niille, joille Ubuntu Linuxin asennus ja käyttö verkkoympäristössä on jo ennestään tuttua. Esimerkiksi komentorivin käyttöä ei sen kummemmin opasteta; komentorivin käskyt, editorit ynnä muu sellainen tulisi olla ennestään tuttua.

Tämä ohje on tarkoitettu LTSP-järjestelmän ylläpitäjille. LTSP-järjestelmän käyttäjän ei tarvitse tietää purkkavirityksistä (joita tämäkin ohje sisältää); käyttäjä vain käyttää LTSP-järjestelmää.

1. Ohjeesta

Tässä ohjeessa ei kerrota esimerkiksi seuraavia asioita: Miten Ubuntu Linux asennetaan? Miten lähiverkko määritellään? Miten reititin, kytkin tai palomuuri asennetaan? Miten Ubuntu Linuxiin asennetaan ohjelmia eri lähteistä ja miten lähteitä lisätään Ubuntu Linuxiin? Miten LTSP:n omat paketit haetaan, puretaan tai asennetaan? Miten Ubuntu Linuxiin asennetaan ohjelmia paketinhallinnan ulkopuolelta? Miten käyttäjiä lisätään ja hallinnoidaan Ubuntu Linuxissa?

Tässä ohjeessa sitä vastoin kyllä kerrotaan, miten Ubuntu Linuxissa LTSP-järjestelmä saadaan toimimaan multimediaa myöten.

LTSP-asennus tehdään toimivaan ja päivitettyyn Ubuntu Linuxiin. Asennuksessa ei huomioida KDE-työpöytäympäristöä. Ohje on tarkoitettu Gnome-työpöytäympäristöön.

Ubuntu Linuxin ltsp-paketeista asennetaan aluksi vain ltspadmin-paketti, ei muita ltsp-paketteja. Vasta lopuksi asennetaan ltsp-server-paketit ssh-putkitusta varten.

Äänet vaativat lisäpakettien asentamista LTSP-sivustolta. Usb-väylä vaatii lisäpaketin asentamista Unicolet.org-sivustolta.

Kolme tärkeintä lähdettä näille ohjeille ovat olleet LTSP:n Wiki, LTSP:n sähköpostilista sekä Ubuntu Linuxin Wiki. Toki myös Google on ollut korvaamaton apu.

2. Kuvia päätteistä

Kuva 1: Kuvassa on kannettava, johon on liitetty skanneri, web-kamera, hiiri ja mp3-soitin, jota voi myös käyttää muistitikkuna. Nämä kaikki ovat usb-väylissä. Ubuntu tunnistaa tällaiset laitteet varsin hyvin työasemakäytössä. Kannettava toimii tämän ohjeen verkkoympäristössä LTSP-palvelimena.

http://www.arkki.info/howto/LTSP_Ubuntu/LTSP_USB_Hiiri_Skanneri_Web-kamera_Muvo.png

Kuva 2: Kuvassa on Jammin 225-pääte, johon on liitetty Wacom-piirtopöytä (usb). HP Vectra-pääte on perinteinen PC muutamien vuosien takaa. Päätteiden takana on Linksys WRT54G-reititin (palomuuri), joka toimii myös kytkimenä ohjeen verkkoympäristössä. Internet-yhteys on toteutettu ADSL-modeemilla.

http://www.arkki.info/howto/LTSP_Ubuntu/Jammin_Wacom_01.png
http://www.arkki.info/howto/LTSP_Ubuntu/Jammin_Wacom_02.png

Kuva 3: Sekä Jammin 225-pääte että HP Vectraan voidaan liittää Haman ”9in1” muistikortinlukija. Käytössä on 1 Gt:n CF-kortti.

http://www.arkki.info/howto/LTSP_Ubuntu/HP_Vectra_Usb_01.png
http://www.arkki.info/howto/LTSP_Ubuntu/Hama_Compact_Flash.png

3. Ruutukaappauksia

Kuva 1: Soikko toimii Firefox-selaimessa. Tästä on hyötyä, kun kirjoitetaan esimerkiksi Internetin foorumeille.

HP Vectra.

http://www.arkki.info/howto/LTSP_Ubuntu/Ltsp-Ubuntu-Breezy-001.png

Kuva 2: Digi-kameraa ei tarvitse liittää päätteeseen. Riittää, että päätteeseen liitetään usb-väylän muistikortinlukija.

HP Vectra.

http://www.arkki.info/howto/LTSP_Ubuntu/Ltsp-Ubuntu-Breezy-002.png

Kuva 3: Kaikkien päätteiden käytössä on Java (JRE). OpenOffice.org 2.0.1 tarvitsee myös Javaa, jotta se toimisi kaikilta osiltaan. Erityisesti tietokanta-sovellus Base vaatii Javaa.

HP Vectra.

http://www.arkki.info/howto/LTSP_Ubuntu/Ltsp-Ubuntu-Breezy-003.png

Kuva 4: Soikko toimii luonnollisesti OpenOffice.org 2.0.1-ohjelmassa.

HP Vectra.

http://www.arkki.info/howto/LTSP_Ubuntu/Ltsp-Ubuntu-Breezy-004.png

Kuva 5: Flash toimii päätteissä, myös äänten osalta, mutta vaatii hieman säätöä.

HP Vectra.

http://www.arkki.info/howto/LTSP_Ubuntu/Ltsp-Ubuntu-Breezy-005.png

Kuva 6: MPlayer-ohjelman avulla onnistuu nettiradioiden kuuntelu.

HP Vectra.

http://www.arkki.info/howto/LTSP_Ubuntu/Ltsp-Ubuntu-Breezy-006.png

Kuva 7: XMMS-ohjelmalla voidaan kuunnella omia CD-levyjä lähiverkossa tai LTSP-palvelimelta.

HP Vectra.

http://www.arkki.info/howto/LTSP_Ubuntu/Ltsp-Ubuntu-Breezy-007.png

Kuva 8: Päätteiden yhteydet on suojattu lähiverkossa ssh-yhteydellä.

HP Vectra.

http://www.arkki.info/howto/LTSP_Ubuntu/Ltsp-Ubuntu-Breezy-008.png

Ubuntu Linuxia voidaan laajentaa asentamalla meta-paketti-kokonaisuuksia. Näitä ovat ”edubuntu-desktop”, ”kubuntu-desktop” ja ”xubuntu-desktop”. Seuraavissa ruutukaappauksissa ympäristönä ”Edubuntu”. Kuvassa päätteeltä avataan palvelimella oleva skanneri.

Jammin 225.

http://www.arkki.info/howto/LTSP_Ubuntu/Edubuntu_01.png

Kuvassa päätteeltä avataan palvelimella oleva skanneri.

Jammin 225.

http://www.arkki.info/howto/LTSP_Ubuntu/Edubuntu_02.png

Kuvassa ohjataan palvelimella olevaa web-kameraa (usb).

Jammin 225.

http://www.arkki.info/howto/LTSP_Ubuntu/Edubuntu_03.png

Kuvassa ohjataan palvelimella olevaa web-kameraa (usb).

Jammin 225.

http://www.arkki.info/howto/LTSP_Ubuntu/Edubuntu_03b.png

Nettiradiota voidaan kuunnella myös XMMS-ohjelmalla.

Jammin 225.

http://www.arkki.info/howto/LTSP_Ubuntu/Edubuntu_04.png
 
Digi-kameraa ei tarvitse liittää päätteeseen. Riittää, että päätteeseen liitetään usb-väylän muistikortinlukija.

Jammin 225.

http://www.arkki.info/howto/LTSP_Ubuntu/Edubuntu_05.png

Flash toimii päätteissä, myös äänten osalta, mutta vaatii hieman säätöä.

Jammin 225.

http://www.arkki.info/howto/LTSP_Ubuntu/Edubuntu_06.png

MPlayer osaa näyttää ja soittaa (plug-in) esimerkiksi yleisradion uutislähetyksiä.

Jammin 225.

http://www.arkki.info/howto/LTSP_Ubuntu/Edubuntu_07.png
« Viimeksi muokattu: 22.01.06 - klo:15.58 kirjoittanut Asmo Koskinen »

Asmo Koskinen

  • Käyttäjä
  • Viestejä: 4443
    • Profiili
LTSP ja Ubuntu Breezy 5.10 (Intel x86) - osa 2
« Vastaus #1 : 16.01.06 - klo:22.10 »
LTSP ja Ubuntu Breezy 5.10 (Intel x86) - osa 2

4. Lähiverkko

LTSP-järjestelmän lähiverkko tulee olla palomuurin takana. LTSP-palvelimelle ei tarvitse asentaa erikseen palomuuria.

Internet

|

ADSL-modeemi

|

192.168.1.57/255.255.255.248

Reititin, palomuuri, kytkin

192.168.1.1/255.255.255.0

Palvelin        | Pääte           | Pääte

192.168.1.2 | 192.168.1.3 | 192.168.1.4
ubuntu         | ws003          | ws004

5. Pakettien lähteet

Tässä ohjeessa on käytetty seuraavia lähteitä Ubuntu Linuxin omia paketteja varten.

deb http://fi.archive.ubuntu.com/ubuntu breezy main restricted
deb-src http://fi.archive.ubuntu.com/ubuntu breezy main restricted

deb http://fi.archive.ubuntu.com/ubuntu breezy-updates main restricted
deb-src http://fi.archive.ubuntu.com/ubuntu breezy-updates main restricted

deb http://fi.archive.ubuntu.com/ubuntu breezy universe multiverse
deb-src http://fi.archive.ubuntu.com/ubuntu breezy universe multiverse

deb http://security.ubuntu.com/ubuntu breezy-security main restricted
deb-src http://security.ubuntu.com/ubuntu breezy-security main restricted

deb http://security.ubuntu.com/ubuntu breezy-security universe multiverse
deb-src http://security.ubuntu.com/ubuntu breezy-security universe multiverse

deb http://packages.freecontrib.org/ubuntu/plf/ breezy free non-free
deb-src http://packages.freecontrib.org/ubuntu/plf/ breezy free non-free

6. Asenna ltspadmin-paketti

Asenna ltspadmin-paketti ja aja se. Asenna kuitenkin ennen sen ajamista  tarvittavat muut palvelut. Katso tarkemmin LTSP:n Wikin Debian-asennuksesta mallia.

http://wiki.ltsp.org/twiki/bin/view/Ltsp/Debian

Katso lopussa olevat kuvakaappaukset Webmin-ohjelmasta, jonka avulla voidaan muuttaa asetuksia tarpeen mukaan eri palveluissa.

7. IP-numeroiden jakaminen päätteille

Tässä ohjeessa on käytetty dhcp-palveluna pakettia nimeltään ”dhcp3-server”. Kun lopuksi on asennettu ”ltsp-server”-paketit Ubuntu Linuxin paketinhallinnasta, niin sen jälkeen käytössä on tiedosto ”/etc/ltsp/dhcpd.conf”; siihen saakka ”/etc/dhcp3/dhcpd.conf”. Tämä pitää huomioida testauksessa.

/etc/dhcp3/dhcpd.conf = /etc/ltsp/dhcpd.conf

# /etc/dhcp3/dhcpd.conf = /etc/ltsp/dhcpd.conf

ddns-update-style            none;

default-lease-time           21600;
max-lease-time               21600;

option subnet-mask           255.255.255.0;
option broadcast-address     192.168.1.255;
option routers               192.168.1.2;
option domain-name-servers   192.168.1.2;
option domain-name           "ubuntu";

option root-path             "192.168.1.2:/opt/ltsp/i386";

option option-128 code 128 = string;
option option-129 code 129 = text;

subnet 192.168.1.0 netmask 255.255.255.0 {
    use-host-decl-names      on;
    option log-servers       192.168.1.2;

# 192.168.1.3
# ws003
# Jammin 225

host ws003 {
    hardware ethernet    00:50:41:03:9F:85;
    fixed-address        192.168.1.3;
    filename             "/lts/2.6.9-ltsp-3/pxelinux.0";
    }
   
# 192.168.1.4
# ws004
# HP Vectra

host ws004 {
        hardware ethernet    00:01:03:15:8D:BE;
   fixed-address        192.168.1.4;
   if substring (option vendor-class-identifier, 0, 9) = "PXEClient"
   {
   filename          "/lts/eb-5.4.0-3c90x.zpxe";
   }
   else
   {
   filename          "/lts/vmlinuz-2.6.9-ltsp-3";
   option vendor-encapsulated-options 3c:09:45:74:68:65:72:62:6f:6f:74:ff;
   }
    }
   
}

8. Kernelin jakaminen päätteille

Tässä ohjeessa on käytetty tftp-palveluna pakettia nimeltään ”tftpd-hpa”. Tftp-palvelu käynnistyy xinetd-palvelun avulla, paketti on nimeltään ”xinetd”. Sen asetustiedostoihin pitää kuitenkin lisätä puuttuva tftp-tiedosto.

# /etc/xinetd.d/tftp

service tftp
  {

   disable                 = no
   socket_type             = dgram
   wait                    = yes
   user                    = root
   server                  = /usr/sbin/in.tftpd
   server_args             = -v -s /var/lib/tftpboot
   interface           = 192.168.1.2
  }

Kernelin jakaminen päätteille tapahtuu verkkokorttien avulla (PXE). Palvelimella on hakemisto /var/lib/tftpboot, joka sisältää tarvittavat kernelit ja niiden lataukseen tarvittavat tiedostot.

asmok@ubuntu:/var/lib/tftpboot/lts$ ls -al
yhteensä 4364
drwxr-xr-x  4 asmok asmok     232 2006-01-07 18:53 .
drwxr-xr-x  4 root  root       96 2006-01-14 02:43 ..
-rwxr-xr-x  1 asmok asmok   23989 2005-05-13 22:51 eb-5.4.0-3c90x.zpxe
-rwxr-xr-x  1 asmok asmok 1960960 2005-04-19 07:30 vmlinuz-2.4.26-ltsp-3
-rwxr-xr-x  1 asmok asmok 2474496 2005-04-19 07:30 vmlinuz-2.6.9-ltsp-3
drwxr-xr-x  3 asmok asmok     192 2005-04-19 07:30 2.4.26-ltsp-3
drwxr-xr-x  3 asmok asmok     192 2005-04-19 07:30 2.6.9-ltsp-3
asmok@ubuntu:/var/lib/tftpboot/lts$

9. Hakemistojen ja tiedostojen jakaminen päätteille

Hakemistot ja tiedostot jaetaan päätteille nfs-palvelun avulla. Ubuntu Linuxissa on valittu paketti nimeltään ”nfs-kernel-server”.

# /etc/exports

/opt/ltsp                 192.168.1.0/255.255.255.0(ro,no_root_squash,sync)
/var/opt/ltsp/swapfiles   192.168.1.0/255.255.255.0(rw,no_root_squash,async)

10. X11-yhteyden jakaminen päätteille

X11-yhteys jaetaan päätteille, jotta graafinen sisäänkirjautuminen on mahdollista. Tämä tapahtuu käsittelemällä /etc/gdm/gdm.conf-tiedostoa. Tärkeimmät rivit ovat nämä:

# /etc/gdm/gdm.conf
#
[xdmcp]
Enable=true

http://www.arkki.info/howto/LTSP_Ubuntu/XDMCP_01.png
http://www.arkki.info/howto/LTSP_Ubuntu/XDMCP_02.png

11. LTSP:n säädöt päätekohtaisesti

Oheisessa tiedostossa ovat kaikki päätteiden vaatimat säädöt.

Jammin 225-päätteeseen [ws003] on liitetty näppäimistö (PS/2), Wacom hiiri ja piirtopöytä (USB) sekä Haman muistikortinlukija.
HP Vectra-päätteeseen [ws004] on liitetty näppäimistö ja hiiri (PS/2) sekä Haman muistikortinlukija.

Kummassakin päätteessä äänipiiri toimii.

Kummassakin päätteessä on mahdollista vaihtaa virtuaalipäätteelle (Alt-F2). Tätä voi hyödyntää esimerkiksi tarkistettaessa, mitä USB-laite kertoo itsestään liitettäessä.

Olen vahvasti sitä mieltä, että vanhoissakaan PC-päätteissä ei kannata virittää korppu- ja romppuasemia toimimaan. USB-väylä toimii paremmin. Uutena hankituissa päätteissä, kuten Jammin 225, korppu- tai romppuasemia ei edes ole.

Päätteet kannattaa pitää mahdollisimman yksinkertaisina. Mitä vähemmän liikkuvia osia, sen parempi.

# /opt/ltsp/i386/etc/lts.conf
#
# Copyright (c) 2003 by James A. McQuillan (McQuillan Systems, LLC)
#
# This software is licensed under the Gnu General Public License.
# The full text of which can be found at http://www.LTSP.org/license.txt
#
# Config file for the Linux Terminal Server Project (www.ltsp.org)

[Default]

             SERVER                     = 192.168.1.2
           XSERVER                    = auto
           USE_XFS                    = N
           SCREEN_01                  = startx

           XkbSymbols            = fi(pc104)
       XkbModel            = pc104
          XkbLayout            = fi

      HOTPLUG                    = Y
      ALLOW_UNKNOWN_USB       = Y

[ws003]

      SCREEN_02                  = shell

           SOUND                      = Y
      SOUND_DAEMON               = esd
      SMODULE_01                 = soundcore
      SMODULE_02                 = ac97_codec
      SMODULE_03                 = via82cxxx_audio
   
      MODULE_01                  = uhci-hcd
      MODULE_02                  = usbhid
      MODULE_03                  = wacom
      X_MOUSE_PROTOCOL           = "imps/2"
      X_MOUSE_DEVICE             = "/dev/input/mouse0"
      X4_MODULE_01               = wacom

      MODULE_04          = vfat
      MODULE_05          = sg
      MODULE_06          = sd_mod
      MODULE_07         = usb-storage
   
      LOCAL_DEVICE_01       = /dev/sda1:usb

[ws004]

      SCREEN_02                  = shell

      SOUND                      = Y
      SOUND_DAEMON               = esd
      SMODULE_01                 = soundcore
      SMODULE_02              = es1371
      SMODULE_03              = i810_audio

      MODULE_01          = vfat
      MODULE_02          = sg
      MODULE_03          = sd_mod
      MODULE_04         = usb-storage
   
      LOCAL_DEVICE_01       = /dev/sda1:usb

12. LTSP:n äänimoduulin asennus

Jotta lts.conf-tiedoston määritykset toimisivat, niin LTSP-sivustolta pitää hakea ja asentaa paketto ”ltsp-sound-1.0-0.2.tar.bz2”. Wiki-sivun ohjeiden mukaisesti äänet saadaan toimimaan Gnome-työpöytäympäristössä. Valitse kaikkialla ESD eri ohjelmien yhteydessä, esimerkiksi XMMS, mikäli sille on vaihtoehtoja.

http://wiki.ltsp.org/twiki/bin/view/Ltsp/Sound

Flash-ohjelmia varten kannattaa asentaa ajastettu skripti, kuten sivulla kerrotaan.

# /var/spool/cron/crontabs/root
#
0,15,30,45 * * * * /root/check-for-tmp-esd-socket.sh

#!/bin/bash
# /root/check-for-tmp-esd-socket.sh


if [ ! -e /tmp/.esd/socket ]; then

/bin/mkdir /tmp/.esd

/bin/touch /tmp/.esd/socket

fi

MPlayer osaa käsitellä kaikkia normaalisti tarvittavia multimedia-tiedostoja ja myös streaming-tekniikkaa.
Jotta MPlayer osaisi käsitellä esimerkiksi RealPlayer-tiedostoja tai QuickTime-tiedostoja, niin Mplayerin conf-tiedostoa tulee muokata seuraavasti.

MPlayer lisäksi ei kannata asentaa muita, ei RealPlayer-soitinta eikä esimerkiksi Xine-ohjelmaa.

# /etc/mplayerplug-in.conf
#
#debug=0
#logfile=$HOME/mpp.log
vo=x11
ao=esd
#download=1
#dload-dir=$HOME/tmp
#keep-download=0
#noembed=0
#cachesize=256
#use-mimetypes=0
enable-real=1
enable-wm=1
enable-qt=1
enable-mpeg=1
enable-ogg=1
enable-smil=1
#qt-speed=med
#rtsp-use-tcp=0
#nomediacache=0
#framedrop=0
#autosync=0
#mc=1
#black-background=0
#user-agent=NSPlayer


13. LTSP:n paikallisten laitteiden (USB) asennus

A.

Jotta USB-laitteet saadaan toimimaan päätteissä tarvitaan LTSP-sivustolta uudistettu paketti ”localdev-4.1.1-r1.tgz”. LTSP-sivustolta ei kuitenkaan asennetta muuta.

Ubuntu Linuxin paketeista pitää tässä vaiheessa asentaa myös paketti nimeltään ”smbfs”.

http://wiki.ltsp.org/twiki/bin/view/Ltsp/LocalMedia

B.

USB-laitteiden tuki saadaan toimimaan Unicolet.org-sivuston paketilla ”lda-new.tgz”.

http://www.unicolet.org/linux/ltsp.html

Koska Ubuntu Linux perustuu Debian GNU/Linuxiin, niin on syytä myös hakea ja asentaa paketti ”lda-new_debian.patch” ennen lda-new-paketin ”setup”-asennusohjelman asennusta.

1.

asmok@ubuntu:/root$ sudo tar zxvf lda-new.tgz
lda-new/
lda-new/LDA-functions.sh
lda-new/LDA-setup.sh
lda-new/LDA-shutdown.sh
lda-new/Xreset.patch
lda-new/Xstartup.patch
lda-new/README
lda-new/lts.conf
lda-new/rc.localdev.patch
lda-new/setup
lda-new/symbiont_media
asmok@ubuntu:/root$

2.

asmok@ubuntu:/root$ sudo cp lda-new_debian.patch lda-new
asmok@ubuntu:/root$ cd lda-new

3.

asmok@ubuntu:/root/lda-new$ sudo patch -p0<lda-new_debian.patch

4.

asmok@ubuntu:/root/lda-new$ sudo ./setup

C.

Kun Unicolet.org-sivuston paketit on asennettu, pitää vielä asentaa käsin seuraavat rivit näihin tiedostoihin. Ne laitetaan ennen muita komentorivejä (noin riville kolme).

1.

#!/bin/sh
# /etc/gdm/PostLogin/Default
#
/usr/local/bin/LDA-setup.sh

2.

#!/bin/sh
#/etc/gdm/PostSession/Default
#
/usr/local/bin/LDA-shutdown.sh

3.

#!/bin/sh
#/etc/gdm/PreSession
#
/usr/local/bin/LDA-setup.sh

----
Katso osa 4, jossa on X11 - XF86Config - tiedot.
----


14. LTSP-työkalut – ltspadmin

Kun näin kaikki palvelut on asennettu ja erilaiset asetukset on tehty, voidaan vielä tarkistaa, että kaikki on kunnossa myös LTSP:n näkökulmasta.

ltspcfg v0.11                                                                                                       

The Linux Terminal Server Project (http://www.LTSP.org)

Interface IP Address      Netmask         Network         Broadcast        Used
eth1      192.168.1.2     255.255.255.0   192.168.1.0     192.168.1.255   <-----

Service    Installed   Enabled   Running   Notes

dhcpd      Yes         Yes       Yes       Version 3
tftpd      Yes         Yes       Yes       Has '-s' flag
portmapper Yes         Yes       Yes
nfs        Yes         Yes       Yes
xdmcp      no          no        no        Using: none!

File                                Configured  Notes

/etc/hosts                          Yes
/etc/hosts.allow                    Yes
/etc/exports                        Yes
/opt/ltsp/i386/etc/lts.conf         Yes

Configured runlevel: 5         (value of initdefault in /etc/inittab)
   Current runlevel: 5         (output of the 'runlevel' command)

Installation dir...: /opt/ltsp

Press <enter> to return to the main menu...

Vaikka ltspadmin ilmoittaa, että xdmcp ei ole toiminnassa, se kuitenkin on; tämä on ltspadmin-ohjelman virheilmoitus.

asmok@ubuntu:~$ sudo netstat -ap | grep xdmcp
Password:
udp 0 0 *:xdmcp *:* 7018/gdm
asmok@ubuntu:~$

15. SSH-putkitus

Vaikka LTSP-järjestelmä onkin palomuurin takana, niin on hyvä, että kirjautumiset putkitetaan ssh:n läpi. Siksi lopuksi asennetaan vileä ”ltsp-server-standalone”-paketti, jotta saadaan ”ltsp-update-sshkeys”-skripti käyttöön.
Ennen skriptin ajamista pitää olla asennettuna ”openssh-server” paketti.
Katso myös huomautukset Ubuntu Linuxin Wiki-sivulta. Huomaa virhe – palvelimen nimen ja IP-numeron jälkeen tulee olla pilkku (,).

https://wiki.ubuntu.com/ThinClientHowto

asmok@ubuntu:~$ sudo ltsp-update-sshkeys

# ubuntu SSH-2.0-OpenSSH_4.1p1 Debian-7ubuntu4
# ubuntu SSH-2.0-OpenSSH_4.1p1 Debian-7ubuntu4
# 192.168.1.2 SSH-2.0-OpenSSH_4.1p1 Debian-7ubuntu4
# 192.168.1.2 SSH-2.0-OpenSSH_4.1p1 Debian-7ubuntu4
asmok@ubuntu:~$

# /etc/opt/i386/etc/ssh/ssh_known_hosts
#
ubuntu, ssh-dss AAAAB3NzaC1kc3...
ubuntu, ssh-rsa AAAAB3NzaC1yc...
192.168.1.2, ssh-dss AAAAB3NzaC1kc3...
192.168.1.2, ssh-rsa AAAAB3NzaC1yc2...

16. OOo, FF, TB ja Soikko

Ubuntu Linux LTSP-järjestelmä viimeistellään asentamalla OpenOffice.org-ohjelma sekä Firefox- ja Thunderbird-ohjelmat. Näihin kaikkiin voidaan asentaa myös Soikko. Nämä kaikki kannattaa asentaa /opt-hakemistoon.

asmok@ubuntu:/opt$ ls -l
yhteensä 2
drwxr-xr-x  12 root root 1200 2006-01-14 12:30 firefox
drwxr-xr-x   5 root root  128 2006-01-13 16:04 ltsp
drwxr-xr-x   6 root root  352 2006-01-14 11:38 OpenOffice.org1.1.5
drwxr-xr-x   8 root root  352 2006-01-14 12:05 openoffice.org2.0
drwxr-xr-x  11 root root 1280 2006-01-14 13:05 thunderbird
asmok@ubuntu:/opt$

Tällöin Soikkoa ei tarvitse asentaa jokaiselle erikseen; poikkeuksena FF:n ja TB:n muutamat laajennukset.

http://www.mozilla.fi/wiki/Suomen_kielen_oikoluku
http://fi.openoffice.org/lataa.html
http://www.lemi.fi/oo2-soikko/
« Viimeksi muokattu: 17.01.06 - klo:08.13 kirjoittanut Asmo Koskinen »

Asmo Koskinen

  • Käyttäjä
  • Viestejä: 4443
    • Profiili

Sakari Koivunen

  • Käyttäjä
  • Viestejä: 15
    • Profiili
Re: LTSP ja Ubuntu Breezy 5.10 (Intel x86) - osa 1
« Vastaus #3 : 16.01.06 - klo:23.13 »
Kiitos Asmo näistä(kin) ohjeista ja vinkeistä. Hyvää työtä. Kuvakaappaukset ja valokuvat oli mukava nähdä myös.

LTSP on niin mielenkiintoisen oloinen, että pitäisi minunkin tutustua siihen ihan käytännön tasolla. Kokeilla itse.

Kouluille ja vastaaviin ympäristöihin tämä on niin hyvin istuva ratkaisu, että olen moneen kertaan miettinyt vanhaa lukiota/yläastettani LTSP-vinkkelistä. Pitäisi kai käydä moikkaamassa vanhaa atk-opettajaa ja esitellä vähän mistä tässä on kysymys. Ubuntun levy tietysti tuliaisiksi. Sitä vierailuakin silmälläpitäen nämä ohjeesi olivat hyvää luettavaa.

Asmo Koskinen

  • Käyttäjä
  • Viestejä: 4443
    • Profiili
LTSP ja Ubuntu Breezy 5.10 (Intel x86) - osa 4
« Vastaus #4 : 17.01.06 - klo:08.11 »
LTSP ja Ubuntu Breezy 5.10 (Intel x86) - osa 4

18. X11 - XF86Config-4

Wacom-piirtopöytä ja hiiri vaativat muutoksia tiedostoon "build_x4_cfg". Tämän tiedoston avulla toimivat niin Wacom-hiiri, tavalliset USB-hiiret kuin PS/2-hiiret.

# /opt/ltsp/i386/etc/build_x4_cfg
#
# build_x4_cfg
#
# This script will generate the XF86Config-4 file for a diskless workstation, as
# part of the Linux Terminal Server Project (http://www.LTSP.org)
#

X4_DRIVER=$1

. /etc/ltsp_functions

################################################################################
#
# Get the IP address of the default server.  This is used for XDM_SERVER,
# TELNET_HOST and SYSLOG_HOST if any of them are not set explicitly.
# Default to '192.168.0.254' if it is NOT set in the config file.
#

DEFAULT_SERVER=${SERVER:-"192.168.0.254"}

################################################################################
#
# Build the XF86Config file
#
echo "Building the /tmp/XF86Config-4 file" >/dev/tty

X_MOUSE_BAUD=${X_MOUSE_BAUD:-"1200"}
X_MOUSE_EMULATE3BTN=${X_MOUSE_EMULATE3BTN:-"N"}

if [ "${X_MOUSE_EMULATE3BTN}" = "Y" ]; then
    EMULATE_3_BUTTONS="on"
fi

#-----------------------------------------------------------------------
#
# Setup server layout
#
cat <<-EOF
#Section "ServerLayout"
#        Identifier      "XFree86 Configured"
#        Screen      0   "Screen0" 0 0
#        InputDevice     "Keyboard0"   "CoreKeyboard"
#        InputDevice     "Mouse0"      "CorePointer"
#        InputDevice     "Mouse1"      "AlwaysCore"
#        Option          "StandbyTime" "${X_DPMS_STANDBYTIME:-0}"
#        Option          "SuspendTime" "${X_DPMS_SUSPENDTIME:-0}"
#        Option          "OffTime"     "${X_DPMS_OFFTIME:-0}"

Section "ServerLayout"
        Identifier "XFree86 Configured"
   Screen      0   "Screen0" 0 0
   InputDevice     "Keyboard0" "CoreKeyboard"
   InputDevice     "Mouse0" "CorePointer"
   InputDevice     "Mouse1" "AlwaysCore"
   InputDevice     "cursor" "SendCoreEvents"
   InputDevice     "stylus" "SendCoreEvents"
   InputDevice     "eraser" "SendCoreEvents"
EOF

#-----------------------------------------------------------------------
#
# See if touchscreen is set up
#
USE_TOUCH=${USE_TOUCH:-"N"}
if [ "${USE_TOUCH}" = "Y" ]; then
    cat <<-EOF
        InputDevice     "TouchScreen" "CorePointer"
EOF
fi

echo EndSection

#-----------------------------------------------------------------------
#
# Setup the FontPath info
#
USE_XFS=${USE_XFS:-"N"}

if [ "${USE_XFS}" = "Y" ]; then
    XFS_SERVER=${XFS_SERVER:-${DEFAULT_SERVER}}
    cat <<-EOF
Section "Files"
        FontPath   "tcp/${XFS_SERVER}:7100"
EndSection
EOF
else
cat <<-EOF
Section "Files"
        RgbPath    "/usr/X11R6/lib/X11/rgb"
        FontPath   "/usr/X11R6/lib/X11/fonts/misc/"
        FontPath   "/usr/X11R6/lib/X11/fonts/Type1/"
        FontPath   "/usr/X11R6/lib/X11/fonts/75dpi/"
        FontPath   "/usr/X11R6/lib/X11/fonts/100dpi/"
EndSection
EOF
fi

#-----------------------------------------------------------------------
#
# Setup module info
#
cat <<-EOF

Section "Module"
        Load   "extmod"
EOF
#
# Load any optional modules for the X server
#
for i in 01 02 03 04 05 06 07 08 09 10; do
    MODVAR=X4_MODULE_${i}
    MODULE=${!MODVAR}
    if [ "${MODULE}" ]; then
        echo "        Load   \"${MODULE}\" "
    fi
done

#
# If the xfs is not being used the following two modules are required
#
if [ "${USE_XFS}" = "N" ]; then
    echo "        Load   \"freetype\""
    echo "        Load   \"type1\""
fi
echo "EndSection"

#-----------------------------------------------------------------------
#
# Setup Keyboard and Mouse info
#

cat <<-EOF

Section "InputDevice"
       Identifier  "Keyboard0"
       Driver      "keyboard"
       Option      "XkbRules"  "${XKBRULES:-"xorg"}"
       Option      "XkbLayout" "${XKBLAYOUT:-"us"}"
       Option      "XkbModel"  "${XKBMODEL:-"pc101"}"
EndSection

Section "InputDevice"
       Identifier  "Mouse0"
       Driver      "mouse"
       Option      "Device"          "${X_MOUSE_DEVICE:-"/dev/psaux"}"
       Option      "Protocol"        "${X_MOUSE_PROTOCOL:-"PS/2"}"
       Option      "BaudRate"        "${X_MOUSE_BAUD}"
       Option      "Resolution"      "${X_MOUSE_RESOLUTION}"
       Option      "Emulate3Buttons" "${EMULATE_3_BUTTONS:-"off"}"
       Option      "ZAxisMapping"     "4 5"
       Option      "Buttons"         "${X_MOUSE_BUTTONS:-"3"}"
EndSection

#Section "InputDevice"
#       Identifier  "Mouse1"
#       Driver      "mouse"
#       Option      "Device"          "${X_USBMOUSE_DEVICE:-"/dev/input/mice"}"
#       Option      "Protocol"        "${X_USBMOUSE_PROTOCOL:-"PS/2"}"
#       Option      "BaudRate"        "${X_USBMOUSE_BAUD}"
#       Option      "Resolution"      "${X_USBMOUSE_RESOLUTION}"
#       Option      "Emulate3Buttons" "${USBEMULATE_3_BUTTONS:-"off"}"
#       Option      "ZAxisMapping"     "4 5"
#       Option      "Buttons"         "${X_USBMOUSE_BUTTONS:-"3"}"
#EndSection

Section "InputDevice"
   Identifier  "Mouse1"
   Driver      "mouse"
   Option      "Device" "${X_USBMOUSE_DEVICE:-"/dev/input/mouse0"}"
   Option      "Protocol"        "${X_USBMOUSE_PROTOCOL:-"PS/2"}"
   Option      "BaudRate"        "${X_USBMOUSE_BAUD}"
   Option      "Resolution"      "${X_USBMOUSE_RESOLUTION}"
   Option      "Emulate3Buttons" "${USBEMULATE_3_BUTTONS:-"off"}"
   Option      "ZAxisMapping"    "4 5"
   Option      "Buttons"         "${X_USBMOUSE_BUTTONS:-"3"}"
EndSection

Section "InputDevice"
        Driver      "wacom"
        Identifier  "cursor"
        Option      "Device" "/dev/input/event2"
        Option      "Type" "cursor"
        Option      "Mode" "relative"
        Option      "Suppress" "2"
        Option      "USB" "on"
        Option      "ZAxisMapping"    "5 4"
EndSection

Section "InputDevice"
        Driver      "wacom"
        Identifier  "stylus"
        Option      "Device" "/dev/input/event2"
        Option      "Type" "stylus"
        Option      "Mode" "absolute"
        Option      "USB" "on"
        Option      "Tilt" "on"
        Option      "Threshold" "20"
        Option      "HistorySize" "200"
EndSection

Section "InputDevice"
        Driver      "wacom"
        Identifier  "eraser"
        Option      "Device" "/dev/input/event2"
        Option      "Type" "eraser"
        Option      "Mode" "absolute"
        Option      "USB" "on"
        Option      "Tilt" "on"
        Option      "Threshold" "20"
        Option      "HistorySize" "200"
EndSection

EOF

#-----------------------------------------------------------------------
#
# Setup the Touch Screen operating parameters
#

if [ "${X_TOUCH_TYPE}" = "e" -o "${X_TOUCH_TYPE}" = "E" ]; then
       X_TOUCH_DRIVER=elographics
fi

if [ "${X_TOUCH_TYPE}" = "m"  -o "${X_TOUCH_TYPE}" = "M" ]; then
       X_TOUCH_DRIVER=mutouch
fi

if [ "${USE_TOUCH}" = "Y" ]; then
    cat <<-EOF

Section "InputDevice"
       Identifier  "TouchScreen"
       Driver      "${X_TOUCH_DRIVER}"
       Option      "Device"         "${X_TOUCH_DEVICE:-/dev/ttyS0}"
       Option      "DeviceName"       "Elo"
       Option      "MinX"             "${X_TOUCH_MINX:-433}"
       Option      "MaxX"             "${X_TOUCH_MAXX:-3588}"
       Option      "MinY"             "${X_TOUCH_MINY:-569}"
       Option      "MaxY"             "${X_TOUCH_MAXY:-3526}"
       Option      "UntouchDelay"     "${X_TOUCH_UNDELAY:-10}"
       Option      "ReportDelay"      " ${X_TOUCH_RPTDELAY:-10}"
       Option      "AlwaysCore"
EndSection
EOF
fi

#-----------------------------------------------------------------------
#
# Setup the Composite stuff
#

if [ "${X_COMPOSITE}" = "Y" ]; then
cat <<-EOF
Section "Extensions"
  Option "Composite" "Enable"
EndSection
EOF
fi

#-----------------------------------------------------------------------
#
# Setup the Monitor info
#

X_HORZSYNC=${X_HORZSYNC:-"31-62"}
X_VERTREFRESH=${X_VERTREFRESH:-"55-90"}

if [ -z "${X4_BUSID}" ]; then
    BUSID=""
else
    BUSID="BusID     \"${X4_BUSID}\""
fi

if [ -z "${X_VIDEORAM}" ]; then
    XVIDRAM=""
else
    XVIDRAM="VideoRam ${X_VIDEORAM}"
fi

#
# Extract Modelines and Video modes from the custom modes.
#
MODE[0]=`echo ${X_MODE_0} | cut -f1 -d" "`
LINE[0]="`echo ${X_MODE_0} | cut -f2- -d" " -s`"
MODE[1]=`echo ${X_MODE_1} | cut -f1 -d" "`
LINE[1]="`echo ${X_MODE_1} | cut -f2- -d" " -s`"
MODE[2]=`echo ${X_MODE_2} | cut -f1 -d" "`
LINE[2]="`echo ${X_MODE_2} | cut -f2- -d" " -s`"

cat <<-EOF

Section "Monitor"
        Identifier      "My Monitor"
        VendorName      "Unknown"
        ModelName       "Unknown"
        HorizSync       ${X_HORZSYNC}
        VertRefresh     ${X_VERTREFRESH}
EOF

if [ x${X_DPMS} = "xN" -o x${X_DPMS} = "xn"  ]; then
   echo "        Option          \"DPMS\" \"FALSE\""
else
   echo "        Option          \"DPMS\" \"TRUE\""
fi

if [ -n "${LINE[0]}" ]; then
    echo "        Modeline \"${MODE[0]}\"  ${LINE[0]}"
fi
if [ -n "${LINE[1]}" ]; then
    echo "        Modeline \"${MODE[1]}\"  ${LINE[1]}"
fi
if [ -n "${LINE[2]}" ]; then
    echo "        Modeline \"${MODE[2]}\"  ${LINE[2]}"
fi

cat <<-EOF
EndSection

Section "Device"
        Identifier "My Video Card"
        Driver     "${X4_DRIVER}"
        ${BUSID}
        ${XVIDRAM}
EOF

    for i in 01 02 03 04 05 06 07 08 09 10; do
        X_DEV_VAR=X_DEVICE_OPTION_${i}
        X_DEVICE_OPTION=${!X_DEV_VAR}
        if [ "${X_DEVICE_OPTION}" ]; then
            echo "        Option   \"${X_DEVICE_OPTION}\""
        fi
    done

cat <<-EOF
EndSection

EOF

#-----------------------------------------------------------------------
#
# Setup the Screen info
#

if [ -z "${MODE[0]}${MODE[1]}${MODE[2]}" ]; then
    MODE[0]="1024x768"
    MODE[1]="800x600"
    MODE[2]="640x480"
fi

if [ -n "${MODE[0]}" ]; then
    MODE[0]=\"${MODE[0]}\"
fi

if [ -n "${MODE[1]}" ]; then
    MODE[1]=\"${MODE[1]}\"
fi

if [ -n "${MODE[2]}" ]; then
    MODE[2]=\"${MODE[2]}\"
fi

cat <<-EOF
Section "Screen"
        Identifier "Screen0"
        Device "My Video Card"
        Monitor "My Monitor"
        DefaultDepth  ${X_COLOR_DEPTH:-16}
        Subsection "Display"
                Depth ${X_COLOR_DEPTH:-16}
                Modes ${MODE
  • }

        EndSubSection
EndSection

EOF

#-----------------------------------------------------------------------
#
# Any dri options that may be required
#
cat <<-EOF
Section "DRI"
        ${X4_DRI}
EndSection
EOF