Before you read this, please keep in mind that there were no tweak or tips which suitable for all condition and completely work for all users. Tweak and tips will only be suitable depending your purposes, requirement and environment. As an example, I may disable a service but the same service must be keep enable on your side because I do not use the service but you do.
This post is based on true story :-). It’s my experience and I’ve applied it. I get a faster and nicer openSUSE after applying these tips. The success story may vary depending above reason and I’ll be very pleasant for your advice or suggestion. Please share your experience by dropping a comment if you decided to apply these tweak, partially or fully implementation.
- Disable Swap
If you have more than 512 MB of RAM (1 GB an example), it’s may better to disable your swap space. Swap will only be used if computer has not enough memory for managing system task, but in certain condition, swap will be used even on enough memory condition. Disabling swap will push the system to fully managing memory allocation with RAM.
Disabling swap :
Enabling swap :
BEWARE : Please don’t try this if you have less than 512 MB of RAM. Even though Linux have a good memory management to manage memory allocation, I do not suggest this tips because the computer may suddenly hang if Linux has not enough memory.
There were also some suggestion on installation tutorial to prepare about 2.5X of RAM as good swap partition. IMHO, it may suitable for an ancient history where 128 MB of RAM is quite big. Now, RAM bigger than 4 or 8 GB is a common environment. 2.5X of 8 GB is 20 GB. Do you need 20 GB of swap for buffering daily task ?
- Disable Unnecessary Services
It’s an important tips. Disable unnecessary service to increase available memory. Go toÂ YAST | SYSTEM | SYSTEM SERVICES – RUNLEVEL to disable or enable any service. You may also used chkconfig servicename off/on to disable or enable services but I recommended YAST as primary choice because YAST has complete information about what is service provided for.
Choose Expert Mode to see complete information.What’s service should be disable ? As describe on prologue above, it may vary depending your purposes but I try to keep it simple. Below is a list of some service. Please adjust the service state with your purposes and condition. If I skip the service, it means that I leave it on default condition.
SuSEFirewall2_init and setup : disable, unless you used firewall. aaeventd : If you have never used AppArmor, disable it. Disabling this service will also disable boot.apparmor acpid : leave it alsasound : leave it atd : disable auditd : disable autofs : disable autoyast : disable avahi-daemon : disable (will also disable avahi-dnsconfd) bluetooth : disable, unless used bluetooth bluetooth-coldplug : disable, unless used bluetooth cron : leave it, unless you have no scheduled cron job. I leave it enable on my work PC but disable this on my home PC cups : leave it if you has attached printer or need CUPS to print to another printer, if not so, disable it. dbus : leave it earlykbd : leave it, unless you do not need keyboard earlyxdm : leave it earlysyslog : leave it, for logging fbset : disable gpm : disable haldaemon : leave it idmapd : disable joystick : disable, unless used it for games kbd : leave it, for keyboard lirc : disable mdadmd : disable named : leave it, for DNS Server daemon (I leave it disable on my home PC but automatically change to enable if I decided to install DNS Server) mircocodectl (Disable for AMD CPU, leave it for Intel processor) network : leave it, unless you have stand alone workstation and do not need to share files or used networking service nfs : disable nfsboot : disable, depending nfsserver : disable nmb : disable, unless used it for Samba sharing file nscd : disable ntp : disable openct : disable pscsd : disable portmap : disable postfix : disable, unless used it for mail transport or mail server powerd : disable powersaved : disable, unless used suspend feature random : leave it raw : disable rpasswdd : disable saslauthd : disable smb : disable, unless used it for Samba sharing file smbfs : disable, according to smb state smpppd : disable, unless used it for dial up spamd : disable splash : leave it splash_early : leave it sshd : disable, unless used it for ssh access. sshd = ssh service daemon. syslog : leave it xdm : leave it xfs : disable xinetd : leave it
- Edit Inittab
Edit /etc/inittab and disable (add # mark) tty3-tty6. It should like this :
# getty-programs for the normal runlevels # <id>:<runlevels>:<action>:<process> # The â€œidâ€ field MUST be the same as the last # characters of the device (after â€œttyâ€). 1:2345:respawn:/sbin/mingetty â€“noclear tty1 2:2345:respawn:/sbin/mingetty tty2 #3:2345:respawn:/sbin/mingetty tty3 #4:2345:respawn:/sbin/mingetty tty4 #5:2345:respawn:/sbin/mingetty tty5 #6:2345:respawn:/sbin/mingetty tty6
- Change sysconfig setting
Change concurrent setting onYAST | SYSTEM | /etc/sysconfig editor Choose positive sign (+) on SYSTEM, KERNELChange
SCHED_MINTIMESLICE 1000 SCHED_MAXTIMESLICE 40000
Make another change on SYSTEM, File System -> mdadm
Disable MDADM_SCAN and set â€œ0â€³ for MDADM_DELAY
- Increase Partition Performance.
Modify /etc/fstab and add these setting :
for Ext3 : natime, nodiratime, barrier = 1 for XFS : noatime, nodiratime for ReiserFS : notail, noatime, nodiratime, barrier = flush
- Disable Beagle
Beagle used for desktop search. It has such improvement on openSUSE 11.0 and 11.1 but if you didn’t used it for daily usage, removing beagle will saved a memory that being used for indexing. Remove it with YAST | Software | Software Management or used our lovely zypper :
zypper rm beagle
- Disable Nepomuk Desktop Search (on KDE 4)
If you use KDE 4, you may get a bonus by disabling Nepomuk Desktop Search and Strigi desktop Indexer 🙂 . Navigate to Kick off Menu | Configure Desktop | Advanced | Desktop Search. Disable (uncheck) Nepomuk Desktop Search and Strigi desktop Indexer.
After applying these tips, launched Konqueror and navigate to System Information (type sysinfo:/ on URL address and press enter. I used KDE 4.2 beta 2 with standard menu while writing this post. You may also get same result by go to kick off menu | Computer | System Information). See how much free memory available on your computer. After that, reboot your computer, re-check the system information before and after tweaking.