<<home  <<previous  next>>

debian / Toughbook cf-74 en cf-19





systeem uitkiezen

Op http://www.debian.org/distrib kan je kiezen voor 'netinst' images. Deze moet je downloaden en op cd of dvd branden als bootable disk. Je moet hier al een processor architectuur kiezen. Voor de Toughbook cf-74 is i386 nodig, op cf-19 kan ook amd64. Tijdens het installeren moet de computer aan internet verbonden zijn. Je moet later een mirror kiezen, bijvoorbeeld ftp.nl.debian.org.


installer op usb stick

Kies een installatie ISO image, net als voor installeren via CD. Het kan een netinstall zijn, maar ik koos voor CD 1 van de complete set. Uiterst belangrijk om uit te zoeken welk device de usb stick is, zodat er niet een verkeerd device overschreven wordt. Dit kan met:

$ sudo fdisk -l

De ingebouwde harde schijf is normaal /dev/sda, en als er verder niks aan de usb hangt is het waarschijnlijk /dev/sdb. Een cijfer erachter is voor de partities, maar dat telt nu niet want de partitietabel gaat ook overschreven worden. Nu moet de installer image naar de usb stick gekopieerd worden met command dd:

$ dd if=<file> of=<device> bs=4M; sync

Na deze kopieer actie was de usb stick niet meer in mijn Nautilus te zien. Hij wordt niet meer vanzelf gemount. Je kan een mount directory aanmaken en handmatig mounten om te controleren wat erop staat, en dan weer unmounten:

$ sudo mkdir /mnt/tmp
$ sudo mount -a /dev/sdb /mnt/tmp
$ sudo umount /dev/sdb



multiple processors

In de handleiding staat dat de standaard Debian 6.0 kernel image gecompileerd is met 'SMP-alternatives' support. Dit betekent dat de kernel het aantal processors of processor cores automatisch detecteert en symmetric multiprocessing deactiveert op uniprocessor systemen. Er staat ook: 'the 486 flavour of the Debian kernel image packages for 32-bit PC is not compiled with SMP support'.

http://www.debian.org/releases/stable/i386/ch02s01.html.en#id583798

Maar of de kernen allebei gebruikt worden wordt ook in de bios bepaald. Druk bij het opstarten, nog voor je een systeem gekozen hebt, op F2. Dan kan je de bios info bekijken. Onder de tab 'advanced' staat 'Core Multi-Processing [enable] of [disable]. Je kan dit togglen. Bij mij heeft het zowat een jaar op disabled gestaan...


installer settings

Stop installatie cd erin en start met F8. Afhankelijk van de bios instellingen kan de cd ook prioriteit hebben, dan hoef je niet eens op F8 te drukken. Maar het kan ook zijn dat het installatie device (cd apparaat of usb stick) niet als bootable device aangemerkt is. Je moet dan opstarten met F2 om in de BIOS te gaan en het device toegvoegen (includen) aan de lijst met bootable devices.

Er wordt gevraagd een aantal settings voor de installatie te doen:

Installer boot menu: kies hier Graphic install
Installation language: kies English
Select your location: dit is voor de timezone (Other > Europe > Netherlands)
Configure locales: dit gaat over character encoding, kies United States
Keymap to use: moet bij het keyboard passen (mijn CF-19: British English)


netwerk

De hardware wordt gedetecteerd, en de installer ziet dat er geen firmware is voor de wifi kaart (firmware-iwlwifi). Dit staat niet op de installatie cd omdat Debian zelf geen non-free software gebruikt. Je kan deze firmware later installeren, nu moet je ethernet gebruiken. Primary network interface: eth0.


namen en wachtwoorden

Er wordt gevraagd om de hostname. Dat is de naam van de computer als hij zich identificeert. Domain name is afhankelijk van waar je aan internet hangt (bijvoorbeeld electrickery.nl). Je moet een root password kiezen. Verder je full username, username, en user password. Als je de passwords vergeet ben je later heel erg de lul.


partitioneren

