Get Your Hands-On Linux: Novell's CLP Exam
Emmett offers advice and a couple of practice exercises for Novell's hands-on Linux Certified Professional exam.
by Emmett Dulaney
11/16/2005 -- As opposed to going with the traditional form-based (multiple-choice) exams, Novell decided to implement practicums for its Linux line of certifications. Practicums are performance-based tests where you are given a task to do and can use any method you know in order to successfully complete the task. For example, a portion of the task may ask that you add users to a system; after the exam is over, a check will be done to see if you added the users and included all the attributes for each that you were assigned; no check will be done as to whether you accomplished this using the graphical interface (utilizing Yet another Setup Tool, aka YaST) or at the command line (utilizing useradd).
Presently, there are two Linux certifications available from Novell, and both are focused on SuSE Linux Enterprise Server (SLES). The 050-689 exam is the only one you must pass to become certified as a Certified Linux Professional (CLP). Up one level is the Certified Linux Engineer (CLE) certification which requires you pass this practicum as well as one other focused on more complex topics.
A complete list of the objectives (which relate to tasks you need to know how to perform) can be found here. Given that there are only three hours in which to perform the tasks, you aren't expected to demonstrate your knowledge of every objective; however, you don't know which ones you'll get so it's imperative that you know how to do all the tasks. Given that certifications are often extensions of marketing, I also highly recommend that you spend extra time studying those few tasks/objectives that are unique to SLES as opposed to other Linux distributions.
Preparation Tip: In my mind, the following are the top 10 tasks a SuSE administrator at the CLP level should have hands-on experience with:
- Adding and configuring users/groups.
- How to diagnose boot issues -- look at log files, configure the loader, and so on.
- How to suspend, change priority of and kill processes.
- Module management (the whole lsmod, insmod, rmmod, modprobe, depmod, modinfo and kmod suite).
- Monitor the system.
- Piping, redirection and other useful command-line syntax.
- The rudiments of networking: configure an IP address, use DNS, DHCP, Samba.
- The SLES installation process (step by step and derivatives that are available).
- Working with hardware (add a printer, create an icon to a device, etc.).
- YaST, YaST and more YaST.
One of the problems inherent with any exam of this type is that they are very hard to study for since you don't really know what to expect until the tasks are given to you. With a multiple-choice exam, you typically have a 25 percent chance of getting the question correct if you just pick an answer and don't even bother to read the question (you can greatly increase this chance by ruling out at least one of the answer choices that doesn't fit). With a practicum task, however, you need to do a number of things to fulfill the requirements and -- in the end -- you either did the whole task (success) or you missed one or more parts of it (failure).
Following are two sample labs excerpted from the Novell Linux Certification Practicum Lab Manual I wrote (ISBN: 0-672-32840-2). Instead of just saying, "I know how to do that," run through the steps of actually doing each on a spare/lab machine. At the end of this article you'll find the solutions, should you get stuck (only one solution is offered, but there are always more than one way to complete the task in Linux).
Exercise 1: Edna and Lorraine Antiques You are the head Linux administrator for a medium-sized company. A new server has been ordered and has just arrived with only a base installation. This server will be used at a remote office manned primarily by the sales department. You need to configure this server to do the tasks for which it was purchased.
The server will need to function according to the requirements given in the following table:
Server Requirements:
Specification
|
Details
|
SLES 9 Server Name:
|
EDNA-SLES
|
Static IP Address Configuration:
|
Use an IP address of 192.168.0.78, a subnet mask of 255.255.255.0, and a default router address of 192.168.0.1.
|
DNS Server Address:
|
The server should obtain this address dynamically.
|
Server Services:
|
The server should have the following services: Apache Web Server, Samba
|
You need to create a new group called "ACCOUNTS" on the server and add five users to the system and to this group. The users you need to create are shown in the following table:
Members of the ACCOUNTS Group:
Username
|
Attributes
|
Value
|
mmcneil
|
Full Name
|
Michelle McNeil
|
|
Shell
|
/bin/bash
|
|
Password
|
38m457z
|
ckight
|
Full Name
|
Cathy Kightlinger
|
|
Shell
|
/bin/ksh
|
|
Password
|
Ander7son
|
jcharney
|
Full Name
|
Jane Charney
|
|
Shell
|
/bin/bash
|
|
Password
|
REC1ent
|
nborowski
|
Full Name
|
Neill Borowski
|
|
Shell
|
/bin/csh
|
|
Password
|
3e1v7e
|
Jhuh
|
Full Name
|
Jane Huh
|
|
Shell
|
/bin/bash
|
|
Password
|
Wee1ken9d
|
The server needs to be configured to run Apache and allow for the use of symbolic links. Samba should be installed and configured as a workgroup with the name "EDNA-WKGRP."
Exercise 2: Oak Pictures You are the senior Linux administrator for a technical solutions company. One of your customers, Oak Pictures, has ordered a new SuSE Enterprise Linux Server 9 system to be configured at your location, then transported to them. Another administrator has already installed the operating system and added some applications that are standard for your company. You must now configure and tweak it.
The server will regularly run a number of unattended jobs as root. The appropriate configuration file should be edited to include entries for those processes shown in the following table. All entries should run and write any output (standard or error) to /dev/null.
Processes to Run Automatically:
Process
|
Frequency
|
/usr/local/bin/oriontest.sh
|
Every five minutes starting on the hour
|
/usr/local/bin/suf.sh
|
Every fifteen minutes starting on the hour
|
/usr/local/bin/use.sh
|
Every ten minutes, starting at five minutes past the hour
|
/usr/local/bin/orionrestart.sh
|
6:30 in the morning on Sunday, Tuesday, Thursday and Saturday
|
You also need to configure the system according to the settings listed in the following table:
System Configuration Settings and Changes:
Entity
|
New Value
|
Newly created files:
|
All newly created files should have default permissions on them set to rw-rw-r--.
|
/home/jackson:
|
The owner on all files beneath this directory should be changed from jackson to syed. Additionally, the group associated with all files beneath this directory should be changed from users to root.
|
/bin/zcat:
|
Create a link to this file in the home directory of the root user. The name of the link should be viewer.
|
Users:
|
Add two new users to the system: wintel and omni. The UID of wintel should be 1010 and of omni 1011. The passwords settings for each account should be such that they must be changed in 90 days. Additionally, all passwords should be in the /etc/shadow file as opposed to /etc/passwd.
|
Initial Runlevel:
|
Set the intial runlevel of the system to the custom setting of 4.
|
Static IP Address Configuration:
|
Use an IP address of 192.168.10.7, a subnet mask of 255.255.255.0 and a default router address of 192.168.10.101.
|
Documentation:
|
Add an entry to the end of /var/log/messages that the system has been configured on this date.
|
Final Thoughts If you have experience with Linux in general, and SuSE Linux Enterprise Server in particular, and can easily complete the two exercises given in this article with your eyes closed, you should have no difficulty passing this exam. Once you've become a CLP, you can choose to stop there, or go on: You'll be well on your way toward the CLE certification. 
Exercise Solutions
Exercise 1: Edna and Lorraine Antiques To install the operating system, insert the first CD into the computer and reboot the system, then walk through each of the individual menus. In this case, you will accept the defaults until prompted for the server name, in which case you will enter EDNA-SLES.
When prompted to use DHCP or configure static IP addressing, choose static and give the values specified in the table:
- IP address: 192.168.0.78
- Subnet mask: 255.255.255.0
- Default gateway: 192.168.0.1
Samba is installed automatically, leaving only Apache, which must be installed separately. To configure Samba, login as root and start YaST, then choose Network Services and Samba Server. The first dialog box will ask for the workgroup name; enter EDNA-WKGRP.
Create the users by logging in as root and starting YaST. Choose Security and Users and then Edit and create users. Click Add and add each of the users, clicking Create after each one.
After all the users are added, click Finish. Create the ACCOUNTS group by choosing Edit and create groups in the Security and Users section of YaST. Click Add, and configure the information as shown in the following figure:

Click Next and Finish.
Solution to Exercise 2: Oak Pictures The cron file entries that Oak Pictures needs to run these scripts at their appropriate times are as follows:
0,5,15,20,25,30,35,40,45,50,55 * * * * /usr/local/bin/oriontest.sh 2&1> /dev/null
0,15,30,45 * * * * /usr/local/bin/suf.sh 2&1> /dev/null
5,15,25,35,45,55 * * * * /usr/local/bin/use.sh 2&1> /dev/null
30 6 * * 0,2,4,6 /usr/local/bin/orionrestart.sh 2&1> /dev/null
To set the system so that all newly created files should have default permissions on them set to rw-rw-r-- (664), follow these steps:
- Login as root.
- From the KDE kicker, click on the icon of a monitor to open a terminal shell. Optionally, from the menu, pick System, Terminal and then Konsole.
- Type cd /etc.
- Edit the profile file and change the default entry from umask 022 to umask 002.
To change the owner on all files beneath the /home/jackson directory to syed, follow these steps:
- Login as root.
- From the KDE kicker, click on the icon of a monitor to open a terminal shell. Optionally, from the menu, pick System, Terminal and then Konsole.
- Type cd /home/jackson.
- Type chown syed *.*.
To change the group associated with all files beneath this directory to root, type chgrp root *.*.
To create a link named viewer in the /root folder to the /bin/zcat file, follow these steps:
- Login as root.
- From the KDE kicker, click on the icon of a monitor to open a terminal shell. Optionally, from the menu, pick System, Terminal and then Konsole.
- Type ln /bin/zcat viewer.
- Exit the terminal by typing exit.
Given the specific requirements for the two users to be added to the system, follow these steps:
- Login as root and start YaST.
- Choose Security and Users and then Edit and create users.
- Click Add and enter wintel for the first user. Click Details and set the User ID to 1010. Click Next.
- Click Password Settings and set the Maximum number of days for the same password to 90. Click Next .
- Click Create. Repeat the process to add the next user. By default, all passwords are stored in the /etc/shadow file as opposed to /etc/passwd with SLES 9.
To change the default runlevel, follow these steps:
- Login as root.
- From the KDE kicker, click on the icon of a monitor to open a terminal shell. Optionally, from the menu, pick System, Terminal and then Konsole.
- Type the command cd /etc.
- Edit the inittab file and change the 5 in the line id:5:initdefault: to 4. The new default runlevel will be 4.
- Save the file and exit. The new default runlevel will apply the next time the system is booted.
To configure the static IP address configuration as given, follow these steps:
- Login as root and start YaST.
- Choose Network Devices and Network Card.
- Click Change and Edit. The Network address setup will appear.
- Click the Static address setup button and enter an IP address of 192.168.10.7 and a subnet mask of 255.255.255.0.
- Click the Routing button and add a default router address of 192.168.10.101. Click OK .
- Click Next and Finish.
- Click Close and exit YaST.
To add (append) an entry to the end of /var/log/messages that the system has been configured on this date, run the following command from a terminal session: logger -p local3.info "system configuration drastically changed".
Emmett Dulaney is the author of several books on Linux, Unix and certification. He can be reached at .
More articles by Emmett Dulaney:
|