This section looks at a number of system administration applications, each of which implements a different set of functionality. Though there are plenty of administration, monitoring, and tracking applications that come with the standard Fedora Core distribution, the ones discussed here are very powerful and a little bit different.
You may remember that we first mentioned the sysadmin application in Chapter 13. As an example of the power and flexibility of Perl, we ve put together a small System Administrator Helper application, for which we hope you may find a use. It s not as complex and functional as the others being introduced in this chapter, but in many ways this is a strong point ”it shows you the bare-bones information about your system that you ll need to refer back to time and time again.
To install the System Administration Helper, simply download the files from the www.wrox.com Web site, where they form part of the book s code download. There are two .tar.gz files, and a .pl installation script. Once you ve got the files on your machine (probably in /usr/local ), simply run the installation script and follow the instructions provided.
You ll be asked to specify a username and password. Make a note of these, as you ll need to supply them every time you log in to the application.
When you load the System Administration Helper in your browser, you should see something like that shown in Figure 15-2.
The application presents you with information about your Hardware, Software, Network, and User settings, together with a list of the latest Linux Security vulnerabilities that have been detected , and may apply to your system. Many of these headings contain subsections that you can use to further explore and configure your system. Try it and see.
This application uses its own thttpd Web server. This is started automatically as part of the install, but for security reasons isn t configured to run all the time (it runs only until your machine is shut down). So, before browsing to the program, you ll need to start the server by issuing the command /etc/init.d/thttpd start from the command line.
You may remember the Perl systems administration applications from the previous chapter. If you imagine that application with a few more features, and converted into a standalone GNOME application that can be run from the desktop, you have a fairly good idea of the GNOME Workstation Command Center (or GWCC). Figure 15-3 illustrates GWCC in action.
You can use GWCC to show network activity and connections, view current processes, monitor disk usage, and invoke network utilities. Because it is a standalone application (and does not rely on the existence of a Web server running in the background), you can conveniently use this application at any time without having to worry about possible security issues.
If you want to give this application a try, download the binary RPM package from one of the following sites on SourceForge .net:
To install the package, you can use the rpm command with the -hvi switches from the command line, like so:
# rpm -hvi gwcc-0.9.8-1.i386.rpm
Then you can execute it using the command /usr/bin/gwcc . Its convenience and small memory footprint may convince you to have it running all the time.
GWCC and our sysadmin tool are definitely nice and useful applications. But now, you are about to get a look at the king of them all ” Webmin . Before reading what Webmin can do, take a look at Figure 15-4.
Look at all of those features! Webmin, like our sysadmin application, provides a Web interface to a variety of system administration tasks . For example, you can use Webmin to do the following:
Configure the Apache Web server
Manipulate MySQL databases
Modify Sendmail configuration
Install RPM packages
Set DNS client information
Edit user information
View system and network status
And that s just a small subset of Webmin s capabilities.
You might be surprised to learn that Webmin is also written in Perl. If you are interested in developing Perl applications, a look through Webmin s source code will provide you with a good learning experience. In addition, Webmin implements its own Web server rather than using an external one such as Apache or thttpd. This can be a double-edged sword. Because the server and the applications are closely tied together, there is better integration and a higher level of security. You do not have to worry about taking the time to learn how to manually install or configure any extra components . Unfortunately, this type of integration can be a security risk as well, albeit a small one. The widely used Web servers, such as Apache, are being used and abused by a large community of users, hackers, and developers on a regular basis, so any bugs or security holes found are typically fixed very quickly. On the other hand, you can t depend on the same amount of response and support by the smaller number of Webmin developers, and rightly so. Having said that, however, there are no outstanding security issues with Webmin at the time of writing this chapter.
You can download a compressed TAR archive or binary RPM package from the following:
Once you ve downloaded it, you can install it in much the same manner as GWCC. Webmin is one application that you should thoroughly use because it will teach you a lot about your Linux system and how to maintain it properly.
Now let s shift gears a bit and cover a different type of administration application. If you are the administrator for a multiuser system, no doubt, you will receive all types of requests from your users, such as the following:
Can you give me more disk quota?
I accidentally deleted my presentation. Can I get it back?
I need to be able to log in from home. Can I?
Can I install the latest version of Java?
If you get a lot of these requests, it soon becomes very difficult to keep track of who asked what and when. This is where the Request Tracker comes to the rescue. RT is a ticketing system/bug tracker that allows you to manage requests from users by storing them in a central repository, assigning priorities, and keeping track of resolutions and dates.
If you haven t guessed it already, RT is also written in Perl. You can download the source code and documentation from the following:
To install, follow the instructions specified in the second URL listed. Unfortunately, the installation process can get a bit laborious because you need to have a Web server and the MySQL database engine installed. (Web server installation is covered in Chapter 9, and MySQL is discussed at the end of this chapter.) However, after you have RT installed and are using it actively, you will wonder how you ever managed as an administrator without it.