Linux in Government: Optimizing Desktop Performance, Part III
If you use Fedora Core 3, you can find the system-config-services tool on you applications menu by selecting applications -> System Settings --> Server Settings --> Services. When you select that option, you then see a prompt asking for you administrator's password. Enter that and you next see a window similar to the one shown in Figure 2.
On the left side of Figure 2 you can see a list of services currently running in runlevel 5, your default run level.
From time to time, Fedora users happy with their distribution may run across comments on mailing lists and forums that call the distribution "bloatware". Webopedia defines bloatware as:
(n.) jargon Software that has lots of features and requires considerable disk space and RAM. As the cost of RAM and disk storage has decreased, there has been a growing trend among software developers to disregard the size of applications. Some people refer to this trend as creeping featuritis. If creeping featuritis is the symptom, bloatware is the disease.
If you look at the services checked list in Figure 2, you can see that many services have been selected. Keep in mind that Red Hat makes Fedora available to provide a test bed for innovations it plans to incorporate into its Red Hat Enterprise Linux offering. One might consider Fedora bloatware if Red Hat sold the product. As it stands, I consider Fedora to be a good product and one I can modify to suit my preferences.
For desktop purposes, I start by disabling apmd, autofs, identd, ip6tables, iptables, isdn, lpd, nfs, portmap, talkd and sendmail. You can do this using system-config-services. Remember, though, that whatever you disable in runlevel 5, you also should consider disabling in other runlevels. If you run the command #init 3 and don't go into that mode elegantly, you have to go back and check your service settings.
Another way to edit your services in Fedora involves the command-line utility called ntsysv. When you run that command, you see a screen similar to the one shown in Figure 3.
Unfortunately, space requirements here do not allow for a detailed discussion of each service. If you are not familiar with them, use the system-config-services utility, shown in Figure 2, and read about each one. Also, use Google to search for the ones with which you are unfamiliar.
Other services people may wish to disable on Fedora include:
mDNSResponder: used by Howl clients to perform Zeroconf service discovery on a network; should not be running otherwise.
mdmonitor: software RAID monitoring and management multipath device not required for single drive systems.
mdmpd: used to create, manage and monitor software RAID volumes.
httpd: not necessary unless you're running a Web server.
iptables: used for firewalls.
kudzu: used to discover new peripheral devices; can be redeployed if you add peripherals later.
mysqld: unnecessary if you are not using a database.
If you are not using the Network File System (NFS), you also can disable netfs, netplugd, network, nfslock and nfs. And, if you are not sharing a network with Microsoft Windows, you can disable smb and nmb.
I also chose to disable SELinux on my desktop because of its resource requirements. I consider SELinux important for servers or, when needed, in secure and classified environments but not necessary for normal desktop use. As with other services, test and see if it slows down your boot process or inhibits desktop performance.
Unlike Fedora, most Linux users do not consider Ubuntu to be a bloatware distribution. In its default mode, few services run unnecessarily. Still, for strictly desktop use, I have found some tweaks that can increase performance.
Ubuntu does not come with a graphical tool to disable services. If you have the necessary skills to run the commands in text mode to manage services, you probably already know which ones you want enabled or disabled. I downloaded several from Ubuntu repositories, including sysv-rc-conf, rcconf and bum. I found bum to be the most comprehensive and user-friendly tool for Ubuntu.
You'll have to download bum from its Web site. Once you install it and log back into your desktop, you should see it in the menu listed as Boot-up Manager, bum for short. See Figure 4.
Once you select bum from the menu, you have to enter your admin password. You should see something similar to the window shown in Figure 5.
As you can see, the Boot-Up Manager for Ubuntu provides significant detail. In many instances it can provide you with enough information to prevent you from making a mistake when you disable or enable a service.
In Ubuntu, I disabled several services for strictly desktop use. I began with the following:
ntpdate: a utility that updates the system clock on each reboot.
pcmcia: used only with laptops if one has PCMCIA cards.
ppp: point-to-point protocol used only if you have a modem. I disabled the built-in modem in my desktop and only use a network interface card.
powernowd: I use an AMD processor with Ubuntu and this service does not work with AMD.
rsync: a utility that provides fast incremental file transfer if you wish to mirror or back up data. I don't use it.
fetchmail: a utility to retrieve and forward mail and act as a gateway to smtp. I use a Linux groupware client, so I do not use this utility.
postfix: a mail transfer agent similar to sendmail. I use a mail server from my ISP and our company domain, so I don't see a need for this.
Once I unchecked these services in bum, I rebooted and noticed a significant decrease in the time required to reach my GNOME desktop. I then surveyed my system and disabled additional services, including LVM, mdadm, EVMS and pppd-dns. Again, I rebooted and saw a significant decease in boot-up time.
Another Note: Ubuntu installs with a default kernel set for i386 processors. Because I use an i686 kernel, I found upgrading also increased my system performance significantly. To do this, you can use Synaptic to search for linux-image-2.6.10-5-k7 if you use AMD or linux-image-2.6.10-5-686 for Pentium Pro/Celeron/Pentium II/Pentium III/Pentium IV.
The developers generally produce kernel image packages if you wish to create a custom kernel from the sources. We will cover that process in a future article.
By selecting and installing the kernel package, you can upgrade your default kernel to one optimized for new processors. You should experience a performance increase.
If you decide to disable the services mentioned above, consider using the graphical Boot-Up Manager (bum). I have read some disturbing suggestions from users concerning modifying init scripts. You want to have the ability to go back and enable services if disabling them causes you trouble. With bum, you can do that. With some command-line techniques, you might discover yourself in a nest of mad hornets without an escape plan.
Practical Task Scheduling Deployment
One of the best things about the UNIX environment (aside from being stable and efficient) is the vast array of software tools available to help you do your job. Traditionally, a UNIX tool does only one thing, but does that one thing very well. For example, grep is very easy to use and can search vast amounts of data quickly. The find tool can find a particular file or files based on all kinds of criteria. It's pretty easy to string these tools together to build even more powerful tools, such as a tool that finds all of the .log files in the /home directory and searches each one for a particular entry. This erector-set mentality allows UNIX system administrators to seem to always have the right tool for the job.
Cron traditionally has been considered another such a tool for job scheduling, but is it enough? This webinar considers that very question. The first part builds on a previous Geek Guide, Beyond Cron, and briefly describes how to know when it might be time to consider upgrading your job scheduling infrastructure. The second part presents an actual planning and implementation framework.
Join Linux Journal's Mike Diehl and Pat Cameron of Help Systems.
Free to Linux Journal readers.View Now!
|The Firebird Project's Firebird Relational Database||Jul 29, 2016|
|Stunnel Security for Oracle||Jul 28, 2016|
|SUSE LLC's SUSE Manager||Jul 21, 2016|
|My +1 Sword of Productivity||Jul 20, 2016|
|Non-Linux FOSS: Caffeine!||Jul 19, 2016|
|Murat Yener and Onur Dundar's Expert Android Studio (Wrox)||Jul 18, 2016|
- Stunnel Security for Oracle
- The Firebird Project's Firebird Relational Database
- Murat Yener and Onur Dundar's Expert Android Studio (Wrox)
- SUSE LLC's SUSE Manager
- Managing Linux Using Puppet
- My +1 Sword of Productivity
- Non-Linux FOSS: Caffeine!
- SuperTuxKart 0.9.2 Released
- Google's SwiftShader Released
- Doing for User Space What We Did for Kernel Space
With all the industry talk about the benefits of Linux on Power and all the performance advantages offered by its open architecture, you may be considering a move in that direction. If you are thinking about analytics, big data and cloud computing, you would be right to evaluate Power. The idea of using commodity x86 hardware and replacing it every three years is an outdated cost model. It doesn’t consider the total cost of ownership, and it doesn’t consider the advantage of real processing power, high-availability and multithreading like a demon.
This ebook takes a look at some of the practical applications of the Linux on Power platform and ways you might bring all the performance power of this open architecture to bear for your organization. There are no smoke and mirrors here—just hard, cold, empirical evidence provided by independent sources. I also consider some innovative ways Linux on Power will be used in the future.Get the Guide