====== Návod na instalaci LTSP ======
Linux Terminal Server Project -- linux s tenkými klienty
Postupujeme podle návodu na [[http://ltsp.org/docs/installation]] a na [[https://wiki.debian.org/LTSP/Howto]].
Při instalaci zvolíme metodu dvou interfaceů. Druhý interface musí být nakonfigurovaný před instalací ''ltsp''. Musí se vyplnit IP adresa a maska, ale **ne GW**. Chceme-li jinou IP, než je defaultně nastavená (192.168.67.1), máme smůlu. Je to tam někde zadrátované.
Posloupnost kroků při instalaci:
* Nejjednodušší je nechat si přidělit IP od DHCP serveru:ltsp dnsmasq
Installed /usr/share/ltsp/server/dnsmasq/ltsp-dnsmasq.conf in /etc/dnsmasq.d/ltsp-dnsmasq.conf
Restarted dnsmasq
* Client image (chrootless):ltsp image /
Tento krok se musí opakovat při každém přidání SW do image.
* Konfigurace iPXE:ltsp ipxe
Tento krok se musí opakovat, pokud jsme provedli ''ltsp image''.
* NFS server:ltsp nfs
* ltsp.img:ltsp initrd
Tento krok se musí udělat po každém updatu ltsp, po přidání uživatele, nebo po úpravě ''/etc/ltsp/ltsp.conf''.
===== Updaty image =====
Při každém přidání/změně softwaru na serveru se musí vygenerovat nový image. Trvá to již docela dlouho, proto se to dělá přes noc pomocí ''crontabu''. Dalším důvodem je to, že se dělají pravidelné updaty.
Nový image se vytvoří pomocí skriptu
#!/bin/bash
if [[ $EUID -ne 0 ]]; then
echo "This script must be run as root (sudo bash -l)" 1>&2
print_help
exit 1
fi
echo "IMAGE"
ltsp image /
echo "IPXE"
ltsp ipxe
echo "NFS"
ltsp nfs
echo "INITRD"
ltsp initrd
==== Kde jsou všechny image (pro ipxe) ====
-rw-r--r-- 1 root root 169362625 Feb 18 06:06 /srv/tftp/ltsp/x86_64/initrd.img
-rw-r--r-- 1 root root 14928264 Jan 15 17:51 /srv/tftp/ltsp/x86_64/vmlinuz
IPXE
Installed /usr/share/ltsp/server/ipxe/ltsp.ipxe in /srv/tftp/ltsp/ltsp.ipxe
Skipped existing /srv/tftp/ltsp/memtest.0
Skipped existing /srv/tftp/ltsp/memtest.efi
Skipped existing /srv/tftp/ltsp/snponly.efi
Skipped existing /srv/tftp/ltsp/undionly.kpxe
NFS
Installed /usr/share/ltsp/server/nfs/ltsp-nfs.exports in /etc/exports.d/ltsp-nfs.exports
Restarted nfs-kernel-server
INITRD
Generated ltsp.img:
-rw-r--r-- 1 root root 171520 Feb 20 18:41 /srv/tftp/ltsp/ltsp.img
{{anchor:conf}}
===== Konfigurace LTSP =====
Konfigurace se provádí v souboru ''/etc/ltsp/ltsp.conf''. Ten je rozdělen na sekce ''[server]'', ''[common]'', ''[clients]'' a případně další týkající se jednotlivých klientů nebo monitorů (viz [[http://ltsp.org/man/ltsp.conf/]]).
==== Úpravy provedené u nás ====
- Sekce ''[server]''
* NFS_HOME=1
Namountuje adresář ''/home'', takže vše, co uživatelé zapíší na klientovi do svého adresáře, se zapisuje na disk na chomském.
* OMIT_FUNCTIONS="remove_printers"
Nutné pro to, abychom viděli tiskárny.
- Sekce ''[clients]''
* IMAGE_TO_RAM=0
Image se stále čte z disku, šetří se tím paměť.
* REMOTEAPPS="users-admin mate-about-me seamonkey emacs google-chrome google-chrome-stable"
Tyto aplikace běží na serveru. Šetří se tím prostředky klienta.
* # LOCAL_SWAP=0
Tímhle se taky šetří prostředky, ale když nemáme lokální disk, je to jedno.
*
FSTAB_CNK="ada:/mnt/cnk-cephfs /cnk nfs auto,nofail,noatime,nolock,intr,tcp,actimeo=1800 0 0"
FSTAB_HOME="server:/home /home nfs defaults,nolock 0 0"
FSTAB_STORE="server:/store /store nfs defaults,nolock 0 0"
FSTAB_STORE2="server:/store2 /store2 nfs defaults,nolock 0 0"
FSTAB_SYN2020="server:/usr/local/syn2020 /usr/local/syn2020 nfs defaults,nolock 0 0"
Tyto řádky se přidají do lokálního ''/etc/fstab'' a namountují se příslušné disky. Data zapsaná na tyto disky jsou tak zachována.
* CUPS_SERVER="ignore"
Ignorujeme CUPS server na LTSP serveru, ale zkopírujeme tiskárny do lokálního LTSP serveru.
* HOSTS_JAKOBSON="78.128.204.173 jakobson"
HOSTS_JAKOBSON723="192.168.128.1 jakobson.723"
HOSTS_GRIMM="78.128.204.175 grimm"
HOSTS_GRIMM723="192.168.128.4 grimm.723"
Přidáme tyto adresy do lokálního souboru ''/etc/hosts''.HOSTS_KORPUS="195.113.53.66 korpus.cz"
HOSTS_FF="195.113.53.2 ff.cuni.cz"
Tyto dvě adresy musíme přidat proto, že DNS server přiřadí jména prohledávaných domén k adrese ''127.0.1.1''.
*
POST_INIT_SUDO="sed '/^sudo:/ s/$/,skoumal,jelinek,pavelv/' -i /etc/group"
POST_INIT_EPO="sed '/^epoptes:/ s/$/,skoumal,jelinek/' -i /etc/group"
POST_INIT_AUDIO="sed '/^audio:/ s/$/,skoumal,jelinek,petkevic,rosen,krivan,hnatkova,sindlerova/' -i /etc/group"
POST_INIT_PULSE="sed '/^pulse:/ s/$/skoumal,jelinek,petkevic,rosen,krivan,hnatkova,sindlerova/' -i /etc/group"
POST_INIT_PULSEACCESS="sed '/^pulse-access:/ s/$/skoumal,jelinek,petkevic,rosen,krivan,hnatkova,sindlerova/' -i /etc/group"
Takto upravujeme lokální soubor '/etc/group'.
* LIGHTDM_CONF="greeter-setup-script=/usr/bin/numlockx on"
Tímhle zařídíme zapnutý Numlock při přihlašování.
* PASSWORDS_ANY="local-admin/VmVsZTQsOG4K"
umožní přihlásit se uživateli ''local-admin'' z klienta. Heslo se získá pomocí příkazu ''base64'':base64
heslo_v_plain_textu
Ctrl-D
===== Zvuk =====
Měl by fungovat "sám od sebe", jenom je třeba přidat všechny uživatele do skupiny ''audio'', ''pulse'' a ''pulse-access'' (viz [[wiki:user:skoumal:ltsp#conf|výše]]). Několik programů, které nám vypíšou zvukové karty, umožní mixáž zvuku a otestují výstup:
* aplay -l
Co vidí ALSA.
* pacmd list-cards
Co vidí pulseaudio.
* alsamixer
* pulsemixer
* speaker-test -t wav
Pokud vše funguje, všechno nastavíme a otestujeme v Sound Settings.
Pokud zvuk nefunguje, je třeba zkontrolovat konfigurační soubory, hlavně jestli uživatelé u sebe nemají nějaké staré šunky.