Laptop Dell Latitude D610 Step-by-step

From YobiWiki
Jump to navigation Jump to search

Converted with HTML::WikiConverter::MediaWiki from my old phpwiki site

  • Use
  • Be sure the laptop is connected to the network
  • Type "expert24" at Lilo prompt
  • When nothing is said below, always use the default choice
  • For country, choose Belgium (will be used for timezone)
  • Choose another hostname than the default "debian"
  • For Debian archive mirror, if you are a Leuven colleague, use our internal mirror :-)
    • Enter information manually
    • hera:9999
    • debian version: testing
  • Partition disks
    • Choose to erase entire disk (if you wanted to keep the Windows stuff, see LinuxInstall how to use ntfsresize from a Knoppix)
    • Write the changes? Say YES
  • Kernel to choose: the newest 2.6, here it was linux-image-2.6.12-1-386
    • Important: Keep default choice of initramfs-tools as yaird can be used only if we had booted already with a 2.6 kernel
  • Use non-free software: it's up to you...
  • If you are behind a proxy not yet configured because you used a local mirror, you will get a "Debian security" error, don't worry we'll fix that later
  • Video modes: doesn't matter, X will fail and we will install our own config later
  • I got frozen at 95% with "Installed Gnome" message displayed
    • I killed the process /usr/bin/perl -w /usr/share/debconf/frontend ...
  • Reboot: Kernel Panic
    • Don't panic :-) This is because 2.4 kernel emulated IDE over the SATA and referenced the root partition as /dev/hdaX
    • Enter the Grub editor (e) and change on the kernel line (e) /dev/hdaX into /dev/sdaX, then boot (b)
  • X fails
    • we'll login in text mode for now
  • Fix the /dev/hda -> /dev/sda issues (very important!)
    • Edit /etc/fstab and change all /dev/hda to /dev/sda and /dev/hdc to /dev/sdc
    • Edit /boot/menu.lst and change /dev/hdaX to /dev/sdaX on the line # kopt=root=/dev/hdaX ro
    • Run update-grub
  • Edit /etc/apt/sources.list
    • For Leuven colleagues:
 deb http://hera:9999/security/ etch/updates main non-free contrib
 deb http://hera:9999/debian/ etch main non-free contrib
 deb http://hera:9999/debian/ sid main non-free contrib
 # Only if you plan to recompile some packages (kernel compil does not require this)
 deb-src http://hera:9999/debian/ etch main non-free contrib
 deb-src http://hera:9999/debian/ sid main non-free contrib
  • If you added sid(unstable) but want to work mainly with etch(testing), edit/create /etc/apt/apt.conf with:
 # Use testing even if you said etch in the sources.list!!
 APT::Default-Release "testing";
  • apt-get update
  • apt-get dist-upgrade (we should be already up-to-date except for some possible security updates)
  • Install a new kernel with atapi enabled for sata: (do the following in this order!)
    • echo "options libata atapi_enabled=1" > /etc/modprobe.d/libata
    • apt-get install linux-image-2.6.15-1-686
    • Reboot and skip X server failure messages
  • Get X
  • Avoid the screen remaining black when closed/opened:
    • apt-get install acpi acpid vbetool
    • Create /etc/acpi/events/backlight with the following content: (keep it as exactly 2 lines)
 event=button[ /]lid
 action=[[ "$(cat /proc/acpi/button/lid/LID/state)" == *open ]] && { vt=$(fgconsole);chvt 15;vbetool post;sleep 1;chvt $vt; }

If you want it to take effect before reboot, run: /etc/init.d/acpid reload
If you prefer, you can also run the proposed script from DebianLaptop, select "vbepost"


