INSTALLATION OVERVIEW <ul><li>It's wise to collect configuration information on your hardware before installing.
Know the vendor and model number of each card in your machine; collect the IRQs and DMA channel numbers.
You probably won't need this information -- but if it turns out you do, you'll need it very badly.
If you want to run a "dual-boot" system (Linux and DOS or Windows or both), rearrange (repartition) your disk to make room for Linux.
If you're wise, you'll back up everything first!. </li></ul>
FIRST INSTALLATION STEPS: THE EASY WAY <ul><li>If you have an EIDE/ATAPI CDROM (normal these days), check your machine's BIOS settings to see if it has the capability to boot from CD-ROM. Most machines made after mid-1997 can do this.
If yours is among them, change the settings so that the CD-ROM is checked first. This is often in a 'BIOS FEATURES' submenu of the BIOS configuration menus.
Then insert the installation CD-ROM. Reboot. You're started.
If you have a SCSI CDROM you can often still boot from it, but it gets a little more motherboard/BIOS dependent. Those who know enough to spend the extra dollars on a SCSI CDROM drive probably know enough to figure it out. </li></ul>
CONTINUING THE INSTALLATION <ul><li>Prepare the Linux filesystems. (If you didn't edit the disk partition table earlier, you will at this stage.)
Install a basic production Linux from the CD-ROM.
(Optional) Install more packages from CD-ROM. </li></ul>
BASIC PARTS OF INSTALLATION KIT <ul><li>The README and FAQ files. These will usually be located in the top-level directory of your CD-ROM and be readable once the CD-ROM has been mounted under Linux. (Depending on how the CD-ROM was generated, they may even be visible under DOS/Windows.) It is a good idea to read these files as soon as you have access to them, to become aware of important updates or changes.
A number of bootdisk images (often in a subdirectory). If your CD-ROM is not bootable, one of these is the file that you will write to a floppy to create the boot disk. You'll select one of the above bootdisk images, depending on the type of hardware that you have in your system. </li></ul>
BASIC PARTS OF INSTALLATION KIT <ul><li>The issue here is that some hardware drivers conflict with each other in strange ways, and instead of attempting to debug hardware problems on your system it's easier to use a boot floppy image with only the drivers you need enabled. (This will have the nice side effect of making your kernel smaller.)
A rescue disk image. This is a disk containing a basic kernel and tools for disaster recovery in case something trashes the kernel or boot block of your hard disk.
RAWRITE.EXE. This is an MS-DOS program that will write the contents of a file (such as a bootdisk image) directly to a floppy, without regard to format. </li></ul>
BASIC PARTS OF INSTALLATION KIT <ul><li>You only need RAWRITE.EXE if you plan to create your boot and root floppies from an MS-DOS system. If you have access to a UNIX workstation with a floppy drive instead, you can create the floppies from there, using the `dd' command, or possibly a vendor-provided build script. See the man page for dd(1) and ask your local UNIX gurus for assistance. There's a dd example later in this document.
The CD-ROM itself. The purpose of the boot disk is to get your machine ready to load the root or installation disks, which in turn are just devices for preparing your hard disk and copying portions of the CD-ROM to it. If your CD-ROM is bootable, you can boot it and skip right to preparing your disk. </li></ul>
UBUNTU LINUX:UNINSTALL/REMOVE ANY INSTALLED SOFTWARE <ul><li>GUI Package Management Tool
Command Line Package Management Tool </li></ul>
GUI PACKAGE MANAGEMENT TOOL <ul><li>synaptic is graphical management tool of software packages. It allows you to perform all actions of the command line tool apt-get in a graphical environment.
This includes installing, upgrading, downgrading and removing of single packages or even upgrading your whole system.
Just click on System > Administration > Synaptic Package Manager
Now you can select any package and click on Mark for Removal popup meni. You can also start GUI tool from command line, enter:
BASIC LINUX COMMANDS mkdir - make directories Usage mkdir [OPTION] DIRECTORY Create the DIRECTORY(ies), if they do not already exist. Mandatory arguments to long options are mandatory for short options too. -m, mode=MODE set permission mode (as in chmod), not rwxrwxrwx - umask -p, parents no error if existing, make parent directories as needed -v, verbose print a message for each created directory -help display this help and exit -version output version information and exit
BASIC LINUX COMMANDS cd - change directories Use cd to change directories. Type cd followed by the name of a directory to access that directory. Keep in mind that you are always in a directory and can navigate to directories hierarchically above. or below. mv- change the name of a directory Type mv followed by the current name of a directory and the new name of the directory. Ex: mv testdir newnamedir pwd - print working directory will show you the full path to the directory you are currently in.This is very handy to use, especially when performing some of the other commands on this page rmdir - Remove an existing directory rm -r Removes directories and files within the directories recursively. chown - change file owner and group Usage
BASIC LINUX COMMANDS chown - change file owner and group Usage chown [OPTION] OWNER[:[GROUP]] FILE chown [OPTION] :GROUP FILE chown [OPTION] --reference=RFILE FILE Options Change the owner and/or group of each FILE to OWNER and/or GROUP. With --reference, change the owner and group of each FILE to those of RFILE. -c, changes like verbose but report only when a change is made -dereference affect the referent of each symbolic link, rather than the symbolic link itself -h, no-dereference affect each symbolic link instead of any referenced file (useful only on systems that can change the ownership of a symlink) -from=CURRENT_OWNER:CURRENT_GROUP change the owner and/or group of each file only if its current owner and/or group match those specified here. Either may be omitted, in which case a match is not required for the omitted attributes
BASIC LINUX COMMANDS -no-preserve-root do not treat `/' specially (the default) -preserve-root fail to operate recursively on `/' -f, -silent, -quiet suppress most error messages -reference=RFILE use RFILE's owner and group rather than the specifying OWNER:GROUP values -R, -recursive operate on files and directories recursively -v, -verbose output a diagnostic for every file processed The following options modify how a hierarchy is traversed when the -R option is also specified. If more than one is specified, only the final one takes effect. -H if a command line argument is a symbolic link to a directory, traverse it -L traverse every symbolic link to a directory encountered -P do not traverse any symbolic links (default) chmod - change file access permissions Usage chmod [-r] permissions filenames r Change the permission on files that are in the subdirectories of the directory that you are currently in. permission Specifies the rights that are being granted. Below is the different rights that you can grant in an alpha numeric format.filenames File or directory that you are associating the rights with Permissions u - User who owns the file. g - Group that owns the file.
BASIC LINUX COMMANDS o - Other. a - All. r - Read the file. w - Write or edit the file. x - Execute or run the file as a program. Numeric Permissions: CHMOD can also to attributed by using Numeric Permissions: 400 read by owner 040 read by group 004 read by anybody (other) 200 write by owner 020 write by group 002 write by anybody 100 execute by owner 010 execute by group 001 execute by anybody ls - Short listing of directory contents -a list hidden files -d list the name of the current directory
BASIC LINUX COMMANDS -F show directories with a trailing '/' executable files with a trailing '*' -g show group ownership of file in long listing -i print the inode number of each file -l long listing giving details about files and directories -R list all subdirectories encountered -t sort by time modified instead of name cp - Copy files cp myfile yourfile Copy the files "myfile" to the file "yourfile" in the current working directory. This command will create the file "yourfile" if it doesn't exist. It will normally overwrite it without warning if it exists. cp -i myfile yourfile With the "-i" option, if the file "yourfile" exists, you will be prompted before it is overwritten. cp -i /data/myfile Copy the file "/data/myfile" to the current working directory and name it "myfile". Prompt before overwriting the file. cp -dpr srcdir destdir Copy all files from the directory "srcdir" to the directory "destdir" preserving links (-poption), file attributes (-p option), and copy recursively (-r option). With these options, a directory and all it contents can be copied to another dir
BASIC LINUX COMMANDS ln - Creates a symbolic link to a file. ln -s test symlink Creates a symbolic link named symlink that points to the file test Typing "ls -i test symlink" will show the two files are different with different inodes. Typing "ls -l test symlink" will show that symlink points to the file test. locate - A fast database driven file locator. slocate -u This command builds the slocate database. It will take several minutes to complete this command.This command must be used before searching for files, however cron runs this command periodically on most systems.locate whereis Lists all files whose names contain the string "whereis". directory. more - Allows file contents or piped output to be sent to the screen one page at a time less - Opposite of the more command cat - Sends file contents to standard output. This is a way to list the contents of short files to the screen. It works well with piping. whereis - Report all known instances of a command wc - Print byte, word, and line counts. bg: bg jobs Places the current job (or, by using the alternative form, the specified jobs) in the background, suspending its execution so that a new user prompt appears immediately. Use the jobs command to discover the identities of background jobs.
BASIC LINUX COMMANDS cal month year - Prints a calendar for the specified month of the specified year. cat files - Prints the contents of the specified files. clear - Clears the terminal screen. cmp file1 file2 - Compares two files, reporting all discrepancies. Similar to the diff command, though the output format differs. diff file1 file2 - Compares two files, reporting all discrepancies. Similar to the cmp command, though the output format differs. dmesg - Prints the messages resulting from the most recent system Boot. fg fg jobs - Brings the current job (or the specified jobs) to the foreground. file files - Determines and prints a description of the type of each specified file. find path -name pattern -print Searches the specified path for files with names matching the specified pattern (usually enclosed in single quotes) and prints their names. The find command has many other arguments and functions; see the online documentation. finger users - Prints descriptions of the specified users. free - Displays the amount of used and free system memory. ftp hostname Opens an FTP connection to the specified host, allowing files to be transferred. The FTP program provides subcommands for accomplishing file transfers; see the online documentation.
BASIC LINUX COMMANDS head files - Prints the first several lines of each specified file. ispell files - Checks the spelling of the contents of the specified files. kill process_ids kill - signal process_ids kill -l Kills the specified processes, sends the specified processes the specified signal (given as a number or name), or prints a list of available signals. killall program killall - signal program Kills all processes that are instances of the specified program or sends the specified signal to all processes that are instances of the specified program. mail - Launches a simple mail client that permits sending and receiving email messages. man title man section title - Prints the specified man page. ping host - Sends an echo request via TCP/IP to the specified host. A response confirms that the host is operational. reboot - Reboots the system (requires root privileges). shutdown minutes shutdown -r minutes Shuts down the system after the specified number of minutes elapses (requires root privileges). The -r option causes the system to be rebooted once it has shut down. sleep time - Causes the command interpreter to pause for the specified number of seconds.
BASIC LINUX COMMANDS sort files - Sorts the specified files. The command has many useful arguments; see the online documentation. split file - Splits a file into several smaller files. The command has many arguments; see the online documentation sync - Completes all pending input/output operations (requires root privileges). telnet host - Opens a login session on the specified host. top - Prints a display of system processes that's continually updated until the user presses the q key. traceroute host - Uses echo requests to determine and print a network path to the host. uptime - Prints the system uptime. w - Prints the current system users. wall - Prints a message to each user except those who've disabled message reception. Type Ctrl-D to end the message.
ADVANCE LINUX COMMAND This page contains commands that are not essential for newbies but can be fun and/or very productive if you take the time to learn them. Above all, they can be very educational--linux is a great learning platform. There are thousands of free programs available on Linux, but some of them may be missing on your system, depending on your distribution. You can always find the hompage with google, and then download them. banner /usr/games/banner -w79 "Happy Birthday, Marie" > marie.txt Create an ascii "banner" with the width of 79 characters. The output is sent to file marie.txt. script Log my current session in the text terminal into a text file typescript (the default filename). The log finishes when I type exit or press <Ctrl>d. emacs (in X-terminal) The emacs text editor. Advanced and sophisticated text editor. Seems for gurus only: "emacs is not just an editor, it is a way of living". Emacs surely seems rich or bloated, depending on your point of view. There are likely 3 versions of emacs installed on your system: (1) text-only: type emacs in a text (not X-windows) terminal (I avoid this like fire); (2) graphical-mode: type emacs in an X-windows terminal (fairly usable even for a newbie if you take some time to learn it); and (3) X-windows mode: type "xemacs" in an X-windows terminal. nano This is a brand new (March 2001) GNU replacement for pico. Works and looks like pico, but it is smaller, better, and licenced as expected for a decent piece of Linux software (i.e., General Public Licence, GPL). Not included with RH7.0 or MDK7.2, but expect it soon.
ADVANCE LINUX COMMAND khexedit (in X terminal) Simple hexadecimal editor. Another hexadecimal editor is hexedit (text based, less user friendly). Hex editors are used for editing binary (non-ASCII) files. diff file1 file2 > patchfile Compare contents of two files and list any differences. Save the output to the file patchfile. sdiff file1 file2 Side-by-side comparison of two text files. Output goes to the "standard output" which normally is the screen. patch file_to_patch patchfile Apply the patch (a file produced by diff, which lists differences between two files) called patchfile to the file file_to_patch. If the patch was created using the previous command, I would use: patch file1 patchfile to change file1 to file2. Regular expression(regexpr) Sed Gaw k cvs Concurrent versions system. Try: info cvs for more information. Useful to keep the "source code repository" when several programmers are working on the same computer program. cervisia (in X-terminal). A GUI front-end to the cvs versioning system.
ADVANCE LINUX COMMAND file -z filename Determine the type of the file filename. The option -z makes file look also inside compressed files to determine what the compressed file is (instead of just telling you that this is a compressed file). To determine the type of content, file looks inside the file to find particular patterns in contents ("magic numbers")--it does not just look at the filename extension like MS Windows does. The "magic numbers" are stored in the text file /usr/share/magic--really impressive database of filetypes. Touch file name strings filename | more Display the strings contained in the binary file called filename. "strings" could, for example, be a useful first step to a close examination of an unknown executable. wc (=word count) Print the number of lines, words, and bytes in the file. Examples: dir | wc cat my_file | wc wc myfil od
ADVANCE LINUX COMMAND cksum filename Compute the CRC (="cyclic redundancy check") for file filename to verify its integrity. md5sum filename Compute a md5 checksum (128-bit) for file filename to verify its integrity. mkpasswd -l 10 Make a hard-to-guess, random password of the length of 10 characters. sort -f filename Arrange the lines in filename according to the ascii order. The option -f tells sort to ignore the upper and lower character case. The ascii character set is (see man ascii): Dec Hex Char Dec Hex Char Dec Hex Char Dec Hex Char uniq (=unique) Eliminate duplicate lines in sorted input. Example: sort myfile | uniq fold -w 30 -s my_file.txt > new_file.txt Wrap the lines in the text file my_file.txt so that there is 30 characters per line. Break the lines on spaces. Output goes to new_file.txt.
LINUX SET UP Linux : Setup as DNS Client / Name Server IP Address Many new Linux user finds it difficult to setup / modify new name server address (NS1 / NS2). Local name resolution is done via /etc/hosts file. If you have small network, use /etc/hosts file. DNS (domain name service is accountable for associating domain names with ip address, for example domain yahoo.com is easy to remember than IP address 126.96.36.199) provides better name resolution. To configure Linux as DNS client you need to edit or modify /etc/resolv.conf file. This file defines which name servers to use. You want to setup Linux to browse net or run network services like www or smtp; then you need to point out to correct ISP DNS servers: /etc/resolv.conf file In Linux and Unix like computer operating systems, the /etc/resolv.conf configuration file contains information that allows a computer connected to the Internet to convert alpha-numeric names into the numeric IP addresses that are required for access to external network resources on the Internet. The process of converting domain names to IP addresses is called "resolving." The resolv.conf file typically contains the IP addresses of nameservers (DNS name resolvers) that attempt to translate names into addresses for any node available on the network.
LINUX SET UP Setup DNS Name resolution Steps to configure Linux as DNS client, first login as a root user (use su command): Step # 1: Open /etc/resolv.conf file: # vi /etc/resolv.conf Step #2: Add your ISP nameserver as follows: search isp.com nameserver 188.8.131.52 nameserver 184.108.40.206 nameserver 220.127.116.11 Note Max. three nameserver can be used/defined at a time. Step # 3:Test setup nslookup or dig command: $ dig www.nixcraft.com $ nslookup www.nixcraft.com
CONFIGURING LINUX <ul><li>Bridged vs PPPoX Networks