The Apache web server is one of the most common applications run on Linux systems. Although it comes with most distributions there will be times when you want to run the latest version along with all of its modules. Getting all the source code and then configuring, compiling and installing each piece by hand can be a daunting task. The Apache Toolbox provides an easier way to do all of this.
The Apache Toolbox, written by Bryan Andrews, provides a convenient front end for configuring and compiling Apache, as well as obtaining any needed source code. In addition to the modules included with Apache, the Toolbox can also configure and compile programs such as PHP and MySQL (See Table 1 for a complete list of software). It also compiles and installs the latest gd libraries for the creation of JPEG and PNG files.
The Apache Toolbox comes in two forms: a large (approximately 12MB) file and a small file. The large file contains the Toolbox script along with source code for Apache and most of the modules; the small file contains only the Apache Toolbox script. Since the Apache Toolbox tries to download any missing source code, it makes sense to use the smaller file if you have a recent Linux distribution or a fast internet connection.
If you download the large Apache Toolbox tarball it will untar into a directory called www-src. This directory contains zipped tarballs of the source code for Apache and all the modules. The Apache Toolbox script, called install.sh, is also in this directory.
To start the Apache Toolbox, switch to root and run the install.sh script. This presents a menu of programs and modules that can be selected (see Figure 1). A selection is made by typing the number or letter next to an item. The program performs sanity checks, depending upon your selection. It ensures, for example, that Python is installed on the system when the mod_python module is selected. The program also displays descriptions of the modules when “99” is entered. There are two pages of modules, and the 99 command only displays descriptions for the current page.
Once you have made all of your selections, type go to start the build process. The first thing that the Toolbox does is warn you about any installed RPMs that conflict with the software it will install. You are given the option to continue the compilation process or to quit to remove the offending packages. If you quit to remove the offending RPMs, the Apache Toolbox remembers your settings when you restart it.
The Apache Toolbox uses wget to download any packages that it needs. If wget isn't installed on your machine, the Toolbox can download it, using Lynx, and install it for you. The FTP locations for all the modules are hard-coded in the install.sh script so you can verify them to ensure that you're getting legitimate files.
After the wget checks are performed, you are asked if you want to change Apache's default installation path. Following this question, the Apache tarball is uncompressed. If the program finds existing Apache source code in the www-src directory, you are given the option to back it up. Next, Apache is preconfigured based upon the selections that you have made.
Once that is done the selected modules are untarred, built and installed. If the script can't locate source code for a module, you are asked if it should be downloaded. The Apache Toolbox uses the installwatch library to log the results of the compile and the install process for each module to the logs directory.
If you have elected to install PHP, you are given the option of editing its configuration script. You can use the editor of your choice to edit the file, and the PHP build process continues when you are done.
Once all the modules have been compiled, you are given the option to modify the Apache configuration script. After that the Toolbox tailors the Apache Makefile for your module selections. Then you have to compile and install Apache by changing to the Apache source directory and typing make. If Apache compiles without error, then type make install to install it.
Practical Task Scheduling Deployment
July 20, 2016 12:00 pm CDT
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.Register Now!
- Paranoid Penguin - Building a Secure Squid Web Proxy, Part IV
- SUSE LLC's SUSE Manager
- Google's SwiftShader Released
- Managing Linux Using Puppet
- Murat Yener and Onur Dundar's Expert Android Studio (Wrox)
- My +1 Sword of Productivity
- Non-Linux FOSS: Caffeine!
- SuperTuxKart 0.9.2 Released
- Parsing an RSS News Feed with a Bash Script
- 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