Next items are of less importance, still nice to have:

  • Avoid whissling sound
    • Add to the kernel lines the argument idle=halt in /boot/grub/menu.lst:
      # kopt=root=/dev/sdaX idle=halt ro
    • Run update-grub
  • Use a CPU governor to reduce average CPU speed when idle:
    • apt-get install sysfsutils cpufrequtils
    • Add to /etc/sysfs.conf
    • If you want it to take effect before reboot:
      /etc/init.d/loadcpufreq start
  • Use laptop_mode to reduce HD load
    • apt-get install laptop-mode-tools hdparm (this requires also acpid which we installed before)
    • If you want it to take effect before reboot: /etc/init.d/acpid reload
  • To get wireless card working:
    • Go to and download the latest firmware
    • Unpack and move the ipw-* files to /usr/lib/hotplug/firmware
    • If you want it to take effect before reboot:
      modprobe -r ipw2200
      modprobe ipw2200
    • To use the card, pay attention there is a "hardware" switch with the Fn+F1 combination, iwconfig displays "radio off" when the radio is deactivated
  • To avoid the surprise to boot one day with eth0 being the wireless and eth1 the wired:
    • apt-get install ifrename
    • Create /etc/iftab with for example
      ETH* driver tg3
      WLAN* driver ipw2200
    • (You could choose whatever other names for the interfaces except eth0/eth1 as you cannot rename eth0 into eth1 while eth1 exists already...)
    • Edit /etc/network/interfaces and replace all eth0 by ETH0
    • Now wired is ETH0 and wireless is WLAN0
      To rename the wi-fi each time you load manually the module (if you plan to do so), create /etc/modprobe.d/ipw2200 with the following line (one line):
      install ipw2200 /sbin/modprobe --ignore-install ipw2200; ifrename
    • If you want it to take effect before reboot:
      ifdown eth0
      ifup ETH0
  • To enable DHCP only when a cable is plugged and avoid DHCP timeout when booting unplugged:
    • apt-get install ifplugd
    • dpkg-reconfigure ifplugd
      Static interfaces: ETH0
    • Edit /etc/network/interfaces and comment or remove the stanza "auto ETH0" as now ifplugd will take care of it.
    • You can try unplugging your cable, after 10s you'll lose your IP, plug again and you will get it back quickly.
  • To enable WPA on the wireless card:
    • apt-get install wpasupplicant
    • Edit /etc/wpa_supplicant and add a section for your network, cf /usr/share/doc/wpasupplicant/examples
    • Edit /etc/default/wpasupplicant
      OPTIONS="-w -i WLAN0 -D wext -c /etc/wpa_supplicant.conf"
    • Edit /etc/default/ifplugd
    • Edit /etc/network/interfaces
      iface WLAN0 inet dhcp
  • To be able to use the volume keys:
    • apt-get install hotkey-setup
    • gnome-keybindings-properties (launched as normal user!)
      Associate the 3 volume keys with the appropriate actions
  • To hear something when the volume is up :-) -> ALSA
    • apt-get install alsa-base alsa-utils alsa-oss gnome-alsamixer
    • alsaconf (if gnome volume dies, leave it like that till the end of alsaconf then reload it)
    • You can try with e.g. aplay /usr/share/sounds/alsa/Front_Center.wav
    • Create the file /etc/asound.conf as shown in DebianAlsa
    • apt-get install esound-clients libesd-alsa0 (this will replace libesd0, don't worry about warnings)
    • Edit /etc/esound/esd.conf and set auto_spawn=1
    • gnome-sound-properties (as normal user): be sure "Enable sound server startup" is UNchecked, we don't want it as with auto_spawn it will be launched automatically
  • To have suspend-to-ram working

Attempt to directly boot with a 2.6 kernel

DOES NOT WORK YET with 19-01-2006 snapshot (tg3 module fails):

  • Type "expert" at Lilo prompt
  • When nothing is said below, always use the default choice
  • If at first try, the cdrom is not recognised (this is visible also form the console: dmesg|grep ata2 shows "ATAPI is disabled"), then reboot and follow this first step:
    • At first screen ("Choose language"), go to the console: <alt-F2> then <enter>
    • modprobe -r ahci ata_piix libata
    • modprobe libata atapi_enabled=1
    • <alt-F1>
    • When prompted to detect cdroms, unselect all but the last 4 modules (ide-* and isofs) and say no to PCMCIA detection
  • When prompted to detect network, unselect all the modules (I had a freeze with one of them and we don't need them at this point)
  • modprobe tg3 does not work :-(