Understanding Red Hat Run Levels
Do you want to not start the HTTP daemon, without removing the file from the rc3.d directory? Easy. Rename /etc/rc.d/rc3.d/S85httpd to something that does not start with a capital S or a capital K. Your best bet would be to rename files using a lowercase “s” or a lowercase “k”. This way, not only will the scripts not be started, but they'll appear later in an ls file listing, since entries starting with capital letters are shown separately from those beginning with lower case letters. So you'd wind up with a file now called s85httpd, which is somewhat separated from the rest of the entries an an ls -l listing.
An important note here, though: make sure you know what the scripts are doing when you disable them. If you disable something like the S10network script, none of your networking software will work. This is why S10network has such a low number: because other scripts are dependent on the network and must be executed after the network software is in place.
You want to make your own init processes to start and stop? That's easy enough to do. Make a script that accepts the word start as an option. Not all scripts need to be able to stop, but if the script starts a process in the background, you should almost certainly include a stop option as well. For example, a script that polls the time over the network every time you enter runlevel 3 does not need a stop. A script that starts a program to query the network time every 15 minutes would need a start and a stop script, since the program the script started is continuously running. A program for the second example is better suited from a crontab, but being able to do things your own way is at the heart of Unix, isn't it?
Once it's written (and tested), put it in the /etc/rc.d/init.d/ directory. Let's say it's the program to check the time on a network machine every 15 minutes, so we'll call the script “netdate”. Once it is in the /etc/rc.d/init.d/ directory, you can make links in the directories you want to start it in. If you want your program to run in runlevel 3, make a link to your script from /etc/rc.d/rc3.d/S??netdate. Make ?? a number that will fit in the rest of the directory, such as S55netdate. You'll want it to be above S10 so that the network is started, and S55 isn't taken, so it seems a good enough location. It's not required that there be only one script with each number, but it is good form, since you know exactly what order the scripts will be started in.
If you want to stop the process gracefully during a shutdown, make sure your script accepts stop, then make a link to /etc/rc.d/init.d/netdate from /etc/rc.d/rc0.d/K55netdate. Again, you should make sure the number you use is not being used by another subsystem to avoid confusion.
You can test your new setup by using init 3. Since the other subsystems are already running, the only one that will start is the one you just added. If the init 3 command hangs, your script didn't exit; you probably need to put an ampersand at the end of a line to put the problem process in the background. You can also run your script manually from the /etc/rc.d/init.d/ directory.
Now that you know how the subsystems work, you can easily add or modify the existing subsystems for your particular Linux setup.
Mark Komarinski (markk@auratek.com) has been using Linux since 1993 when he first purchased his 386/40. He just completed a book on Linux to be published by Prentice Hall. Mark now works for Aurora Technologies doing internal PC support and manning the customer service phones. He lives in eastern MA with his wife, Brenda.
Today’s modular x86 servers are compute-centric, designed as a least common denominator to support a wide range of IT workloads. Those generic, virtualized IT workloads have much different resource optimization requirements than hyperscale and cloud applications. They have resulted in a “one size fits all” enterprise IT architecture that is not optimized for a specific set of IT workloads, and especially not emerging hyperscale workloads, such as web applications, big data, and object storage. In this report, you will learn how shifting the focus from traditional compute-centric IT architectures to an innovative disaggregated fabric-based architecture can optimize and scale your data center.
Sponsored by AMD
Built-in forensics, incident response, and security with Red Hat Enterprise Linux 6
Every security policy provides guidance and requirements for ensuring adequate protection of information and data, as well as high-level technical and administrative security requirements for a system in a given environment. Traditionally, providing security for a system focuses on the confidentiality of the information on it. However, protecting the data integrity and system and data availability is just as important. For example, when processing United States intelligence information, there are three attributes that require protection: confidentiality, integrity, and availability.
Learn more about catching the bad guy in this free white paper.
Sponsored by DLT Solutions
Free Webinar: Linux Backup and Recovery
Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.
In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.
| Making Linux and Android Get Along (It's Not as Hard as It Sounds) | May 16, 2013 |
| Drupal Is a Framework: Why Everyone Needs to Understand This | May 15, 2013 |
| Home, My Backup Data Center | May 13, 2013 |
| Non-Linux FOSS: Seashore | May 10, 2013 |
| Trying to Tame the Tablet | May 08, 2013 |
| Dart: a New Web Programming Experience | May 07, 2013 |
- New Products
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- A Topic for Discussion - Open Source Feature-Richness?
- Drupal Is a Framework: Why Everyone Needs to Understand This
- Home, My Backup Data Center
- What's the tweeting protocol?
- New Products
- One Hand Slapping
- Readers' Choice Awards
- Developer Poll




6 hours 29 min ago
9 hours 2 min ago
10 hours 19 min ago
10 hours 54 min ago
11 hours 16 min ago
16 hours 5 min ago
16 hours 51 min ago
18 hours 25 min ago
20 hours 2 min ago
22 hours 8 sec ago