Image credit to : masternewmedia.
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 :[code language=’cpp’]/sbin/swapoff -a[/code]Enabling swap :[code language=’cpp’]/sbin/swapon -a[/code]
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.[code language=’cpp’]
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
[/code] - Edit Inittab
Edit /etc/inittab and disable (add # mark) tty3-tty6. It should like this :
[code language=’cpp’]
# getty-programs for the normal runlevels
#: : : # 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
[/code] - Change sysconfig setting
Change concurrent setting onYAST | SYSTEM | /etc/sysconfig editor Choose positive sign (+) on SYSTEM, KERNELChange
[code language=’cpp’]SCHED_MINTIMESLICE 1000
SCHED_MAXTIMESLICE 40000
[/code]
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 :
[code language=’cpp’]
for Ext3 : natime, nodiratime, barrier = 1
for XFS : noatime, nodiratime
for ReiserFS : notail, noatime, nodiratime, barrier = flush
[/code]
Please keep in mind that change the setting or partition type will make a deal with recovery capability of appropriate partition. It’s a good idea to read this and there tutorial for a reference. - 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 :
[code language=’cpp’]
zypper rm beagle
[/code] - 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.
Reference :
Nice tips. Esp. disabling services. I didn’t know that I don’t really need auditd etc. What about stopblktrace and rpcbind?
Nice tips. Esp. disabling services. I didn’t know that I don’t really need auditd etc. What about stopblktrace and rpcbind?
@Livio,
In my PC :
stopblktrace is enable and rpcbind is disable.
blktrace : http://linux.die.net/man/8/blktrace
@Livio,
In my PC :
stopblktrace is enable and rpcbind is disable.
blktrace : http://linux.die.net/man/8/blktrace
What if you want suspend to disk to work, do you need the swap space then? Or doesn’t suspend to disk need the swap space?
What if you want suspend to disk to work, do you need the swap space then? Or doesn’t suspend to disk need the swap space?
>for Ext3 : natime, nodiratime, barrier = 1
epic Fail ! 🙂
– it isnt “natime” it is “noatime”
– noatime implies “nodiratime”
– users most likely want “relatime” instead.
– barrier=1 is the default, did you mean barrier=0 ?
>for Ext3 : natime, nodiratime, barrier = 1
epic Fail ! 🙂
– it isnt “natime” it is “noatime”
– noatime implies “nodiratime”
– users most likely want “relatime” instead.
– barrier=1 is the default, did you mean barrier=0 ?
don’t disable swap.
of course, don’t make it 2xRAM, just a Gig or so in most cases.
don’t disable swap.
of course, don’t make it 2xRAM, just a Gig or so in most cases.
I think it’s better to use
in /etc/sysctl.conf instead of disabling swap. A swap partition is useful in many cases.vm.swappiness=10
vm.vfs_cache_pressure=50
– ‘notail’ option for ReiserFS slows your work with small files
– services:
— ntp: I would leave it to keep the clock synced
— splash, splash_early : only draws pictures on system console, disable
— xfs: I think you should leave it when having a XFS partition mounted
– in /boot/grub/menu.lst, replace vga=0x??? to vga=1 to have VGA console instead of graphic framebuffer
– swap is worth keeping – kernel uses RAM whenever it can; with no swap and no RAM left, it will kill random processes, making your system unstable
– ‘notail’ option for ReiserFS slows your work with small files
– services:
— ntp: I would leave it to keep the clock synced
— splash, splash_early : only draws pictures on system console, disable
— xfs: I think you should leave it when having a XFS partition mounted
– in /boot/grub/menu.lst, replace vga=0x??? to vga=1 to have VGA console instead of graphic framebuffer
– swap is worth keeping – kernel uses RAM whenever it can; with no swap and no RAM left, it will kill random processes, making your system unstable
First of all, do not disable swap as suggested. Instead change the systems “swappiness” which defines how easily swap gets used. I myself use swappiness 5.
http://en.opensuse.org/Responsiveness
Secondly, if your computer has enough memory, it will almost never swap to hd. You can use the “free” command or some other system monitor to verify this. That means that any tweaks to swap usage are going to have very minimal effects.
Thirdly when disabling system services, you should have a lot better knowledge of what they do, than just a list posted on some guys blog.
AD Beagle
Why to remove it?!?! Don’t propagate such brutish practices. Just stop it. Disable automatic launching. You can stop beagle service in the similar way as for Nepomuk. For easiest way use Kerry, it’s like to 3 clicks to do it.
My recommendation is to rather optimalize Beagle, then stopping it. Disable indexing media files (movies, pictures, audio) this can cause high disk traffic (and Linux ioscheduler is not best of breed). After some time Beagle indexes all and will have minimal impact on the computer speed. Give it a chance.
Beagle is very useful tool, I use it a lot, for searching everything, from my notes, email addresses, phone numbers, articles, journals, even for bookmarks (I keep only most used in browser).
It is definitively not a good idea to have *both* Beagle and Strigy running. They both do the same. Try to utilize just one. Save resources.
Can Strigy index MS Office files? If not then it is unusable for me.
Can Beagle be integrated with Nepomuk? Then can be unusable for others. Hard choice then 😉
Wow, the boot is faster then the whole KDE4 start.
Thank you!
🙂
Wow, the boot is faster then the whole KDE4 start.
Thank you!
🙂
Mas, saya instal opensuse 11.0 kenapa modem dialup di-disable waktu booting ya ? gimana caranya meng-enable-kan ? Maksudnya biar bisa konek internet via telkomet instan, akibatnya wvdial gak bisa deteksi modem.
Terima kasih solusinya
Hey..guys…I lost my microphone…What the hell couldve happened???
if u wanna tweak ur internet connection ,u should use dsl speed, it’s a efficient way to boost on line speed
Disabling swap will not give you any speed increase. I will speculate it will actually decress it as Linux could not remove any memory page from RAM, even if it is not used for weeks. Thus can’t use this wasted RAM as for example more buffers. Even if you have lots of RAM (i.e. 16 GB), swap will be good thing to have.