Note:
If you just want a guide to follow through and start enjoying Fedora, go to Lazy man's guide to speed up Fedora. It should be simple to follow and you should be done in 5 min.
Part I: Services.
All operating systems have services that you won't be using. You just have to know what the services do and turn the irrelevant ones off.
A few words of comment. This is the most safe way. It's meant to be configured and you can always later turn them on. And it's very effective.
anacron
This runs cron(a scheduler) jobs that were scheduled to run when the system was down. Safe to disable, unless you had a cron job that makes backups at times the system was down.
apmd
Advanced power management daemon. Only leave on for a laptop computer.
bluetooth
If you don't have bluetooth, which is my case. Then obviously...
btseed, bttrack
Automatic seeding and tracking for torrents. Disabled unless you specifically wish to seed or track torrents. More information from a BitTorrent FAQ on seeding and tracking.
canna
Japanese support.
cups
Common UNIX Printing Solution. It is one system the computer uses to control the print queue. Only leave it on if you have a printer
cupsd
Printing. Enableonly if you have CUPS compatible printer that works in Fedora.
firstboot
Specific to Fedora's installation process. Perform tasks to be executed once upon booting after installation. Even though it verifies it has been run before (using /etc/sysconfig/firstboot), it can be disabled.
gpm
Lets you use the mouse in text-only console. Leave it off If you never leave X window system. And you probably don't use mouse in console mode any way.
httpd
Makes your computer a webserver. Unless you have a webpage you are hosting, this can be turned Off.
hplip, hpiod, hpssd
A service to support HP printers in Linux, including Inkjet, DeskJet, OfficeJet, Photosmart, Business Inkjet and some LaserJet printers. Only enable if you have a supported compatible printer.
httpd
Apache HTTP Web Server. If you do web development then leave enabled. Most desktop users and/or non-developers should leave this disabled.
ip6tables
Firewall for IPv6 communication. If you are not using IPv6, then disable this.
irda, irattach
Infrared communications between devices (laptops, PDA's, mobile phones, calculators, etc). This should be disabled for most users.
irqbalance
To increase performance across processors on a multiprocessor system.Uni-processor users or uni-core processor users disabled. Newer computers with multi-core CPU's (Intel Core 2 Duo, AMD X2) should enable this. Leaving this enabled should not affect performance on single CPU/single core systems.
isdn
Unless you have an ISDN modem(which is kind of old), disable this.
kudzu
Fedora's hardware probing service. It optionally configures changed hardware. If you swap hardware or need to detect/re-detect hardware this can be left enabled. But you can run it only when necessary, ie, your hardware changed.
lirc
For infrared remote controls in Linux. If you do not have this hardware, leave this disabled.
lisa
LAN information service and provides similar functionality to the "network neighbourhood" concept in Windows. Only useful for computers on a network, users of Samba or NFS may not require this. Most users should leave this disabled.
lm_sensors
Provides monitoring for motherboard sensor values or specific hardware (commonly used with laptops or high-end servers), watching realtime values for PC health, etc. This is also popular with GKrellM users. Disable this unless you have a need.
mcstrans
Required to see proper context information when you are using SELinux. Users who do not use SELinux can disable this.
mdmonitor
Useful for monitoring Software RAID or LVM information. It is not a critical service and may be disabled.
netconsole
Initializes network console logging. Leave to its default disabled state.
netfs
Automatic mounting of any shared network file space such as NFS, Samba, etc on bootup. Useful if you connect to another server or filesharing on your local network. Most single desktop/laptop users should have this disabled.
netplugd
Monitor network interfaces and executes commands when their state changes. Leave to default disabled.
nfs, nfslock
Standard network file sharing for Unix/Linux/BSD style operating systems. Unless you require to share data in this manner, disable this.
nscd
Handles passwords and caches them for naming/authentication services like NIS, NIS+, LDAP, or hesiod. This should be disabled.
ntpd
Automatically updates the system time from the internet. Mentioned in the installation process. If you have an active ("always-on") internet connection it is recommended you enable this, but it is not required.
pcscd
Support for Smart Cards and Smart Card Readers. Small chip like devices that are embedded in certain credit cards, identification cards, etc. Unless you have such a reader, this should be disabled.
restorecond
Used to monitor and restore proper file contexts for SELinux. NOT required but highly recommended if you use SELinux.
rpcbind
Manages remote procedure call support for other services (such as NFS or NIS),similar to 'portmap'. Can be disabled if you have no other services depend on it.
rpcgssd, rpcidmapd, rpcsvcgssd
Used for NFS v4. Unless you require or use NFS v4, these should be disabled.
sendmail
Unless you run a server or you like to transfer or support a locally shared IMAP or POP3 service, most people do NOT need a mail transport agent. If you check your mail on the web (hotmail/yahoo/gmail) or you use a mail program such as Thunderbird, Kmail, Evolution, etc. then you should disable this.
setroubleshoot
SELinux Troubleshooting Daemon. Provides information to the setroubleshoot Browser. While this is not a critical service it is incredibly helpful for debuggin SELinux issues. Leave this enabled only if you have SELinux enabled.
smartd
SMART Disk Monitoring Daemon can be used to monitor and predict disk failure or problems on hard disk that support this. Most desktop users may not need this unless there is possible problems, but is it recommend to be left enabled (especially for servers).
smb
The SAMBA daemon is required to share files from Linux to Windows. This should be enabled only if you have windows computers that require file access to Linux.
smolt
This daemon provides monthly information for Smolt which is gather statistics and information to assist Fedora developers. Users who wish to help and share information should enable this, otherwise leave this disabled.
sshd
This is not needed if you have no other computers or no need to login from a remote location (work, school, etc.) with SSH. Most likely this should be disabled.
wpa_supplicant
Required if you use a wireless card that requires WPA based encryption to connect to an Access Point, VPN or Radius Server. People who do not need to connect to a WPA wireless network can disable this.
yum-updatesd
YUM Update notifier daemon provides notification of updates which are available to be installed to your computer.If you don't want your systems to be constantly updated, then turn this off. And I think it's even better turned off than on because constant updating gives rise to many problems (like your Windows XP that is getting slower and slower). Only choose updates that are known to fix your problems or security problems.
Again, the service disabling should already increased performance a lot. It should feel much more smooth now. And the following method is somehow additional and not as safe (unless you disable the wrong services). I omitted the services that you don't usually disable.
Much more details about services can be find here containing services that you can and cannot disable:
http://fedoranews.org/mediawiki/index.php/Which_Services_Can_I_Disable%3F
http://www.mjmwired.net/resources/mjm-services-f8.html
http://www.bootchart.org/samples.html#Fedora
http://www.redhat.com/archives/fedora-devel-list/2004-November/msg01374.html
The first is a link to a software where the usage is demonstrated in detail in the second link.
Bootstrap is for the perfectionist. The efficiency is much less than turning off redundant services. But an optimal arrangement of sequences and parallel tasks will indeed help up to at least something like a minute I think, with a mediocre computer.
Part C: TCP
http://www.acc.umu.se/~maswan/linux-netperf.txt
Very detailed instructions.
Part D: Kernel parameter
This morning, I stumbled upon some article concerning changing kernel parameters for older computers. I carelessly lost the link and I can't find it. And I'm not too desperate in finding it because as far as I understood it, it seems that it works noticeably only for fairly old computers. (You would expect the current kernel settings to be appropriate for most recent computers). And the thing is, if you have that old an computer, you should probably run Damn Small Linux or something because above all, a matching operating system should be your starting point of tuning. I think the moral of tuning is making good things better, not the impossible possible.
I'm prying for possibilities too. So any suggestions are cordially welcomed.
avahi-daemon needs to be enabled because the pulse-audio sound server requires it to be able to connect to it.
ReplyDelete