SONY VAIO PCG-Z600TEK (aka PCG-5316) – Debian GNU/Linux install notes


A friend gave me this old laptop from the early 2000’s.
Here are my personal notes about installing an optimized and lightweight Debian GNU/Linux system on this machine, mainly for internet browsing / music playing (with external speakers!)

Official support pages

Computer specs

PIII 700MHz
128 Mb SDRAM on the motherboard, 1 SODIMM slot available for RAM upgrade (Specs says this computer can be upgraded upto 256 Mb at max!)
8 Mb Video RAM (ATI Rage Mobility M1)
20 Gb HDD (a Win2000 system was installed)
No CD / No floppy drive
No booting from USB! / No PXE boot!
No Wifi
Dead battery!

Installation

Debian 6.0 (i386) – Launching Debian Installer from windows using win32-loader.

Since I couldn’t boot the computer from USB/PXE (BIOS limitation)  or from Floppy/CD (lack of), I used the special tool from Debian for launching the (netinstall) installer inside Windows (There was a working windows 2000 system on the computer).
Run & restart computer, to boot the Debian installer.

Firmware needed for Ethernet adapter! (e100/d101m_ucode.bin)

Fetch the .tar.gz package and copy the d101m_ucode.bin to a USB drive.
(Note : the LEDs on the ethernet adapter won’t lit, but it works!)

Post-installation configuration

Enable contrib and non-free repo’s
# nano /etc/apt/sources.list
(add non-free and contrib)

Hardware overview

# apt-get install hwinfo
# hwinfo

Soundcard
# lspci
We need the Yamaha YMF-744B proprietary firmware, see http://wiki.debian.org/snd-ymfpci
# apt-get update && apt-get install alsa-base alsa-utils build-essential
# exit
$ cd && wget ftp://ftp.alsa-project.org/pub/firmware/alsa-firmware-1.0.20.tar.bz2
$ tar xvf alsa-firmware-1.0.20.tar.bz2
$ cd alsa-firmware-1.0.20
$ ./configure
$ cd ymfpci && make
$ su
# mkdir -p /usr/local/lib/firmware/yamaha
# cp *fw /usr/local/lib/firmware/yamaha
# modprobe -r snd-ymfpci ; modprobe snd-ymfpci
# alsamixer
# exit
$ aplay /usr/share/sounds/alsa/Noise.wav

Graphics
The graphics adapter (ATI Rage Mobility M2) runs out of the box with XOrg, but looking at /var/log/Xorg.0.log, we can see that DRI is disabled (“kernel module mach64 not found”) so no hardware acceleration…
Unfortunately, DRI support for this board seems to have been discontinued.
Touchpad (AlpsPS/2 ALPS GlidePoint)
Vertical scrolling works out of the box.
Tapping is disabled by default, to enable it (at least for the left mouse button)
# synclient TapButton1=1
# nano /etc/X11/xinit/xinitrc
add the line

synclient TapButton1=1

(before the . /etc/X11/Xsession line)
TODO : This VAIO has a special wheel button (“Jogdial”) on the right side of the case. apt-get install sjog
TODO : Vaio special keys

Power management

# apt-get install laptop-mode-tools
You can run powertop just to see, but it won’t be very useful!
# powertop
Suspend to ram  : appears to be working, although not 100%!
Suspend to disk : tested OK
CPUFreq : non functional (governor not available). So no SpeedStep support?
Vaio control program, command line utility
# apt-get install spicctrl
Set LCD brightness to the max
# spicctrl -b 255
Set CPU fan speed
# spicctrl -f 255
Get (system/cpu?) temperature
# spicctrl -T

Configuring the Desktop

From Gnome 2 and XFCE to LXDE

