CEH_ Official Certified Ethical Hacker Review Guide_ Exam 312-50 - Kimberly Graves [81]
Most of the basic Linux utilities are GNU software, meaning they are freely distributed to the community. GNU utilities also support advanced features that are not found in the standard versions of BSD and UNIX System. However, GNU utilities are intended to remain compatible with BSD.
A shell is a command-line program interface that allows a user to enter commands and the system executes commands from the user. In addition, many shells provide features like job control, managing several processes at once, input and output redirection, and a command language for writing shell scripts. A shell script is a program written in the shell's command language and is similar to a MS-DOS batch file.
Many types of shells are available for Linux. The most important difference between shells is the command language. For example, the C SHell (csh) uses a command language similar to the C programming language. The classic Bourne SHell (sh) uses another command language. The choice of a shell is often based on the command language it provides, and determines which features will be available to the user.
The GNU Bourne Again Shell (bash) is a variation of the Bourne Shell which includes many advanced features like job control, command history, command and filename completion, and an interface for editing files. Another popular shell is tcsh, a version of the C Shell with advanced functionality similar to that found in bash. Other shells include zsh, a small Bournelike shell; the Korn Shell (ksh); BSD's ash; and rc, the Plan 9 shell.
Understand How to Compile
a Linux Kernel
Because of the open source nature of Linux, the source code is freely distributed. The source code is available as binary files, which must be compiled in order to properly operate as an operating system. The binary files are available to anyone and may be downloaded and modified to add or change functionality. There are three reasons a user might want to recompile the Linux kernel. Firstly, you may have some hardware that is so new that there's no kernel module for it in on your distribution CD. Secondly, you may have come across some kind of bug which is fixed in a revision of the operating system. Lastly, you may have some new software application which requires a newer version of the operating system
This is great for flexibility, but users should beware of sites from which the source code is downloaded because that may have bad or infected code, Trojans, or other backdoors added to the source code. For security reasons, only download Linux from known and trusted Internet websites or purchase a commercial distro.
To download, configure, and compile the Linux kernel, follow these steps:
1. Locate the file for the latest version of the operating system and download it to the /usr/src directory on the Linux system. Then use the tar zxf command to unpack it.
2. The next step is to configure the Linux kernel. Change directory to /usr/src/Linux and type make menu confi g. This will build a few programs and then quickly pop up a window. The window menu lets you alter many aspects of kernel configuration. After you have made any necessary changes, save the configuration and type make dep; make clean. The first of these commands builds the tree of interdependencies in the kernel sources. These dependencies may have been affected by the options you have chosen in the configure step. The make cl can purges any unwanted files left from previous builds of the kernel.
3. The next commands, make zImage and make modul es, may take a long time because they are compiling the kernel.
The recommended site to download the Linux kernel from is ftp. kernel . org.
4. The last step is installing the new kernel. On an Intel-based system the kernel is installed in /boot with the command:
5. Then use the command make modul es_i nstal 1. This will install the modules in /lib/ modules.
6. Next, edit