Het gaat hier alleen om de partities voor de installatie die nu gedaan wordt. Op een helemaal lege schijf kan je alvast de partities voor andere installaties aanmaken, maar bestaande partities van andere installaties laat je met rust. Voor een dual boot system met twee Linux installaties:

system 1 partitie (primary, 15 GB of meer, ext4 journaling)
system 2 partitie (primary, 15 GB of meer, ext4 journaling)
swap partitie voor Debian (primary, klein bv 2.5 GB, ext4 journaling)
gedeelde data partitie (primary, ext4 journaling)

Maximaal 4 partities kunnen primary zijn. Mount point voor de partitie waar je op gaat installeren moet zijn 'root'. De andere system partitie mount je nu niet. Ook de gedeelde data partitie mount je nog niet. Het is handig om de partities een label te geven zodat je ze later kan herkennen.

Opmerking: voor dual boot linux setups kan de gedeelde partitie in principe voor beiden de home partitie zijn. Dit wordt in de praktijk wel gedaan. Ik heb het een keer geprobeerd maar wilde er meteen weer vanaf. In de home directory komen immers allerlei onzichtbare preferences, log files, coockie-dingen etc. te staan. Deze kunnen best verschillend zijn per systeem, maar dezelfde naam hebben. Dan wordt het constant overschreven met verkeerde data. Zodra je daar eenmaal achter komt is het heel lastig om die dingen nog van elkaar te scheiden en elk system een eigen home dir te geven.


Voor een dual boot systeem waar Windows al op staat:

Windows partitie (primary, niet formatteren)
Debian partitie (primary, ext4 journaling)
swap partitie voor Debian (primary, klein, bv 2.5 GB, ext4 journaling)
gedeelde data partitie (NTFS, nu nog niet formatteren, dat moet later in Windows)

Wil je een bestaande indeling wijzigen dan kan je de betreffende partities deleten en opnieuw aanmaken. Sluit telkens af met 'done setting up the partition'.


installeren


Na het partitioneren begint het installeren. Na een tijdje is het systeem gereed om vanaf internet verder te installeren en updaten, en dan wordt gevraagd om een land te kiezen en een mirror. Bv ftp.nl.debian.org. Geen proxy. Let dus op dat de computer aan internet zit via ethernet. Als je niet voor een netwerk install gekozen hebt is het netwerk alleen nodig voor updaten, en dat is optioneel.

Weer later wordt gevraagd welk type software je wil installeren. In dit geval: Graphical desktop environment, laptop, standard system utilities. Na het installeren moet de bootloader Grub (misschien opnieuw) geinstalleerd worden. Controleer of bestaande installaties gedetecteerd zijn, en klik dan 'yes'. Echter dit betekent nog niet dat alles in Grub vanzelf goedkomt, als er al Windows op staat. Zie verderop bij sectie Grub. Er wordt ook gevraagd of je Coordinated Universal Time (UTC) wil gebruiken. Ja. Hierna is de installatie compleet. De cd wordt uitgeworpen en je kan rebooten.


sudoer list

Heel veel configuratie en installatie taken moeten met sudo permission gedaan worden, daarom is het handig om dit als eerste te regelen. Om jezelf (de ingelogde administrator/gebruiker/user) toe te voegen aan sudoerlist:

$ su (inloggen als root)
# visudo (geeft sudoerlist in een editor, deze moet geëdit worden)
<gebruiker> ALL = (ALL) ALL (toevoegen om gebruiker sudoer te maken)

Als de editor GNU nano is, kies je ^O WriteOut om te bewaren. Let op: ^ betekent ctrl toets! Het is dus ctrl+O. Het wordt weggeschreven in /etc/sudoers.tmp. Klik 'enter'. Om uit nano te gaan doe ctrl+x. Hierna kan je sudo-en.

Nog iets over het verschil tussen root en sudo. Als je als root bent ingelogd krijg je de command promt als hekje inplaats van dollarteken. Je bent dan superuser. Met sudo niet, echter je hebt dan tijdelijk wel dezelfde permissies. Log als root zo snel mogelijk uit met exit. Een typefoutje kan een drama ontketenen.