In my case, I chose Debian’s default, ie Gnome 2 during install, for testing purposes.
As expected, Gnome does not run well with only 128Mb of RAM. It’s best to install a bare console system, then install (for example) LXDE later.
Xfce4 performs a bit better
# apt-get install xfce4 xfce4-goodies
but still not fast enough, so I will be using LXDE :
# apt-get install lxde
set lxsession as default session-manager instead of gdm3 ( http://wiki.lxde.org/en/Debian )
# update-rc.d -f gdm3 remove
# update-alternatives –config x-session-manager
then choose startlxde
(Afterwards, to start your lxde session, use “startx” from the console)

Autologin into X

# nano /etc/rc.local
add the line :
  su – <username> -c startx
before the “exit 0” line
If X doesn’t start upon reboot (error message “user not authorized to run the X server”)
# dpkg-reconfigure x11-common
set it to “anyone”

Desktop Applications

Web browsing

IceWeasel (from the backports for a more recent release) – See http://mozilla.debian.net/
# nano /etc/apt/sources.list
add :

deb http://backports.debian.org/debian-backports squeeze-backports main
deb http://mozilla.debian.net/ squeeze-backports iceweasel-release

# apt-get update && apt-get install -t squeeze-backports iceweasel
Remove gnash and add adobe flash plugin
# apt-get remove gnash
# apt-get install flashplugin-nonfree
As expected : Iceweasel is slow, flash video playback is crappy!
Epiphany web browser is lighter and can use the flash plugin
# apt-get epiphany-extensions
TIP: Remember to enable AdBlock with Epiphany (in the Extensions)
TIP: Set flash videos to low quality (240p on youtube)

Audio player

Alsaplayer
# apt-get install alsaplayer-gtk
No playback problems. Playlist management is not optimal (can’t add directories directly)
Aqualung
# apt-get install aqualung
Crashed on this system when playing mp3s!
Audacious2
# apt-get install audacious-plugins
The best lightweight player for me so far, no playback problems, list management is good.
NOTE : if encountering bad playback sound (stuttering, chopping), use the OSS output plugin instead of ALSA!

General Optimizations

Reclaim some disk space
# apt-get install localepurge && localepurge
Use prelink to speed up program execution
# apt-get install prelink
# prelink -am
Disable unused daemons/services to free some precious memory up
modem-manager / bluetooth / saned / cups / nfs-common / portmap / exim4 / network-manager / kerneloops
# update-rc.d -f <servicename> remove
Since I don’t use network-manager, I will configure /etc/network/interfaces accordingly
# nano /etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp
fstab optimization
# nano /etc/fstab
add the “noatime” option on the root / filesystem

# / was on /dev/sda1 during installation
/dev/sda1/               ext4    noatime,errors=remount-ro 0       1

Save some memory by limiting ttys
# nano /etc/inittab
comment some ttys (3 shall be enough!)

1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
3:23:respawn:/sbin/getty 38400 tty3
#4:23:respawn:/sbin/getty 38400 tty4
#5:23:respawn:/sbin/getty 38400 tty5
#6:23:respawn:/sbin/getty 38400 tty6

Decrease disk swapping
# nano /etc/sysctl.conf
add the lines :

vm.swappiness=20
vm.vfs_cache_pressure=50

Kernel boot options for some optimizations and a bit of embellishment
# nano /etc/default/grub
– force irqpoll to avoid certain warning messages while booting
– force UDMA mode : libata.force=udma3
(warning, test it from GRUB interactive mode before modifying your grub .cfg file)
(might be specific to the HDD model, mine is an IBM, use “hdparm -I” to see which udma modes are supported by your drive )
– Set VGA (framebuffer) mode to 1024×768 in GRUB’menu and in the console
– Add a nicer background image in GRUB’s menu
So here is the value of our GRUB_CMDLINE_LINUX

GRUB_CMDLINE_LINUX=”irqpoll libata.force=udma3″

– change GRUB’s menu resolution and background image

GRUB_GFXMODE=1024×768
GRUB_GFXPAYLOAD_LINUX=”keep”
GRUB_BACKGROUND=”path/to/the/image.png”

Write GRUB modifications
# update-grub

Remove annoying usb error message in console (“usb 1-1.1: device descriptor read/8, error -110”)
# nano /etc/sysctl.conf

Uncomment the kernel.printk line, reboot. The low-level error messages will not appear on the console anymore.

Further comments

A simple Openbox session is even lighter than a full LXDE desktop (128Mb only of RAM produces much swapping when using a web browser for example)
To set Openbox instead of LXDE :
$ sudo update-alternatives –config x-session-manager
then choose “openbox-session”.
Configure your Openbox :
$ nano ~/.config/openbox/rc.xml
or use obconf
Add some apps to start automatically
$ cat >~/.config/openbox/autostart.sh <<END
audacious &
lxterminal -e htop &
END

Things to test

– Replace the slow HDD with a CF card using a IDE-CF adapter (Note: the HDD is not easily removable on this computer model)
TODO : soundcard bugs! stuttering sound! with ALSA output. OSS output seems fine!

One thought on “SONY VAIO PCG-Z600TEK (aka PCG-5316) – Debian GNU/Linux install notes

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s