||'''Sisällysluettelo'''<
><> || = LTSP5 - Chroot = Tässä ohjeessa kuvaillaan, mitä päätteessä tapahtuu, kun päätteeseen liitetään USB-väylään joko muistitikku tai digikamera. Myös päätteeseen liitettyä näyttöä voi jollakin tavoin selvittää tämän ohjeen avulla. Päätteen ympäristönä toimii palvelimella oleva /opt/ltsp-hakemisto. Se on luotu joko asennuksen yhteydessä tai myöhemmin "ltsp-build-client"-käskyllä. {{{ man ltsp-build-client }}} "'''ltsp-build-client''' builds an ltsp client chroot using standard packages for use with the ltsp server. This chroot installation can be modified in a number of ways as outlined in the OPTIONS section. If present, defaults will be read from the configuration file /etc/ltsp/ltsp-build-client.conf, and will be overridden by using the command line options. Visit http://www.ltsp.org for more information." Tässä ohjeessa on käytetty tätä päätettä: [[http://wiki.ubuntu-fi.org/LTSP_Ohjeita#head-45924273836b3e4599dea47b9b0d6dc1a8d2eade|Fujitsu-Siemens Scenic (P4/256/i845G)]] Usb-tikku on malliltaan "Viking Interworks 512 MB USB 2.0 DRIVE" ja digikamera "Olympus µ720 SW". Näyttö on "Nokia 447PRO 17" CRT". == Root-tunnuksen käyttöönotto pääteympäristössä == Pääkäyttäjän oikeuksilla siirrytään päätteiden chroot-ympäristöön. {{{ sudo chroot /opt/ltsp/i386 }}} Tämän jälkeen annetaan root-tunnukselle salasana. Chroot-ympäristössä ei ole muita tunnuksia, joten passwd-käskyyn ei tarvitse liittää tunnusta. Salasana annetaan luonnollisesti kaksi kertaa samalla tavalla. {{{ passwd }}} Chroot-ympäristöstä poistutaan "exit"-komennolla. {{{ exit }}} Levykuva pitää päivittää salasanan antamisen jälkeen. {{{ sudo ltsp-update-image }}} Kun pääte on käynnistynyt, niin Ctrl-Alt-F1 -komennolla voidaan kirjautua root-tunnuksella ja äsken annetulla salasanalla päätteen konsolista päätteen omaan ympäristöön, joka siis vastaa hakemistoa /opt/ltsp palvelimella. Tämän ohjeen teossa törmättiin virheilmoitukseen "Your account has expired, please contact your system administrator" eikä kirjautuminen onnistunut. Tästä päästään eteenpäin kirjautumalla palvelimelle vielä kerran chroot-ympäristöön ja antamalla seuraava käsky chroot-ympäristössä. {{{ sudo chroot /opt/ltsp/i386 }}} {{{ passwd -u root }}} Poistutaan chroot-ympäristöstä. {{{ exit }}} Tämän jälkeen levykuva rakennettiin vielä kerran ja nyt päätteen konsolilta oli mahdollista kirjautua root-käyttäjänä sisään. {{{ sudo ltsp-update-image }}} === Muistilista chroot-ympäristön päivittämisestä === * sudo chroot /opt/ltsp/i386 * mount -t proc /proc /proc * export LTSP_HANDLE_DAEMONS=false * apt-get update * apt-get upgrade TAI apt-get dist-upgrade * /usr/share/ltsp/update-kernels * umount /proc * exit * ltsp-update-kernels == Ssh-palvelun käyttöönotto pääteympäristössä == Kun tiedetään päätteen ip-numero, siihen voidaan ottaa myös ssh-yhteys root-tunnuksella. Tämä vastaa täysin konsolista sisäänkirjautumista. Ensin palvelimella tehdään kaksi liitosta /opt/ltsp-hakemistoon. {{{ sudo mount --bind /dev /opt/ltsp/i386/dev sudo mount -t proc none /opt/ltsp/i386/proc sudo mount -o bind /dev/pts /opt/ltsp/i386/dev/pts }}} Tämän jälkeen laitetaan kuntoon sources.list- ja resolv.conf-tiedostot. {{{ sudo cp /etc/apt/sources.list /opt/ltsp/i386/etc/apt/sources.list sudo cp /etc/resolv.conf /opt/ltsp/i386/etc/ }}} Siirrytään chroot-ympäristöön. {{{ sudo chroot /opt/ltsp/i386 }}} Tiedot saatavilla olevista ohjelmista päivitetään. {{{ apt-get update }}} Tehdään päivitys. {{{ apt-get dselect-upgrade }}} Asennetaan ssh-palvelu chroot-ympäristöön. {{{ apt-get install ssh }}} Poistutaan chroot-ympäristöstä. {{{ exit }}} Tämän jälkeen levykuva rakennettiin vielä kerran. {{{ sudo ltsp-update-image }}} Palvelimelta otetaan yhteys päätteeseen root-tunnuksella, jonka salasana oli annettu aiemmin. {{{ asmok@ubuntu:~$ ssh root@192.168.1.244 The authenticity of host '192.168.1.244 (192.168.1.244)' can't be established. RSA key fingerprint is a5:06:53:38:f3:92:bd:28:1a:40:f0:3a:b2:10:61:cb. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.1.244' (RSA) to the list of known hosts. root@192.168.1.244's password: Last login: Wed Jun 18 20:44:33 2008 root@ltsp:~# }}} == USB-tikun liittäminen päätteeseen == Kun USB-tikku liitetään päätteeseen, niin sen liittäminen näkyy myös F1-konsolissa, kun siihen on ensin kirjauduttu root-tunnuksella. Kun root-tunnuksella on otetaan ssh-yhteys päätteeseen ja ajetaan päätteessä "dmesg"-komento, nähdään USB-tikun liittäminen päätteeseen. {{{ [ 387.252052] usb 3-4: new high speed USB device using ehci_hcd and address 2 [ 387.468351] usb 3-4: configuration #1 chosen from 1 choice [ 387.544144] usbcore: registered new interface driver libusual [ 387.568034] Initializing USB Mass Storage driver... [ 387.571402] scsi2 : SCSI emulation for USB Mass Storage devices [ 387.573862] usbcore: registered new interface driver usb-storage [ 387.573873] USB Mass Storage support registered. [ 387.575781] usb-storage: device found at 2 [ 387.575787] usb-storage: waiting for device to settle before scanning [ 392.581838] usb-storage: device scan complete [ 392.583332] scsi 2:0:0:0: Direct-Access USB Flash Memory 1.00 PQ: 0 ANSI: 2 [ 392.607090] Driver 'sd' needs updating - please use bus_type methods [ 392.615822] sd 2:0:0:0: [sda] 1001472 512-byte hardware sectors (513 MB) [ 392.617418] sd 2:0:0:0: [sda] Write Protect is off [ 392.617424] sd 2:0:0:0: [sda] Mode Sense: 0b 00 00 08 [ 392.617427] sd 2:0:0:0: [sda] Assuming drive cache: write through [ 392.627787] sd 2:0:0:0: [sda] 1001472 512-byte hardware sectors (513 MB) [ 392.629288] sd 2:0:0:0: [sda] Write Protect is off [ 392.629293] sd 2:0:0:0: [sda] Mode Sense: 0b 00 00 08 [ 392.629295] sd 2:0:0:0: [sda] Assuming drive cache: write through [ 392.631246] sda: sda1 [ 392.632775] sd 2:0:0:0: [sda] Attached SCSI removable disk [ 392.648310] sd 2:0:0:0: Attached scsi generic sg0 type 0 }}} == Digikameran liittäminen päätteeseen == Samalla tavalla näkyy myös digikameran liittäminen päätteeseen. {{{ [ 1051.350531] usb 2-1: new full speed USB device using uhci_hcd and address 2 [ 1051.531583] usb 2-1: configuration #1 chosen from 1 choice [ 1051.542637] scsi3 : SCSI emulation for USB Mass Storage devices [ 1051.547677] usb-storage: device found at 2 [ 1051.547684] usb-storage: waiting for device to settle before scanning [ 1056.546623] usb-storage: device scan complete [ 1056.550619] scsi 3:0:0:0: Direct-Access OLYMPUS u720SW,S720SW 1.00 PQ: 0 ANSI: 2 [ 1056.573587] sd 3:0:0:0: [sda] 4095630 512-byte hardware sectors (2097 MB) [ 1056.580610] sd 3:0:0:0: [sda] Write Protect is off [ 1056.580620] sd 3:0:0:0: [sda] Mode Sense: 17 00 00 08 [ 1056.580623] sd 3:0:0:0: [sda] Assuming drive cache: write through [ 1056.599580] sd 3:0:0:0: [sda] 4095630 512-byte hardware sectors (2097 MB) [ 1056.606573] sd 3:0:0:0: [sda] Write Protect is off [ 1056.606579] sd 3:0:0:0: [sda] Mode Sense: 17 00 00 08 [ 1056.606581] sd 3:0:0:0: [sda] Assuming drive cache: write through [ 1056.606647] sda: sda1 [ 1056.616705] sd 3:0:0:0: [sda] Attached SCSI removable disk [ 1056.616763] sd 3:0:0:0: Attached scsi generic sg0 type 0 }}} == Polttavan CD-aseman liittäminen päätteeseen == Toisin kuin edellä olevat kaksi esimerkkiä (tikku ja digikamera), polttavan CD-aseman liittäminen jää puolitiehen. Kun kirjaudutaan päätteen chroot-ympäristöön, nähdän että Linux-ydin tunnistaa polttavan CD-aseman, mutta sitä ei voi kuitenkaan käyttää päätteen työpöytäympäristössä. Mikään ohjelma ei näe laitetta päätteen tunnuksella (ltsp001). Root-tunnuksella kuitenkin voidaan CD-aseman kelkka avata (eject). {{{ [ 251.812110] usb 3-3: new high speed USB device using ehci_hcd and address 2 [ 252.003518] usb 3-3: configuration #1 chosen from 1 choice [ 252.099213] usbcore: registered new interface driver libusual [ 252.125270] Initializing USB Mass Storage driver... [ 252.128075] scsi2 : SCSI emulation for USB Mass Storage devices [ 252.130455] usbcore: registered new interface driver usb-storage [ 252.130465] USB Mass Storage support registered. [ 252.132429] usb-storage: device found at 2 [ 252.132436] usb-storage: waiting for device to settle before scanning [ 257.131009] usb-storage: device scan complete [ 257.132744] scsi 2:0:0:0: CD-ROM LITE-ON DVDRW LDW-411S FS0B PQ: 0 ANSI: 0 [ 257.173820] Driver 'sr' needs updating - please use bus_type methods [ 257.185072] sr0: scsi3-mmc drive: 94x/40x writer cd/rw xa/form2 cdda tray [ 257.185081] Uniform CD-ROM driver Revision: 3.20 [ 257.185171] sr 2:0:0:0: Attached scsi CD-ROM sr0 [ 257.214445] sr 2:0:0:0: Attached scsi generic sg0 type 5 }}} Root-tunnuksella laite nähdään chroot-ympäristössä, mutta päätteessä se ei näy ltsp001-tunnuksella. {{{ root@ltsp:~# lsusb Bus 003 Device 002: ID 0ecd:a100 Lite-On IT Corp. Bus 003 Device 001: ID 0000:0000 Bus 002 Device 001: ID 0000:0000 Bus 001 Device 001: ID 0000:0000 }}} {{{ root@ltsp:~# eject root@ltsp:~# }}} {{{ ltsp001@ubuntu:~$ lsusb Bus 007 Device 006: ID 046d:0990 Logitech, Inc. Bus 007 Device 005: ID 0603:00f2 Novatek Microelectronics Corp. Bus 007 Device 004: ID 046d:c019 Logitech, Inc. Bus 007 Device 003: ID 2001:f111 D-Link Corp. [hex] DBT-122 Bluetooth adapter Bus 007 Device 002: ID 05e3:0606 Genesys Logic, Inc. D-Link DUB-H4 USB 2.0 Hub Bus 007 Device 001: ID 0000:0000 Bus 004 Device 001: ID 0000:0000 Bus 003 Device 001: ID 0000:0000 Bus 002 Device 001: ID 0000:0000 Bus 006 Device 001: ID 0000:0000 Bus 005 Device 001: ID 0000:0000 Bus 001 Device 001: ID 0000:0000 }}} Vaikka asema ei toimikaan polttavana, niin se toimii kuitenkin aivan normaalisti lukevana asemana. [[http://www.arkki.info/howto/Wiki/LTSP5/Ubuntu_8.04.1_USB_Cdrom_01.png|CD-asema]] == Näytön liittäminen päätteeseen == Kun näyttö on liitetty päätteeseen, niin X yrittää asentaa sen automaattisesti. Yleensä tämä onnistuu, mutta mahdollisia virheilmoituksia voi yrittää jäljittää päätteen chroot-ympäristön /var/log-hakemiston Xorg.6.log-tiedostosta. {{{ asmok@ubuntu:~$ ssh root@192.168.1.244 root@192.168.1.244's password: Last login: Wed Jun 18 20:57:04 2008 from server root@ltsp:~# cd /var/log root@ltsp:/var/log# ls apt boot btmp debug dpkg.log fontconfig.log kern.log ldm.log mail.err mail.log messages syslog wtmp Xorg.6.log.old auth.log bootstrap.log daemon.log dmesg faillog fsck lastlog lpr.log mail.info mail.warn news user.log Xorg.6.log root@ltsp:/var/log# }}} == Chroot-ympäristön tutkiminen == Chroot-ympäristöä voi tutkia samoilla työkaluilla kuin muitakin tietokoneita ja ympäristöjä. {{{ root@ltsp:~# ps ax PID TTY STAT TIME COMMAND 1 ? Ss 0:00 /sbin/init 2 ? S< 0:00 [kthreadd] 3 ? S< 0:00 [migration/0] 4 ? S< 0:00 [ksoftirqd/0] 5 ? S< 0:00 [watchdog/0] 6 ? S< 0:00 [events/0] 7 ? S< 0:00 [khelper] 42 ? S< 0:00 [kblockd/0] 45 ? S< 0:00 [kacpid] 46 ? S< 0:00 [kacpi_notify] 108 ? S< 0:00 [kseriod] 142 ? S 0:00 [pdflush] 143 ? S 0:00 [pdflush] 144 ? S< 0:00 [kswapd0] 184 ? S< 0:00 [aio/0] 1135 ? S< 0:00 [unionfs_siod/0] 1310 ? S< 0:00 [ksuspend_usbd] 1313 ? S< 0:00 [khubd] 2076 ? S 0:00 nbd-client 192.168.1.101 2000 /dev/nbd0 2222 ? S> ~/.ssh/authorized_keys root@ltsp:~# exit logout Connection to 192.168.1.244 closed. }}} Testataan kirjautuminen ilman salasanaa. {{{ asmok@ubuntu:~$ ssh root@192.168.1.244 Last login: Thu Jun 19 19:40:51 2008 from server root@ltsp:~# }}} Poistutaan päätteestä ja annetaan etänä käsky, joka sammuttaa päätteen. Käsky kirjoitetaan ' '-merkkien väliin. {{{ asmok@ubuntu:~$ ssh root@192.168.1.244 'shutdown -h now' asmok@ubuntu:~$ }}} Kun kaikkien päätteiden ip-numerot tiedetään, voidaan kirjoittaa skripti, joka sammuttaa päätteet etänä päivän päätteeksi. ----