grub

Grub ziet het Windows systeem niet, daarom grub aanpassen in Debian:

$sudo /usr/sbin/update-grub2


automatisch inloggen

Als je de enige gebruiker van de computer bent kan je automatisch inloggen:

system > administration > login screen > click to make changes (password) > login automatically

Let op: je kiest een user name, maar daarop moet je nog een keer expliciet klikken om te bevestigen, anders wordt het vakje weer leeg en is er niks gekozen.

Als je niet wil dat het systeem lockt wanneer de screensaver aan gaat, kan je dat bij de instellingen van de screensaver instellen.


gedeelde Linux partitie mounten

Bij het installeren kan een gedeelde partitie geen mount point toegewezen krijgen. Je doet dit later vanuit de betreffende systemen. Hoe het precies moet hangt af van welke systemen de partitie delen. Hier volgt de beschrijving van een partitie die door twee Debian systemen gedeeld wordt.

Het is handig om eerst te kijken welke partities er zijn, en welke UUID nummers ze hebben:

$ sudo fdisk -l /dev/sda
$ sudo blkid

De gedeelde partitie moet gemount worden op een directory. Die moet wel bestaan. Eventueel kan je een specifieke directory hievoor maken, bijvoorbeeld:

$ sudo mkdir /mnt/shareddata

Nu heb je de informatie die nodig is om de partitie te mounten. Stel dat de partitie /dev/sda4 is:

$ sudo mount -a /dev/sda4 /mnt/shareddata

Als het goed is kan je nu de partitie zien op de plek waar hij gemount is. Maar uiteindelijk moet dit persistent worden zodat hij bij opstarten gemount wordt. Daarvoor moet een aanvullende regel in /etc/fstab gezet worden. Let op, je kan deze file alleen editen met sudo permission. Bijvoorbeeld in nano:

$ sudo nano /etc/fstab

Dan in file fstab zetten:

UUID=<nummer> /mnt/shareddata ext4 defaults 0 0

Let op, ext4 is het file system type. Als het een ander type is, moet dat overeenkomstig ingevuld worden. Voor een Windows NTFS partitie is dat inderdaad anders, zie verderop.


ext4 en permissies

Het ext4 file system type werkt met permissions. Als /mnt/shareddata van root is, mag niemand anders erin schrijven of weggooien. Zo heb je er weinig aan want je kan er niks op zetten! Nu is het toevallig zo dat op een debian-debian dual boot met één user per install, deze users dezelfde UID hebben, ongeacht hun naam. Kijk maar met:

$ id -u <username>

Je zal waarschijnlijk zien dat het op beide systemen 1000 is. Daardoor kan je de gedeelde partitie recursief aan die user in eigendom geven en dan werkt dat in beide systemen:

$ sudo chown -R <username>:<username> /mnt/shareddata

In Nautilus file browser kan je met properties van een map of file kijken wie de owner is en hoe de permissies staan. Ook kan je permissies via Nautilus wijzigen met:

$ sudo nautilus


symlink naar shared partition

Als de shared partitie /mnt/shareddata is, kan je deze in de file browser niet zo makkelijk benaderen. Via een symlink in home gaat dit sneller. Maak deze op de command line vanuit home met:

$ ln -s /mnt/shareddata shareddata

Let op, dit werkt alleen als /mnt/shareddata al van de user is. Als hij nog van root is, krijg je een wazige foutmelding. Dan kan je het met sudo doen maar je zult zien dat er ook op de symlink een slotje staat in de file browser.


standaard folders sharen in Debian-Debian dual boot

Nautilus, de file browser van Gnome, heeft net zoals file browsers op andere systemen (Windows, OSX) een aantal standaard directories voor de user, zoals Downloads, Documents, Music etc. Deze directories hebben een status aparte. Hun naam en locatie wordt bijgehouden in een bestandje ~/.config/user-dirs.dirs. Je kan dit bestandje ook zelf editen om naar een andere folder of locatie te verwijzen.

