Onderstaande instructies gelden voor vrijwel alle Debian-achtigen en ook voor Ubuntu.
Ik vertrek het liefst van
Debian Testing omdat dat een rolling release is en je dus nooit meer een nieuwe versie hoeft te installeren. Gewoon upgraden en je krijgt telkens het nieuwste.
Vertrek in elk geval van een mini- of "network install"-ISO. Probeer ook zo'n iso vanaf een usb-stick te installeren in plaats vanaf een cd-rom, omdat dat veel en veel sneller is. Je kunt onder Linux
Unetbootin (zit in de standaard pakketten van Ubuntu en andere distributies) gebruiken om iso's op een usb-stick te zetten. Voor computers die geen boot vanaf een usb-stick ondersteunen maar wel vanaf een cd of een floppy kun je de
Plop Boot Manager gebruiken om toch vanaf een usb te kunnen installeren door te booten vanaf een floppy of cd-r met die Plop Boot Manager en die laat je dan vanaf de usb-stick booten. Werkt prima!
Installeer Debian (of Ubuntu) vanaf deze mini- of netinst-ISO normaal, maar als je op het eind het keuze scherm krijgt van wat je allemaal kunt installeren, vink dan de standaard desktop uit! De openssh server installeren is wel een goed idee, omdat je dan de onderstaande bevelen gemakkelijk kunt kopiëren en plakken vanaf een andere pc met webbrowser. Onderaan staan standaardgereedschappen aangevinkt. Bij een notebook ook nog notebookgereedschappen. Dat is OK en mag je laten staan.
De Debian Testing iso's hebben vaak een fout in de installeerder waarbij hij bij het binnenladen van pakketten vanaf de spiegelserver een foutmelding geeft dat hij bepaalde pakketten niet kan laden. Wat je daar ook kiest aan alternatieven, hij blijft de foutmelding geven. Kies gewoon "negeren" en laat de installatie verderzetten. Op het einde krijg je bij het keuzemenu dan maar één optie: de standaard systeemhulpmiddelen (eventueel aangevuld met de laptophulpmiddelen). Dat is eigenlijk precies wat we willen hebben, dus in feite prima.
Na afloop moet het systeem rebooten en krijg je een terminalprompt. Als je de openssh-server geïnstalleerd had, kun je naar een andere computer gaan en via ssh een terminaltoegang openen. Wellicht moet je eerst even op de verse installatie inloggen en met
sudo ipconfig eth0 het ip-adres opvragen als dat via dhcp toegekend werd.
De onderstaande uitleg is voor Debian Testing, omdat ik die leuker vind dan Ubuntu. Waarom? Omdat het een rolling release is en Ubuntu niet. Debian Testing hoef je dus nooit te herinstalleren of een tijdrovende upgrade naar een nieuwe versie uit te voeren.
We gaan eerst zorgen dat we de goeie softwarerepository's activeren. Standaard staan de editors nano en vi geïnstalleerd, maar als je zoals ik van Wordstar-compatibiliteit houdt kun je de editor joe installeren. Zelf verwijder ik ook de apt-listchanges die in Debian standaard geïnstalleerd wordt. Dat pakket zorgt ervoor dat je na iedere updatesessie een overzicht krijgt van de verschillen tussen pakketten die opgewaardeerd worden. Dat is voor de meeste gewone gebruikers helemaal niet interessant en zelfs vervelend. Ubuntu doet dat ook niet, dus weg ermee! Voor systeembeheerders is dit overigens wél nuttig. Ik werk ook graag met aptitude opdat dat een veel beter uitgewerkt en vollediger bevel is dan apt-get. Debian heeft het standaard aan boord, maar Ubuntu vanaf versie 11.04 niet meer. Ga eerst in rootmodus:
sudo -i
of
su root
en daarna:
apt-get -y install joe aptitude; aptitude -y purge apt-listchanges
Editeer nu met joe of een andere editor /etc/apt/sources.list zodat het er als volgt uitziet (en Vlamingen kiezen uiteraard .be. ipv .nl. in het onderstaande):
deb ftp://ftp.nl.debian.org/debian/ testing main contrib non-free
deb ftp://ftp.nl.debian.org/debian-security/ testing/updates main contrib non-free
deb ftp://www.deb-multimedia.org testing main non-free
Het is de bedoeling het systeem compact te houden en dus willen we alleen maar de pakketten installeren die we specifiek vragen en geen aanbevolen of gesuggereerde pakketten.
Editeer /etc/apt/apt.conf en vul dit in:
APT::Default-Release "testing";
APT::Install-Recommends "false";
APT::Install-Suggests "false";
Alles nagekeken en exact zo ingetikt? Dan gaan we nu updaten en upgraden voor zover nodig (als je 'stable' geïnstalleerd had, brengt je dit omhoog naar 'testing').
aptitude update ; aptitude -y full-upgrade ; aptitude -y install debian-keyring deb-multimedia-keyring ; aptitude update ; aptitude -y install firmware-linux lshw openssh-server
Dat laatste is alleen nodig als tijdens de installatie van de iso geen ssh-server gekozen werd en je die toch wel wil hebben.
Debian installeert normaal ook een lichte smtp-server om e-mails naar root te kunnen versturen. Dat is handig als je een server installeert, maar zinloos bij een desktop. Omdat we immers compactheid nastreven, opteer ik ervoor die te verwijderen:
aptitude -y purge exim4 exim4-base exim4-config exim4-daemon-light
Nu hebben we het basissysteem in orde. Als je bij de updates een nieuwe kernel hebt binnengekregen, reboot dan nu eerst het systeem met
reboot
en log daarna weer in als root (liefst via een ssh-sessie vanaf een andere pc met browser zodat je de rest gewoon kunt kopiëren en plakken).
Normaal zou het niet nodig moeten zijn, maar je kunt de taalondersteuning zonodig perfect op Nederlands zetten via:
localedef -v -c -i nl_NL -f UTF-8 nl_NL.UTF-8
update-locale LANG=nl_NL.UTF8
(Vlamingen vervangen hier de nl_NL door nl_BE)
Nu gaan we de grafische omgeving installeren. Doe eerst:
aptitude -y install xserver-xorg-core xserver-xorg xserver-xorg-input-evdev xserver-xorg-video-vesa xserver-xorg-video-<GraphicCardDriver>
Vervang <GraphicCardDriver> door de juiste naam, bijvoorbeeld 'nouveau' voor de open source nVidia-drivers.
Je kunt nagaan welke grafische kaart je hebt en dus welke driver via deze bevelen:
lspci|grep -i vga
aptitude search xserver-xorg-video-|grep -i naam
waarbij naam slaat op iets dat je tegenkomt in de string van de vga-kaart. Dat kan dus 'nvidia' zijn of 'radeon' of nog iets anders. Kies in elk geval de bij je kaart passende videodriver en installeer alleen die. Dat houdt het systeem compact. De VESA-driver die ik erbij laat installeren is een noodmaatregel, zodat je altijd beeld krijgt ongeacht welke kaart erin steekt. Ook die mag je weglaten als je wil.
Het pakket xserver-xorg kun je weglaten als je gdm3 zou installeren als display-manager, maar het is wel verplicht als je zoals ik voor lightdm kiest omdat die een bepaald bestand nodig heeft die in xserver-xorg zit maar niet in xserver-xorg-core.
We zijn nu klaar om de desktop te installeren:
aptitude -y install lightdm xfce4 xfce4-goodies xfwm4-themes xfce4-terminal xfce4-taskmanager xfce4-screenshooter-plugin thunar-archive-plugin thunar-media-tags-plugin gvfs-backends alsa-base alsa-utils hal gamin cpufrequtils dosfstools file dbus-x11 xdg-utils desktop-base desktop-profiles gnome-icon-theme dmz-cursor-theme apt-xapian-index synaptic conky htop squeeze bzip2 dia gpicview epdfview galculator gstreamer0.10-alsa gstreamer0.10-plugins-base gstreamer0.10-plugins-good freepats sane-utils rarian-compat software-properties-gtk upower uuid-runtime xz-lzma hdparm less logrotate
Een aantal pakketten zijn alleen nodig als je vanaf een testing iso installeerde en je een spiegelserverfoutmelding kreeg, maar het kan geen kwaad als je ze al geïnstalleerd had.
Dit is het meest compacte systeem met een XFCE4-desktop dat ik momenteel kan bedenken. We gaan het nu wat groter maken omdat we natuurlijk wel in staat willen zijn alle multimediaspullen weer te geven. Als je dat niet wil, kun je het volgende weglaten:
aptitude -y install flashplugin-nonfree gstreamer0.10-ffmpeg gstreamer0.10-plugins-bad gstreamer0.10-plugins-ugly libdvdread4 libdvdcss2 ttf-mscorefonts-installer openjdk-7-jre ttf-bitstream-vera ttf-dejavu ttf-dejavu-extra p7zip-full p7zip-rar zip unzip ntp ntpdate mplayer abcde meld system-config-printer system-config-printer-udev cups cups-driver-gutenprint ghostscript-cups foomatic-db foomatic-db-compressed-ppds foomatic-filters foomatic-db-engine colord w32codecs rsync asunder wavpack flac vlc vlc-nox
Er is nog geen browser geïnstalleerd. Dat kun je doen naar eigen smaak. Van compact naar uitgebreider:
1. Midori
aptitude -y install midori
2. Chromium (niet Chrome!)
aptitude -y install chromium-browser chromium-browser-l10n
3. IceWeasel (de Debian-versie van Firefox, ontwikkeling loopt tegenwoordig netjes gelijk)
aptitude -y install iceweasel iceweasel-l10n-nl
Op een systeem met minstens 512 MiB RAM kun je LibreOffice installeren, anders zou ik het bij Abiword of zo houden.
aptitude -y install libreoffice libreoffice-gtk libreoffice-help-nl libreoffice-l10n-nl cups-bsd libsane
We willen wel dat het systeem automatisch inlogt (ik toch). Bij LightDM is dat wat moeilijker voor elkaar te krijgen:
1. Editeer
/etc/lightdm/lightdm.conf en vul het volgende in onder [SeatDefaults]:
user-session=xfce
autologin-user=je-voornaam
autologin-user-timeout=0
pam-service=lightdm-autologin
2. Maak het bestand
/etc/pam.d/lightdm-autologin aan met als inhoud:
#%PAM-1.0
auth requisite pam_nologin.so
auth required pam_env.so readenv=1
auth required pam_env.so readenv=1 envfile=/etc/default/locale
auth required pam_succeed_if.so user != root quiet_success
auth required pam_permit.so
@include common-account
session required pam_limits.so
@include common-session
@include common-password
We willen ook graag dat numlock aangezet wordt (toch als er een numeriek blok is), de resolutie goedgezet wordt als die automatisch goedstaat en dat Conky gestart wordt (die hebben we immers geïnstalleerd).
Voor Conky gebruik ik het volgende .conkyrc bestand in de home-directory:
use_xft yes
xftfont Liberation Mono:size=8
xftalpha 1.0
text_buffer_size 2048
update_interval 4
total_run_times 0
own_window yes
own_window_transparent yes
own_window_argb_visual yes
own_window_class Conky
own_window_type desktop
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
double_buffer yes
minimum_size 200 0
draw_shades no
draw_outline no
draw_borders no
draw_graph_borders yes
stippled_borders 0
border_width 1
default_color white
default_outline_color white
default_shade_color 111
background no
alignment top_right
gap_x 20
gap_y 60
no_buffers yes
uppercase no
cpu_avg_samples 2
net_avg_samples 2
override_utf8_locale yes
use_spacer none
out_to_console no
out_to_stderr no
extra_newline no
show_graph_scale no
show_graph_range no
TEXT
SYSTEEM ${hr 2}
${alignc 22}${color grey}${font Liberation Mono:size=16}${nodename_short}${font}
${alignc}Debian Testing
${voffset 8} linux ${alignr}${kernel}
${voffset 8} processor ${alignr}$cpu% ${cpubar 8,60}
${voffset 8} geheugen ${alignr}$mem ${membar 8,60}
${voffset 8} wissel ${alignr}$swap ${swapbar 8,60}
${voffset 8} actief ${alignr}${uptime}
${voffset 8}
OPSLAG ${hr 2}
${voffset 8} home
${voffset 2} ${alignr}${fs_used /home}/${fs_size /home} ${fs_bar 8,60 /home}
${voffset 8}
${if_up ppp0}DIALUP ${hr 2}
${voffset 8} up ${alignr}${upspeedf ppp0}KiB/s ${upspeedgraph ppp0 8,60}
${voffset 8} down ${alignr}${downspeedf ppp0}KiB/s ${downspeedgraph ppp0 8,60}
${voffset 8} upload ${alignr}${totalup ppp0}
${voffset 8} download ${alignr}${totaldown ppp0}
${voffset 8} local ip ${alignr}${addr ppp0}
${voffset 8}${endif}
Kies in XFCE in het menu Toepassingen voor Instellingen en dan 'Sessie en Opstart'. Kies dan het tabblad 'Toepassing en autostart' en voeg daar een nieuwe toepassing toe:
/usr/local/bin/AdjustGUI.shDie moeten we natuurlijk nog aanmaken. Bij mij bevat dat bestand het volgende:
#!/bin/sh
#cvt 1280 1024 75
xrandr --newmode 1280x1024_75 138.75 1280 1368 1504 1728 1024 1027 1034 1072 -hsync +vsync
xrandr --addmode VGA-1 1280x1024_75
xrandr --output VGA-1 --mode 1280x1024_75
if [ -x /usr/bin/numlockx ]; then
/usr/bin/numlockx on
fi
xset -dpms;xset s noblank;xset s off
conky &
exit 0
Die xset-instructies schakelen screenblanking en elke schermbeveiliger uit. Dat kun je weglaten als je dat wél wil hebben.
Het eerste zet de schermresolutie op 1280x1024 met 75 Hz refreshrate. De meeste Linux'en blijven bij mij steken op 1024x768 bij desktops en dit verhelpt het. Vervang de 'VGA-1' door de naam van de juiste videouitvoer van jouw grafische kaart. Die eerste cvs instructie is overbodig, maar heb ik erbij gezet omdat je die kunt gebruiken om de eerste xrandr-regel met --newmode aan te passen als je gewenste resolutie en refresh rate zou verschillen van wat ik gekozen heb.
Zet een commentaarteken voor de regel met numlockx als je een notebook gebruikt zonder numeriek klavier.
Maak het bestand uitvoerbaar met:
chmod +x /usr/local/bin/AdjustGUI.sh
Nu gaan we het systeem nog wat efficiënter laten werken links en rechts. Maak het bestand
/etc/sysctl.d/60-local.conf aan:
#Tweaked local settings
# Verminder de swapneiging en krimp de inode cache niet agressief in
# Gebruik waarde 20 voor >1 GB RAM
vm.swappiness=10
vm.vfs_cache_pressure=50
#sidux tweaks
net.core.rmem_default = 524288
net.core.rmem_max = 524288
net.core.wmem_default = 524288
net.core.wmem_max = 524288
net.ipv4.tcp_wmem = 4096 87380 524288
net.ipv4.tcp_rmem = 4096 87380 524288
net.ipv4.tcp_mem = 524288 524288 524288
net.ipv4.tcp_rfc1337 = 1
net.ipv4.ip_no_pmtu_disc = 0
net.ipv4.tcp_sack = 1
net.ipv4.tcp_fack = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_ecn = 0
#debian tcp window scaling errata fix for buggy routers
#net.ipv4.tcp_rmem=4096 65536 65536
#net.ipv4.tcp_wmem=4096 65536 65536
# Do not send ICMP redirects (we are not a router)
net.ipv4.conf.all.send_redirects = 0
# Do not accept IP source route packets (we are not a router)
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.tcp_fin_timeout=30
#net.ipv4.route.gc_timeout=300
net.ipv4.tcp_tw_reuse=1
#disable ipv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Als je wél IPv6 wenst, zet dan commentaartekens # voor de laatste drie instructies in 60-local.conf.
Als je router en je provider geen IPv6 ondersteunen, werkt je systeem sneller als je het uitschakelt.
Volautomatisch uitvoeren van (veilige!) upgrades zonder de gebruiker ermee lastig te vallen:
#!/bin/sh
# do automatic noninteractive full upgrade
if ! ping -c 1 -w 1 8.8.8.8 >/dev/null; then
if ! ping -c 1 -w 1 194.7.1.4 >/dev/null; then
echo PROBLEM: No internet connectivity! >/var/log/autoupgr.log
exit 0
fi
fi
apt-get update
DEBIAN_FRONTEND=noninteractive apt-get -o Dpkg::Options::="--force-confold" -fuy upgrade
echo INFO: safe-upgrade done. >/var/log/autoupgr.log
exit 0
Maak bovenstaand bestand aan als autoupgr in /etc/network/if-up.d/
en maak het uitvoerbaar via
sudo chmod +x /etc/network/if-up.d/autoupgr
Reboot nu het systeem met
sudo reboot
En dan zou je dit moeten zien:
(klik voor een groter plaatje)