System Information Retrieval

Mr. Lasley gives us a handy script tha he created to collect system configuration files for one machine and store them on another.
Redundant Copies

Although cuthroat is my primary system-administration site, I keep the collected files on several systems for redundancy. After copying the system-administration information from all the Linux sites to cuthroat, I propagate the collected information from cuthroat to another system:

rsh loyd mkdir /admin
rcp -pr /admin/* loyd:/admin

I repeat the rcp for each machine on which I wish to have a copy of this information.


Several simple requirements must be satisfied for the collect script to work:

  • The first (and most obvious) requirement is that all systems must be interconnected.

  • Depending on how name resolution is configured, all system names must be in a Domain Name Server or in each system's /etc/hosts.

  • Each system needs a properly configured .rhost file to support remote shell and remote copy operations.

  • And finally, you must configure the /proc file system in each system's kernel. Note that the kernel build procedure includes the /proc file system by default.


The collect script can be easily extended if you find that /proc (or any other directory) contains system-administration information that is important to you. None of my systems use PPP; if yours does, modify the collect script to capture your PPP configuration information.

Most of my Linux systems run the Apache web server, but I don't bother to collect any Apache configuration information because only two lines distinguish one system's configuration from another. If you're running a web server and you've made a significant number of configuration changes, you may wish to collect your web server's configuration data.

If you are using Linux as a firewall, modify the collect script to save the firewall configuration. If Mr. Hughes had been using the collect script, the failure of his firewall's hard disk might not have cost him “hours of work time and probably a day of uptime”.

Running find on one Linux system located about a dozen files with names in the form *.conf. If you look at your systems closely, you may find additional configuration files to collect using the collect script.

Security Considerations

All of the Linux systems named in Figure 1 are protected from the Internet by an industrial-strength firewall. None of these systems are mission critical. My security considerations are probably quite different from yours, so you will have to evaluate whether any information you collect could compromise your systems and act accordingly.


The collect script simplifies remote system administration of disparate systems by centralizing configuration information. It is easy to use and easy to extend. Since the collected file sizes sum to less than 10KB per system, very little disk storage space is required. Although I created the collect script to ease recovery from potential catastrophes, the information obtained by using the collect script has a number of other uses as well.


Dan Lasley works on a large mass of Linux systems and a much larger mass of UNIX systems in his role as a Systems Engineer for Promus Hotel Corporation. When not fiddling with Linux, he is often observed hiking or taking photographs. In an example of multi-processing, he has even been observed doing both simultaneously. He can be reached via e-mail at


Geek Guide
The DevOps Toolbox

Tools and Technologies for Scale and Reliability
by Linux Journal Editor Bill Childers

Get your free copy today

Sponsored by IBM

8 Signs You're Beyond Cron

Scheduling Crontabs With an Enterprise Scheduler
On Demand
Moderated by Linux Journal Contributor Mike Diehl

Sign up and watch now

Sponsored by Skybot