In het geval van een partitie die door twee Debian systemen gedeeld wordt, is het logisch om de standaard folders daar aan te maken, en in users-dirs.dirs naar die folders te verwijzen. De folders op de oude locatie (in home) kunnen dan verwijderd worden. Misschien kan je de oude ook wel simpelweg slepen naar de nieuwe locatie, maar dan moet je controleren of de nieuwe locaties goed doorgevoerd zijn in users-dirs.dirs.

Als je in home een symlink hebt naar de gedeelde partitie, zie je daaronder de nieuwe standaard folders staan. Er hoeft niet persé een symlink naar elke folder apart gemaakt te worden. Echter de folders zitten dan wel een nivo dieper: home/shareddata/downloads ipv home/downloads.


gedeelde NTFS partitie aanmaken

In Windows NTFS partitie aanmaken:

start > configuratiescherm > systeembeheer > computerbeheer > schijfbeheer

De partitie kan alleen geformatteerd worden als hij door Windows aangemaakt is. Een bestaande partitie kan je eerst deleten en dan weer aanmaken, dan formatteren.

$ sudo fdisk -l /dev/sda


partitie gedeeld met Windows mounten in Debian

Het is handig om in Debian te kijken welke partities er zijn, en welke UUID nummers ze hebben:

$ sudo fdisk -l /dev/sda
$ sudo blkid

De gedeelde partitie moet gemount worden op een directory. Die moet wel bestaan. Eventueel kan je een specifieke directory hievoor maken, bijvoorbeeld:

$ sudo mkdir /mnt/shareddata

Nu heb je de informatie die nodig is om de partitie te mounten. Stel dat de partitie /dev/sda4 is:

$ sudo mount -a /dev/sda4 /mnt/shareddata

Als het goed is kan je nu de partitie zien op de plek waar hij gemount is. Maar uiteindelijk moet dit persistent worden zodat hij bij opstarten gemount wordt. Daarvoor moet een aanvullende regel in /etc/fstab gezet worden. Let op, je kan deze file alleen editen met sudo permission. Bijvoorbeeld in nano:

$ sudo nano /etc/fstab

Dan in file fstab zetten:

UUID=<nummer> /mnt/shareddata ntfs-3g  defaults 0 0


touchscreen

De Panasonic cf-74 en cf-19 touchscreen driver zit in de Debian distributie. Om te calibreren is xinput_calibrator nodig. Dit kan niet via Synaptic. Hij is te vinden op:

www.freedesktop.org/wiki/software/xinput_calibrator

Voor i386 kan de package voor debian testing gekozen worden. Er is geen binary voor amd64. Deze kan gecompileerd worden van source, maar eerst moeten de volgende packages geinstalleerd zijn:

developer tools: automake, libtool, make, g++
headers: libxi-dev, x11proto-input-dev, x11proto-xext-dev, x11proto-core-dev

De binary package kan geinstalleerd worden met gdebi, de zelfgecompileerde moet aangeroepen worden vanaf de plek waar ie staat. Je moet de xinput_calibrator niet open klikken vanaf het menu, maar in de command line:

$ xinput_calibrator --output-type xorg.conf.d

De calibrator gaat open en je moet vier punten aanstippen. Je krijgt dan een output zoals dit:

Section "Inputclass"
          Identifier "calibration"
          Matchproduct "Fujitsu Takamisawa USB Touch Panel"
          Option "Calibration" "1090 15660 1351 15628"
EndSection

Om de calibratie persistent te maken zet je dit in /etc/X11/xorg.conf, bijvoorbeeld met gedit

$ sudo gedit /etc/X11/xorg.conf (om een file aan te maken en te openen in gedit)

De coordinaten moeten uiteraard die zijn welke uit de calibratie kwamen. Let op de syntax van de configuratie. Geen komma's tussen de coordinaten. Doe je dit fout dan wil X helemaal niet starten en zit je met een systeem wat alleen command line heeft, net als in het stenen tijdperk. In /var/log kan een log vinden voor Xorg.


non-free repositories

