====== 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 dnsmasqInstalled /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 ipxeTento krok se musí opakovat, pokud jsme provedli ''ltsp image''. * NFS server:ltsp nfs * ltsp.img:ltsp initrdTento 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=1Namountuje 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=0Image 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=0Tí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 -lCo vidí ALSA. * pacmd list-cardsCo 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.