summaryrefslogtreecommitdiff
path: root/wired/old/published/How To Wiki/howto--speeduplinux.txt
blob: 3fe5d98d0662cfe4e3afa61e3e1813d174083fb4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
Linux is fairly lean machine out of the box, some distros more so than others, but overall Linux is not known as a resource hog. Still, there are some tweaks you can make to speed things up.

Given that most of the tips below involve the command line and editing system files, you should be fairly comfortable with Linux before attempting any of these tweaks.

And remember to always make a backup when you're editing system files, the quickest approach is to use the Terminal command cp. For instance to back up /etc/sysctl.conf you'd type: sudo cp /etc/sysctl.conf /etc/sysctl.backup 

== Get Rid of Unnecessary Processes ==

If you flip through our other OS speed guides you'll find this is one common element -- every OS ships with some processes you probably don't need. 

Most Linux distros have some sort of startup items tool in their "System" or "Administration" menus that let you control what runs in the background. In Ubuntu the main one is System >> Preferences >> Sessions.

Open your distro's equivalent of the Sessions panel and have a look around. Unless you sync your phone with your computer there's no need for the sync process to be running. Same withe the Bluetooth process if there is one. If you're using Gnome, but not Evolution (generally the default mail client) get rid of the Evolution Alarm.

While the Sessions panel lists most of the common processes, it doesn't have everything. For that you'll need the command line app sysv-rc-conf (sudo apt-get install sysv-rc-conf). At this point you've entered into advanced user territory so be very careful about what you change since you can permanently hose your system using this editor.

Remember to backup files and make small changes to single items rather than deleting in batches. After making a change log out and then log back in to make sure everything still works as you would expect.

== Reduce Swappiness ==

Swap files are what Linux uses to temporarily write things to disk. If you have enough RAM available, Linux uses that instead of the hard drive, but sometimes it's still over aggressive in writing to the swap drive.

Naturally you can configure how often the kernel falls back on the swap disk.

How much this will speed things up is debatable -- most of the time the out-of-the-box setting will strike a nice balance -- but if you're really suffering it's worth a try.

Before you change anything, run this command and look at the output number. The higher the number the more often the kernel will use the swap disk.

$ sudo cat /proc/sys/vm/swappiness 

Most distros set this number around 50-60. If you'd like to lower that open up /etc/sysctl.conf:

$ sudo gedit /etc/sysctl.conf

Naturally if you're on KDE swap kate for gedit (or use emacs, vi or any other text editor you're comfortable with), then add this like to the sysctl.conf file:

vm.swappiness=10

== Applications == 

We can't cover everything but here are a few common apps you can speed up with various tweaks

# OpenOffice -- It's full featured and it acts like when it starts up. Suffer through it one last time and then open the OO preferences window. Look for the Memory option under OpenOffice.org  and increase the memory allotted to the Graphics cache, both the "Use for OpenOffice.org" and "Memory per Object." If you're a heavy office user and you have RAM to spare don't be afraid to set these high say 100+ for the Graphics Cache and around 10MB per Object. Play around and see what works on your system.

# Firefox -- if the Fox has you down, try [http://202.108.100.164:8080/gate/big5/www.konqueror.org/features/browser.php Konqueror] if you're on KDE or [http://www.opera.com/ Opera]. Both use less RAM than Firefox and may be faster on older hardware. Of course Firefox 3 addresses hundreds of Firefox memory leaks so this may be less of an issue when it's released.

# Get rid of Compiz -- it used to be that very few distros shipped with the whiz-bang graphics enabled, but that's changing and if you're on an older system it's worth disabling to cut down on the processor overhead

# Use a "Lighter" Desktop Environment -- KDE and Gnome both look very nice and offer some great advanced features, but both are also harder on the processor. Give [http://www.fvwm.org/ fvwm], [http://fluxbox.sourceforge.net/ fluxbox] [http://www.icewm.org/ IceWM] or even [http://www.xfce.org/ Xfce] (which is still quite nice to look at) a try, they'll be much snappier, especially on older systems. Even better, master the command line -- it's fast, lightweight and simple once you adjust to its way of thinking.

== Things That Probably Won't Help ==

Among the common suggestions for speeding up Linux is one that almost always comes up and yet does almost nothing for you (at least in my experience). Linux typically uses up to six virtual terminals, which run in the background and eat up very miniscule amounts of RAM. The virtual terminals could, maybe, in some ever-so-slight way slow down your system, but RAM is cheap and frankly throwing in an extra stick is going to do way more than disabling virtual terminals could ever hope to -- don't bother with this one.

== The last resort -- Optimized distros ==

If you're really looking for a lean and mean Linux machine -- especially if you're using older hardware -- consider one of the many ultra-lightweight distros. [http://damnsmalllinux.org/ Damn Small Linux], [http://www.puppylinux.org/user/viewpage.php?page_id=1 Puppy Linux], [http://featherlinux.berlios.de/ Feather Linux] and others are specifically designed to run on older computers using very little in the way of resources. 

They may lack some of the nicer graphical features of the larger distributions, but they have all the basic apps you'll need to get your work done.