Synaptic in Debian kijkt bij default alleen naar repositories met free software. Om discutabele dingen te kunnen installeren moet je in settings > repositories ook de niet-vrije dependencies en software aanklikken. Let op: elke keer als je wat wijzigt aan de repositories moet je 'reload' doen om de packages te kunnen vinden. Maar nu kan je nog steeds niet alles vinden, want er zijn third party repositories die je zelf moet toevoegen.

Er is een repository "ftp://ftp.deb-multimedia.org" (was vroeger "ftp://ftp.debian-multimedia.org", maar dat vond debian niet goed meer). Je moet de volgende APT line toevoegen aan de third party repository list in Synaptic of in file /etc/apt/sources.list:

deb ftp.deb-multimedia.org squeeze main non-free

Vervolgens in Synaptic 'reload' (of apt-get update op command line). Je krijgt een error die je kan negeren, want nu kan je wel package deb-mulimedia-keyring selecteren. Deze installeren, en dan heb je toegang tot de multimedia repository. Nu kan libmp3lame0 (nodig voor Pd-extended) geinstalleerd worden via Synaptic.


Pd en pasuspender

Pd-extended kan niet via Synaptic geinstalleerd worden, dit moet met gdebi-gtk. Als Pd-extended geinstalleerd is, kan het nog niet vanaf het menu of via een desktop icoon opgestart worden, omdat het command pasuspender aangeroepen wordt, wat op Debian (gelukkig) niet staat. Dit command moet uit de start scripts gesloopt worden. Om de properties van menu items te veranderen:

System > Preferences > Main Menu

Dan item kiezen en rechtsklikken > properties

Voor een desktop shortcut kan je direct properties kiezen met rechtsklikken.


gnomealsamixer en Pd

Om het geluid met Pd aan de praat te krijgen moeten eerst een aantal andere dingen uitgezet worden. Hiervoor is de GnomeAlsamixer nodig want andere mixers hebben niet alle voorzieningen. Je moet:

IEC958 Default PCM - afvinken
capture > Rec - aanvinken

In Pd nog:

Pd > Media > Audio Settings: input / output aanvinken en juiste aantal kanalen zetten


wifi

Om met wifi te kunnen werken moet firmware-iwlwifi geinstalleerd zijn, via Synaptic.


vast IP adres

In Debian is het mogelijk een vast IP adres in te stellen, zodat je via een cross-cable zonder router, hub of switch met een andere computer kan communiceren.

System > Preferences > Network Connections > add > IPv4Settings > manual method > add

Je moet een IP adres invoeren in de range die bedoeld is voor lokale netwerken. Dat is 192.168.xxx.xxx of 10.0.0.xxx. De xxx zijn bytes dus de woorden mogen niet groter dan 255. De netmask is 24, dit vertaalt automatisch naar 255.255.255.0. De gateway is de poort naar internet, als je daarop wil moet je het IP adres daarvan kennen.

Let op: als de vaste IP gebruikt is, gaat hij de volgende keer als je een andere netwerkverbinding aansluit, via vast IP adres proberen te verbinden. Je moet dan opnieuw Auto eth0 applyen om weer de dhc methode te gebruiken.


wireless ad hoc netwerk

Met sommige netwerk kaarten kan je een ad hoc wireless netwerk opzetten. Met de 'kaarten' op de chipsets van de CF-19 en CF-74 kan dit. Weliswaar zijn dit kaarten die geen open
source software ondersteunen. Om te zien welke kaart de computer heeft:

$ lspci -v

De CF-19 heeft 4965 AG or AGN [Kedron] met kernel driver iwlagn, en de CF-74 heeft 3945ABG (Golan) met kernel driver iwl 3945.

Om een ad hoc netwerk te maken, dat kan via NetworkManager van Gnome. Deze zit in de 'Notification Area' van de panel. Als ie zoek is kan je hem terugkrijgen met:

$ sudo /usr/sbin/NetworkManager

