| Both Red Hat and Caldera had release the certification for their respected products. Since I have not seen anywhere in the net a good study guide, I am putting together this note - an outline of skills (that I believed) that measured by Red Hat Linux certification exam. Hope this can help other by saving their time studying and preparing exams. Table of Content Pre-Install - Determine your Linux system's role in your network: WWW, FTP, NEWS, ISP, development workstation, thin client, enterprise server, application server, database server, etc.
- Collect hardware information: check out Red Hat 5.x HCL, familiar with the model and parameter of your hardware devices. keyboard, monitor (horizontal/vertical frequencies), mouse type (serial, PS/2, or bus mouse), protocol (Microsoft, Logitech, MouseMan, etc.), and number of buttons. printer, hard drive (IDE, EIDE, SCSI, Cylinder/head/sector geometry), sound card, video card, PC-Card (PCMCIA) etc.
- If you have IDE drives, you should check your computer's BIOS to see if you are accessing them in LBA mode.
- Collect network information: hostname, domain name, IP address, netmask, default gateway, primary and secondary name server, NFS server (optional), FTP server (optional).
- Familiar with what packages that Red Hat come with, so you can choose during installation.
- Read the Linux hardware HOWTO (in Red Hat CD:\DOC\HOWTO) to clarify the hardware compatibility issue.
- IRQ Settings, planning the IRQ layout. This table list the standard IRQ layouts:
| Interrupt Line | Device | Comments | | 0 | Timer | | | 1 | Keyboard | | | 2 | Cascade to IRQ9 | On some systems, IRQ2 is the gateway to IRQs 9~15; avoid it if possible | | 3 | COM2 | Can also be COM4, but only one of the two | | 4 | COM1 | Can also be COM3, but only one of the two | | 5 | XT hard disk controller, LPT2 | Hard disk interface used only on XTs, or alternatively for LPT2 on the unusual machine with LPT2. This is free on most modern PCs, and is the "catch-all" IRQ for bus mice, sound cards, LAN boards, etc. | | 6 | Floppy disk controller | | | 7 | LPT1 | | | 8 | Clock | | | 9 | Possible cascade to IRQ2 | May not be available | | 10 | | Generally available | | 11 | | Generally available | | 12 | Motherboard InPort | If your PC/laptop has a built-in mouse port, it probably sits here | | 13 | Math Coprocessor | This interrupt is required even if your CRU has a numeric coprocessor built in | | 14 | Hard Disk | | | 15 | Unused | Generally available | - Hardware requirement for Red Hat 5.x installation:
| Hardware Device | Minimum | Suggest | Comments | | Processor | - i386 SX without X
- i386 DX with X
| P166 MMX | Its hard to find the processor older than P166 in today market. | | Hard Drive | 60 MB | 1 GB | 600 MB for a complete installation | | Memory | 4 MB | - 8 MB without X
- 16 MB with X
| | - Create installation boot disk and supplemental diskette using rawrite program - location on CD is: \dosutils\rawrite.exe
- If install Linux to coexist with other OSs, create available hard drive space using fips utility, (a program similar to Partition Magic.) Location on CD: \dosutils\fips.exe
- Linux's primarily file system is EXT2, and SWAP (for SWAP files)
- Linux supports plug and play.
Installation and troubleshooting - Use F3 key to go to expert mode - disable most of the auto probing and auto detection.
- Use F4 key, and both boot and supplemental disks to repair a damaged system.
- Use F6 key to pass some options to the kernel at the boot time. Example: boot: linux mem=128M will instruct the kernel to use 128MB system RAM.
- Red Hat 5.x Linux Kernel file name is vmlinuz, its in Boot disk, the size is less than 500 kb.
- initrd.img file is first loaded by system
- Install on the machine without CD-ROM: copy \RedHat\ directory tree from CD-ROM over Network to the hard drive before install.
- If IDE CD-ROM not being detected, restart installation process, key in instruction to kernel: boot: linux hdX=cdrom (X=a if CD-ROM is in ide0 master; X=b if CD-ROM is in ide0 slave; X=c if CD-ROM is in ide1 master; X=d if CD-ROM is in ide1 slave. Where ide0=primary channel and ide1=secondary channel)
- Partition disk using Disk Druid during installation. Know what is Mount Point, Device, Requested, Actual, Type, and how to specify specific parameter on them. Know Driver summary, especially what Geom [C/H/S] means. (Cylinders, Heads, Sectors)
- / and swap are default partitions to specify when using Disk Druid.
- Partition disk using fdisk during installation. Be familiar with following commands and their usages:
| Command | Usage | | m | display help menu | | p | list current partition table | | t | change system partition ID | | n | add new partition | | d | delete current partition | | l | list known partition types | | q | quit without saving changes | | w | write changes and quit | - Linux partitions - Its recommended to create multiple partition for Linux instead of putting it in single partition
| Partition Name | Comment | | swap (83) | Swap partition are used to support virtual memory. If the system has 16 MB of RAM or less, you must create swap partition. Even you have more RAM, swap is still necessary. The minimum size of swap partition should be equal to your physical RAM, or 16 MB (whichever is larger). Red Hat commend that 32 MB for workstation installation and 64 for server installation | | root (82) | Root partition is where root directory resides. It only need to contain things necessary to boot your system, as well as system configuration files. 50~80 MB works well for most system | | /usr | This is where most software on Linux system resides. This partition should be between 200~500 MB, depending on how many packages you plan to install. Any RPM-based package you install later will use this space | | /home | This is where users' home directories go | | /milo | Alpha users that will be using MILO to boot their systems should create a 1.5 MB DOS partition where MILO can be copied after the installation is complete. | | /usr/local | Traditionally, this partition has been used to hold things you wish to keep separate from the rest of your Linux system. | | /usr/src | Linux kernel sources and sources for RPM-Based packages are stored here | | /tmp | for temporary files. | - Create ext2 (Second Extended filesystem) Linux filesystem partition using mke2fs (make filesystem) command. Syntax: mke2fs -c <partition> <size> To create.) Example: mke2fs -c /dev/hda3 162344. (162344 is the number of blocks in size)
- Other than ext2 file system, Xia file system, Extended filesystem, and Minix filesystem are available to Linux. To create those filesystem, use mkxfs (for Xia), mkfs (for Minix), and mkefs (for extended file system)
- Enable swap space for installation using mkswap command. Syntax: mkswap -c <partition> <size>. Example: mkswap -c /dev/hda1 13565.
- Most PC BIOSs can't handle more than 1024 cylinders on a disk drive. You can't create DOS or Linux partitions or filesystems that go beyond the 1023rd cylinder (SCO allow user to do anything beyond 1024 limit). Red Hat Linux can use partitions beyond the 1.024 limit, but it can't boot from them.
- Before the end of installation, you will be prompted to create Linux boot disk - the disk that different from created by using rawrite. Bootable disk enable users to access the system at anytime, especially if the normal boot process fails. This disk is an emergency boot disk.
- (Create boot disk after system installation)
- Configure Modem during installation. /dev/ttys0 equivalent to COM1, /dev/ttys1 equivalent to COM2.
- Configure mouse during installation. If the mouse is a serial mouse, choose the port. /dev/S0 corresponding to COM1, /dev/S1 corresponding to COM2, and so on. Don't select the same port as modem.
- Setting the boot device. If Linux will coexist with other OSs (such as DOS, NT), don't install LILO (Linux Loader) to overwrite hard drive's MBR (master boot disk)
- Specify system boot up from boot floppy disk or from LILO.
- Choosing LILO installation to boot your system in different ways. Install bootloader to MBR vs. First sector of boot partition.
- Configure LILO by modifying /etc/lilo.conf file.
- Using pkgtool utility to install new software, remove existing software, or view installed files in a package.
- Following services should be chosen to turn on for a system to be fully bootable: atd, crond, inet, kerneld, keytable, network, and syslog.
- Install printers during installation. Specify printer queue (lp by default) and spool directory.
- Using X Window utility - printtool to add, edit, or delete printer after installation.
- Floppy disk problems - Errors such as read error, file not found and tar: read error are disk medium related problem, usually occurs on floppy disk, if so, replace the floppy disk.
- Hard disk and disk controller related problems - During Linux boots, it runs partition check, if it is not displaying correct partition information, check cables inside you PC, make sure power connector connected to each disk drive; and check partition table (using fdisk for example).
- Device conflict problems - Collect information of IRQ (Interrupt), DMA (Direct Memory Address) to prevent conflicting problems. Using DOS MSD utility or Norton utility. Following is the most common devices in a PC
- Add default options to the LILO boot command, the options you enter will be passed to the Linux kernel every time it boots.
- Reviewed your computer's BIOS settings, if your computer accesses a hard drive in LBA mode, check Use linear mode.
- Loadlin can load Linux from MS-DOS; it requires a copy of the Linux kernel (and an initial ram disk, if you have a SCSI adapter) to be available on an MS-DOS partition. The only way to accomplish this is to boot your Red Hat Linux system using some other method (e.g., from LILO on a diskette) and then copy the kernel to an MS-DOS partition.
- Installing Linux to coexisting with Microsoft Windows NT. Installing and configuring bootpart utility.
- Choosing an installation class (for Red Hat 5.2 only): Workstation (automatically erase all Linux partitions from your computer's hard drives). Server (automatically erase all partitions from your computer's hard drives). Custom (gives you complete control over partitioning-related issues. If you have installed Red Hat Linux in the past, the custom-class installation is most similar to past installations.)
- Knowing the differences among CDROM, FTP, NFS, SAMBA, and Hard Disk installation.
- Checking the installation log file.
- Viewing boot time information such as console install screens, virtual consoles, dmesg and using page up/page down at the console.
- Understanding the standard boot process.
- Verifying installation status: login as root and viewing dmesg.
- Generate the text file, automate installation using kickstart mode.
- Installing Linux in RAID configuration.
- Troubleshooting hardware conflict problem during Linux installation.
- Configuring Linux installation on laptop with PCMCIA card and APM (Automatic Power Management) system.
- Understanding the kernel daemon, etc/conf.modules and module parameters. Understand /llib/modules/... directory structure and contents.
System Configuration - Checking file system type using /etc/fstab file, knowing its layout and meaning.
- Knowing basic user environment (etc/skel/) and home directories.
- Using rpm to 1) validating a package signature; 2) add and remove Linux components; 3) add updates, 4) verify packages (install or not); 5) check what package a file is in.
- Creating and using custom PRMs. 1) install source rpms; 2) verify /usr/src/redhat directory structure; 3) changing compile time options for a source RPM; 4) rebuilding custom source and binary rpms; 5) building an rpm from a tar archive.
- Adding, deleting and modifying users.
- Configure keyboard using kbconfig utilities.
- Mounting hard disks, floppy disks, and removable media using mount command.
- Configure sound card using sndconfig utility.
- Knowing virtual consoles, daemons, netsysv, chkconfig utilities.
- Setting up and managing disk quotas:
- Installing quota RPM,
- Modifying /etc/rc.d/rc.sysinit file,
- Modifying etc/fstab,
- Creating quota.user file for each partition,
- using edquota to set up per user disk quotas
- Creating default quota settings
- Generating quota reports
- Configuring quotas on nfs filesystems.
- Understanding monolithic vs. modular kernel concepts.
- Updating linux kernel to newer version, kernel rpm's and tar file. Understanding kernel source tree and documentation.
- Configuring kernel scripts, compiling and installing a custom kernel or kernel modules.
- Updating LILO.
- Using mkinitrd and mkbootdisk utilities.
- Understanding kernel configuration options
- The standard Red Hat kernel configuration
- Code maturity level options
- Loadable module support options
- General set up options
- Floppy, IDE and other block device options
- Non IDE/SCSI CDROM support options
- Networking and network device options
- SCSI support options and low level drivers
- ISDN options
- File system options
- Character device options (serial and parallel ports, mice, QIC tapes, APM)
- Sound system support options
- Kernel profiling support
- Configuring system-wide shell configuration for Bourne and bash shells - /etc/bashrc, /ect/profile, /etc/profile.d - see Linux Shell section.
- Understanding the Corn system - the system crontab and components, the user crontabs.
X Windows System - Checking X Server supported hardware.
- Checking the X11 packages installation status by using rpm and grep command. Example: rmp -qa | grep ^X
- Installing X Window packages using rpm command. Example: rpm -ivh Xcnofig*
- Detect the video card chipset, amount of memory and RAMDAC chipset using SuperProbe utility.
- Configure X Window using Xconfiguator program and XF86setup. Select the correct chipset and RAMDAC
- Configure a custom monitor by modifying /etc/X11/XF86Config file.
- Start X Window using startx command.
- Configure system to start automatically to X Window by modifying /etc/inittab file. Understanding run levels and default run level. modifying system startup script /etc/rc.d/rc.sysinit
- Changing video setting by modifying start.out file.
- Exit from X Server using Ctrl-Alt-Bkspace.
- Troubleshooting filesystem problem that cause blank screen, using fsck command.
- Troubleshooting mouse related problem using mouseconfig program.
- Troubleshooting mouse related problem by modifying /etc/sysconfig/mouse file.
- Troubleshooting gpm problem that cause mouse malfunction, stop gpm program. /etc/rc.d/init.d/gpm stop.
- Toggle gpm off using ntsysv command.
- Place to get Linux documentation, /usr/doc/HOWTO.
- Knowing window manager configuration file locations (see below)
- Installing and configuring fvwm virtual window manager. modifying the configuration file system.fvwmrc in the /etc/X11/fvwm directory.
- Installing and configuring fvwm2 Window manager. modifying /etc/X11/fvwm2/system.fvwm2rc file and its symbolic link in /usr/X11R6/lib/X11/fvwm2.
- Installing and configuring twm (Tab window manager). modifying the configuration file system.twmrc in the /etc/X11/twm directory.
- Installing and configuring mwm (motif window manager). .mwmrc in home directory. Get the source file from /usr/lib/X11/system.mwmrc.
- Installing and configuring lwm (LessTif mwm window manager). modifying .mwmrc resource file in home directory, and Mwm file under LessTif directory.
- Installing and configuring CDE (Common Desktop Environment). Knowing how cde different from other windows manager (X Display manager - xdm.)
- Installing and configuring KDE (K Desktop Environment) using rpm.
- Knowledge of other X11 Window managers - Enlightenment, mlvwm, wm2
- Changing terminal settings of xterm, nxterm, and rxvt terminal. Select proper font setting using Ctrl-RightClick and xfontsel command.
- Knowing how to use X11 command line options (X Toolkit) to set geometry setting, foreground, background color, mouse and cursor modes, etc.
Linux Shells and Commands / Utilities - Determine which shell the user is being assigned to - look at content of /etc/passwd file.
Linux Shell Comparison Table | Shell Name | Ash | Bourne | Bash (Bourne Again) | Korn | C-shell | T-shell | Zsh | | Author | Kenneth Almquist | | Brian Fox/Chet Ramey | Eric Gisin | | William Joy (plus 47 others) | Paul Falstad | | Binary | ash | sh | bash | ksh | csh | tcsh | zsh | | Build-in command | 24 | | 48 | 42 | | 53 | 84 | | Command line options | 10 | | 12 | 20 | | 18 | 50 | | Default Prompt | | $ | | $ | % | % | | | Home Startup File | | $HOME/.profile | $HOME/.bashrc | $HOME/Profile | $HOME/.cshrc | $HOME/.tcshrc or .chsrc | | | Note | | default Linux shell | | Korn shell is a commercial Unix shell, in Linux, pdksh shell is named ksh. | | | One of the largest Linux shell | - Understand what is environment variable and where the text file located on your shell (example, for bash shell, its in /etc/profile). Specify the list of different environment variables by using p rintenv command.
- Understand #PATH variable. Know how to make temporary and permanent change of #path variable. (Adding the directory to your $PATH variable for current login. Make a permanent change by adding the path to the profile file - say, .bash_profile in home directory.)
- Know what is alias, and how to customize shell using alias.
- Running program in the background. Example: rxvt &
- Use pipe to redirect output of a program to a file, and redirect the content of the file to another program.
- Building your own shell commands using chmod command. Assigning shell variables to represent command line arguments to a shell command.
Basic Linux Commands and Utilities Be familiar with commands and utilities in this table. Check the man page for detail usage, such as switch, pipe, etc. | Command | Usage | Note | | man | getting help | The Linux manual sections, man1 to man9, are in /usr/man directory. | | cd | Moving to different directory | Knowing what .. and ~ can do together with CD command. | | pwd | Print working directory | | | find | Searing directories for matching files | -print switch; -xdev switch | | whereis | find files from files directories | | | locate | locate files from locate's database - locatedb | locatedb is in /var/lib directory | | updatedb | update locatedb database | | | whatis | getting command summaries | | | makewhatis | build the whatis database (db of command summaries) | makewhatis is in /usr/sbin directory | | apropos | search for whatis database to get the program you want | man -K option do the same thing | | ls | listing directories | know the -m, -x, -F, -a, -l, -R, -d switches. Know how to use wildcards *. | | dir, vdir | listing directories | | | tree | llist graphic directory | know the -d option | | cat | list, create, and combining files | know the -n, -l, *, >, >> options and pipes. Know the Ctrl-D to close file. | | more | read files | | | less | read files (allow scroll, more options than more) | zless command to compress files | | head, tail | read the beginning and the end of files. | Know the -q option | | touch | create files | know how to create file and redirect output to a new file (use with Ls for example.) | | rm | delete files | know the -r, -f, -i options and wildcards. | | mkdir | creating directories | know how to create multiple directories and create sub directories under exist directories. | | rmdir | removing directories | -p option | | mv | rename files | | | cp | copy files | | | ln | create hard and symbolic links | -s option | | mc | visual shell that display files | | | grep, egrep, fgrep, zgrep | search inside files (zgrep can search compressed files) | be very familiar with grep command | | tar | create archives | -c, -w, -t, -f, -v, -x options and combination | | cpio | copies files in and out of tar or cpio archives | | | gzip, gunzip | compress and uncompress files | be familiar with files that has .Z, .z, .gz, -gz, -z, _z extension | | compress | compress files | | | ps | process status command | | | kill | terminate process | | | Ctrl-z | put a running program into background in bash shell | | | fg | bring back the program from background | return a specific program using job number or job name. Example: fg %x (x=job number, or job name) | | pine | a Linux mail program | In KDE, use k-mail | | job | get a list of suspended programs | | | sc | a Linux spreadsheet program | | | mount, umount | mount an unmount other file system | | Linux Networking - Knowing central control files under /etc/sysconfig directory, /network-scripts subdirectory, the parameters and scripts in the files.
- Configuring clock, mouse, static routes, keyboard, network and PCMCIA parameters by modifying files under /etc/sysconfig directory.
- Configuring network interface using script files in /etc/sysconfig, ifup-type and ifdown-type files that setup or deregister the interface. Type are lo (loopback), eth (Ethernet), sl (SLIP), ppp (PPP). Also configuring by using the GUI program - netcfg.
- Knowing TCP/IP concepts, IPv4, IP octac, IP classes, subnet mask, default gateway, ICMP, FTP, ARP, router, sub-networking, default route, and CIDR (Classless InterDomain Routing), NNTP, etc.
- Troubleshooting TCP/IP problem using utilities such as ping, netstat -rn, arp, traceroute, etc.
- Configuring IP parameters, enabling the network interface, and checking configuration of an existing network interface using ifconfig utility.
- Using telnet and rlogin to connect Linux terminal from Windows machine.
- Using Netscape. Configuring Netscape HTTP.
- Basic Apache configuration for simple web server.
- Configuring ftpd for anonymous ftp server.
- Time synchronization
- Configuring PPP client using netcfg utility.
- Configuring internal or external modem to dial up connection to the ISP using PPP.
- Configuring SMB to act as a client and server for file and print services
- Configuring NFS as client and server.
- Configuring sendmail using SMTP, POP, and IMAP as work station. modifying aliases file and sendmail.cf file.
- Turn on and turn off anti-spam
- Configuring Linux server to act as a boot and NFS host for Linux clients. Knowing how to start and stop NFS services.
- Bootp and DHCP configuration, etc/exports, mounting and exporting file system via NFS.
- Troubleshooting file locking issues
- Configuring Linux and NT connectivity using Samba, and IPX (mars_nwe)
- Configuring network printing services, add/remove local and remote printers.
- Understanding etc/printcap file, etc/host file, lpc, lpq, and lprm.
- Configuring innd (leafnode service)
- Using xntp and rdate to configure time services.
- Configuring Squid proxy server and web cache.
System Administration and Security - Maintenance and preserves the consistency of common configuration files (password, group, hosts, services) using NIS (formal yellow pages - yp). Knowing RedHat's NIS components. Understanding and modifying etc/nsswitch.conf file.
- Knowledge of basic host security. Understanding and modifying tcp_wrappers and etc/hosts.allow and etc/hosts.deny.
- Understanding PAM (Pluggable Authentication Modules) and modifying files in etc/pam.d/ directory.
- IP aliasing and virtual hosts.
- Understanding firewall policies - elementgs ipfwadm
- Understand NAT (Network Address Translation), IP masquerading and IP forwarding.
- Configuring routing and static routes, etc/hosts file.
- Understanding interaction of PC CMOS clock time and Linux system time.
- Setting up and verifying system logging: syslog and klog; /etc/syslog.conf; remote logging; monitoring logs using swatch; managing logs using log rotate.
- Understanding emergency boot procedures
- Understanding system log entries.
- Understanding and tailoring etc/syslog.conf.
- Understanding Sgid redhat scheme and cops
- Using tmpwatch
- Using syslog for debugging and tracking problems
- Obtaining encryption packages in rpm format
- Import and export restrictions on encryption software
- The ftp.replay.com site
- Validating RPMs with pgp
- Using linuxconf utility.
|