Klik rechts op het icoon van de NetworkManager, en dan Edit Connections > Wireless > Add. Dan krijg je een formulier waarop je een wireless connection zelf kan aanmaken. Je hebt de keus tussen twee modi: infrastructure en ad hoc. Infrastructure is voor een access point, dat schijnen deze kaarten niet te kunnen want ze kunnen niet in 'master mode'. Ad hoc werkt dus wel.

- Connection name: is niet zo belangrijk
- Connect automatically: beter afzetten
- SSID: de naam van het netwerk zoals die in de lijsten verschijnt
- Mode: hier kies je dus Ad Hoc
- BSSID: dit laat je leeg
- Mac address: dit kan je ook leeg laten
- MTU: de packet size, kan je op automatic laten staan
- Wireless Security: kies WEP (WPA werkt niet) en doe 13 karakters
- IPv4 settings: bijvoorbeeld Address 10.42.43.1, Netmask 255.255.255.0, Gateway leeg laten

Dit alles doe je voor beide computers, alleen het IP Address moet voor de tweede computer anders zijn, hier 10.42.43.2. Als je de netwerken wil kiezen staan ze niet in het gewone lijstje maar bij de Hidden Wireless Networks.


realtime kernel


Om een realtime kernel te compileren moeten natuurlijk developer tools geinstalleerd zijn.

gcc
make
libc6-dev
perl
util-linux
module-init-tools
initramfs-tools
e2fsprogs
PCMACIAtools
libfuse2

en volgens Sumidero ook nog:

libncurses5-dev (voor de configuratie)
zlib-bin
zlib1g-dbg
zlib1g-dev
make-kpkg (om een gdebi package te maken van het geheel)

Je moet een kernel ophalen en een patchfile om er een realtime kernel van te maken. Eigenlijk moeten de kernel en patch nummers identiek zijn, maar in elk geval zo gelijk mogelijk. Het patchen gaat met:

patch -p1 < ../patch<patchnummer>

Het configureren gaat met de ncurses interface, maar er moet ook een echt grafische methode zijn. Dat is vast handiger want er zijn erg veel opties en hoe meer overzicht hoe beter. Enkele dingen die voor de Toughbook ingesteld moeten worden:

processor family (ik koos pentium 4 maar dit heeft geen dualcore, foute keus misschien)
sound devices > generic sound devices: pc speaker support disablen
PCI devices > Intel HDAudio > SigmaTel STAC9200 yes
ISA en SPI afzetten
alle 'comedi' drivers afzetten!

Om de files aan te maken moet met 'sudo make-kpkg...' Installeren dus met gdebi.

Als je wil kijken hoe de boot configuratie in grub nu eruit ziet:

/boot/grub/grub.cfg

De realtime kernel staat nu bovenaan de lijst en er is ook een recovery mode van.

Pd kan alleen met realtime priority draaien als de gebruiker is toegevoegd aan de groep 'audio'. In System > Administration is een tool 'Users and Groups'. De realtime priorities van de audio group staan in /etc/security/limits.d/audio.conf, daar neergezet door jack.d.


sound & alsa

Command 'lspci -v' geeft een overzicht van devices.

Command 'cat /proc/interrupts' geeft een overzicht van interrupt numbers.

Command 'cat /proc/asound/cards' geeft een overzicht van soundcards.

Command 'cat /proc/asound/pcm' ook.

Command 'aplay -L'  laat ook de soundcards zien.

Command 'echo $ALSA_CARD'  laat zien welke soundcard default is.

Je kan een soundcard tijdelijk default maken door command 'export ALSA_CARD=<cardname>' (Blackjack of Intel bij mij). Het is geldig voor de betreffende terminal sessie.

Je kan een geluidskaart permanent default maken door een file ~/.asound met daarin:

pcm. !default {
    type hw
    card <cardname>
}
ctl. !default {
    type hw
    card <cardname>
}

Let op! Ik heb dit gedaan met de Blackjack, maar daarna kon Pd de ingebouwde geluidskaart alleen nog maar vinden door multiple devices te gebruiken, en dit moest bij elke Pd sessie weer opnieuw ingesteld worden. Geen goed plan!