Tutorial on Linux Introduction, Installation & Initial Setups Speaker: Faran Javed (BIT-5) Abdul...
-
Upload
edgar-thornton -
Category
Documents
-
view
214 -
download
1
Transcript of Tutorial on Linux Introduction, Installation & Initial Setups Speaker: Faran Javed (BIT-5) Abdul...
Tutorial on Linux Introduction, Installation & Initial Setups
Speaker:
Faran Javed (BIT-5)
Abdul Lateef Khan (BIT-5)
Agenda
Introduction Planning to Install Installing Red Hat Linux Post Installation Configuration First Steps with Linux
Part – IGetting Started
Introduction
For x86 architecture Free implementation of UNIX Used for
Programming Productivity Distributed Computing Telecom & Networking
What is Linux ?
The core kernel of a free operating system first developed and released to the world by Linus Bendict Torvalds in 1991
What’s Red Hat Linux ?
Product of Red Hat Inc. Named after a Cornell university team
hat. Objective:
Develop release and market an easily managed, and easy to use Linux Distribution
Brief History
Initiated by Linux Torvalds Initially the little Clone of Unix Version 0.0.1 was never announced Version 0.0.2 announced October 5
1991 Aim was to build a MINIX look-a-like OS
for AT 386 machines
System Features
complete multitasking, multi-user operating system Complete Implementation of the TCP/IP stack and other
networking software is provided Variety of File systems supported
Ext2 Ext3 XENIX and UNIX System V Microsoft MS-DOS Windows 95 VFAT file systems on a hard drive or floppy. The ISO 9660 CD-ROM file system is also supported.
System Features
The kernel supports demand-paged, loaded executables. Only those segments of a program which are
actually in use are read into memory from disk.
unified memory pool for user programs and disk cache. All free memory is used by the cache, which is
reduced when running large programs.
Executables use dynamically linked, shared libraries
System Features
To facilitate debugging, the kernel generates core dumps for post-mortem analysis.
amount of available memory, Linux also implements disk paging
If several instances of a program are running at once, they share physical memory, which reduces overall usage.
Software Features
Coming Up in Later Slides
Preparing To Install
L inux
Linux Installation
Hardware Compatibility http://hardware.redhat.com/hcl/
Disk Space 400 MB – 5 GB depending on minimal,
personal, server etc. settings
Preparing for the Install Process
Most Common Installation Methods CD-ROM NFS
From a remotely mounted hard drive containing the red hat Linux software
FTP HTTP Hard Drive Partition
Preparing to Install from a CD-ROM
Just make sure System BIOS is set to BOOT from CD_ROM
Partitioning Your Hard Disk Space
If Linux is the only OS than we can auto partition
Assuming a machine with 20 GB Hard Disk & 256 MB RAM
Most basic Scheme Requires a native root partition & a swap partition
Typical Partitions
For a machine with only Linux on the system the scheme will look like: Hard Drive Partition Mount Point Size
/dev/hda1 / 19.14 GB /dev/hda2 swap 512 MB
For a machine already having windows: Hard Drive Partition Mount Point Size
/dev/hda1 /mnt/dos 9.74 GB/dev/hda2 / 8.14 GB
/dev/hda3 swap 512 MB
Hosting Parts of the Linux File System on Partitions /home
Our users home – will contain our personal files, /opt
Directory for additional software packages to be installed
/tmp Used as temporary storage for users
/usr Holds nearly all software on the red hat system
/var Security logs, mails, print spools are under this
directory
Kickstart Installation Method
Automation always saves time Use Red Hats KickStart Configurator A sample ks.cfg file
#System Language
Lang en-US
#Langugae Modules to Install
Langsupport en_US
Sample File
# System Keyboard
keyboard us
# System mouse
Mouse genericps/2
# System time zone
Timezone –utc America/NewYork
# Root password
Rootpw – iscrypted $1$shaldsgfakd3452435gjAJHSGDA/SAD324
The Installation Process Language Selection Keyboard and Mouse configuration Choice of installation type
Personal Desktop If new to the world of Linux
Workstation If you would like a graphical desktop environment, as
well as software development tools Server
If you would like your system to function as a Linux-based server
Custom Greatest flexibility
Upgrade
Installation Process (cont.)
Disk partitioning Automatic Partitioning Manual Partitioning
ext2, ext3, RAID, swap, vfat etc.
Configuring Boot Loader LILO GRUB
Network Configuration Firewall Configuration Language & Time Zone Configuration
Installation Process (cont.)
Authentication setup Package Selection Actual installation Boot Disk creation, VGA and monitor
configuration
First Steps In Linux
Viewing the red hat Linux file system
Ls
Tree
Basic Linux Directories
/ The root Directory /bin Essential Commands /boot Boot Loader Files /dev Device Files /etc System Configuration files /home User home directories /lib Shared libraries /mnt usual mount point /opt Add-on software packages Proc Kernel Information Process control /root Super user /sbin System commands mostly root only /tftpboot Network boot support /tmp temp files /Usr Secondary software file hierarchy /var Variable data (e.g. logos), spooled files
Files in the /etc directory
Fstab FILE SYSTEM TABLE. A text file listing each hard drive, Floppy drive or
other storage attached to your PC. Inittab
The system Initialization table. Defines default run level. Here we can define either to use text or GUI mode.
Modules.conf Contains directions and options used when loading kernel modules to
enable various types of hardware Passwd
The list of users of the system & their accnt info. Printcap
Systems printer capabilities database Shells
A list of approved shells (command line interfaces) Sysconfig
Tree –afx /etc/sysconfig
Interact with the kernel
Use the proc diractory Vi /proc/meminfo Or use the free command /proc/cpu -- cpu family,type & speed /proc/net – important networking info
/proc/net/netstat , /proc/net/route , /proc/net/dev
/proc/version – kernel version
Remote Login
Use SSH – secure shell Linux also supports :
Telnet Rlogin
Changing user Information
Chfn – change finger information Finger – get finger information
Accessing Documentation
Apropos partition Will display related commands
Using the Man pages
Man rm Will display manual pages for the rm
command
Grep
Grep alateef /etc/passwd This will search for alateef in /etc/passwd
Whereis fdisk
Using Environment Variables
PWD – current directory USER – declare user name LANG – To set language defaults SHELL – TO declare the name and location of the
current shell PATH – set default location of executable files LD_LIBRARY_PATH – location of important software
libraries TERM – set the type of terminal in use MACHINE – declare system type, architecture & so on
$env /etc/profile
Navigating & searching with shell Cd /home/….. Cd .. Whereis Locate Apropos Cat <filename>– contents of file Less <filename> - allows scrolling while reading contents of file
name Mv <file1> <file2> Mv <file> <dir> Cp <src> <dst> Rm <file> Rmdir <dir> Grep <string> <file>
Compressing & Decompressing Files
Bunzip2 - expands a compressed file Bzip2 – compresses or expands files &
directories Gunzip Gzip Shar Tar unshar
Using Text Editors
Ed Emacs Jed Joe Mcedit Pico Sed Vim Vi
Gedit Kate Kedit Nedit kwrite
Working with vi
H,j,k,l – cursor movement Delete character – x Delete line – dd Mode toggle – ESC, Insert (or i) Quit - :q Quit without saving - :q! Save file - :w Text search - / Run a shell command - :sh (use exit to return)
Mounting a Drive
Compiling a simple C Program
Internet Configuration
Ethernet Configuration Things you should know
IP address If you're configuring loopback mode, it is 127.0.0.1
Subnet mask It is always 255.0.0.0 for loopback address
Broadcast address It is equal to your subnet address with 255
replaced as the host address IP address of Gateway IP address of Name server
Configuration using system scripts Edit the file /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 ONBOOT=yes BOOTPROTO=staticIPADDR=192.168.8.139NETMASK=255.255.255.0BROADCAST=192.168.8.255GATEWAY=192.168.8.1
Edit the file /etc/sysconfig/networkNETWORKING=yes HOSTNAME=linux.niit.edu.pk GATEWAY=192.168.8.1
Configuration of Static IP via command line
The shell provides two programs for NIC configuration, ifconfig & route ifconfig
For configuring the network device interface with certain parameters, such as the IP address, subnetwork mask etc.
Remember to bring the interface down & up when modifying Set IP Address
ifconfig lo 127.0.0.1ifconfig eth0 192.168.75.20 netmask 255.255.255.0
Verify Settingsifconfig eth0
route To show and manipulate the IP routing table Add default gateway
route add default gw 192.168.1.254route add –net 192.156.79.0 netmask 255.255.255.0 dev eth0
Important Configuration files
/etc/hosts Contains a list of IP addresses and the hostnames they
correspond to127.0.0.1 ENT localhost.localdomain
localhost
/etc/networks lists the names and addresses of your own and other
networks Used by the route command and allows you to specify a
network by name instead of by addressdefault 0.0.0.0 # default route - mandatory
loopnet 127.0.0.0 # loopback network - mandatory
niit-net 202.83.166.171 # Modify for your own network address
Important Configuration files
/etc/host.conf Specifies how your system resolves hostnames
order hosts,bind /etc/resolv.conf
Configures the name resolver specifies the address of your nameserver (if any) domains that you want to search by default if a
specified hostname is not a fully specified hostname
domain niit.edu.pk
nameserver 10.10.10.1
Network Configuration for DHCP Edit the file /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 ONBOOT=yes BOOTPROTO=dhcpIPADDR=NETMASK=BROADCAST=GATEWAY=
Edit the file /etc/sysconfig/networkNETWORKING=yes HOSTNAME=GATEWAY=
Basic PPP Configuration for Modems In Windows, modems and other serial devices are named
COM1, COM2 etc. In Linux, these are referred as /dev/ttyS0, /dev/ttyS1
At installation time a symbolic link called /dev/modem will be created for the modem
KDE graphical tool called “kppp” configures a dialup connection easily
Located in /usr/bin/kppp Red Hat requires the root password to be entered each
time kppp is executed for security reasons Some distributions allow any user to execute this
program such as SuSE
Configuring kppp
Start kppp
Click the Setup button and then click the Device Tab
In the Model tab, click Query Modem, it should come up with some results
Setting up your ISP Info Accounts button
You might need to add the line route add default ppp0 to the field Execute program upon connect: to ensure the default gateway is set to the default gateway from your ISP.
Enter your username and password for your ISP and Connect
Users Groups & Permissions
User Accounts
Personal Accounts AAA (Authentication, Authorization,
Accounting) Administrative Accounts
root Accessed using the su command
Daemon accounts e.g., news daemon
The passwd File Every account on the system has an entry in the file /etc/passwd
username:password:uid:gid:gecos:homedir:shell Username
A unique character string, identifying the account Password
An encrypted representation of the user's password UID
unique integer the system uses to identify the account GID
an integer referring to the user's default group, found in the file /etc/group
gecos Misc. information like user's real name, office address or
phone no. etc.
The passwd File
homedir user's home directory
shell name of the program to run when the user logs in e.g.,
/bin/bash or /bin/tcsh
root:ZxPsI9ZjiVd9Y:0:0:The root of all evil:/root:/bin/bash
Shadow Passwords
Encrypted passwords in /etc/passwd are potential security risk
Instead /etc/shadow is used Contains the real encrypted passwords Readable only by root Contain similar fields but empty or bogus values
passwd command -n : sets the minimum number of days between
changes -x : the maximum number of days between changes -w : the number of days a warning is issued before a
password expires -i the number of days of inactivity between the expiry
of a password and the time the account is locked
The Group File To logically organize sets of user accounts To allow users to share files within their group or groups Every user is assigned to at least one group The file /etc/group contains a one-line entry for each group on the
systemgroupname:password:gid:members
password is an optional encrypted password associated with the group, which allows users not in this group to access the group with the newgrp command
members is a comma-separated list of usernames identifying those users who are members of this group but who have a different gid in /etc/passwd
root:*:0: bin:*:1:root,daemon users:*:50: bozo:*:51:linus,mdw megabozo:*:52:kibo
Creating Accounts
Adding an entry to /etc/passwd Creating the user's home directory Setting up the user's default
configuration files
adduser or useradd
Deleting and Disabling Accounts To delete an account
remove the user's entry in /etc/passwd remove any references to the user in /etc/group delete the user's home directory any additional files created or owned by the user
userdel -r lateef Disabling a user account
add an asterisk to the first character of the password field of the /etc/passwd entry
kashif:*BjDf5hBysDsii:104:50:lateef Rao:/home/aclark:/bin/bash
Modifying User Accounts
Simply edit /etc/passwd and /etc/group To change a user's password, use the
passwd command Use chown command to change
ownership of files chown -R alateef
/home/alateef
File Ownership and Permissions Permissions refer to the ways in which
someone can use a file or directory For files
Read permission means you can look at the file's contents
Write permission means you can change or delete the file
Execute permission means you can run the file as a program
For directories Read permission means you can list the contents
of that directory Write permission means you can add or remove
files in that directory Execute permission means you can list
information about the files in that directory Who gets these permissions?
Linux has three levels of permissions Owner Group Other
File Ownership and Permissions
Owners and Groups
Each file has an owner and a group
Changing the Owner, Group
Common mistake when creating a directory under /home for a new user as root
chown command changes the owner of a file only root can use chown for changing ownership of a
file chgrp command changes the group
any user can change the group to another group to which he belongs
# chown root /home/lateef/apache.conf # chgrp bin /home/lateef/apache.conf
# chown root.bin /home/lateef/apache.conf
Changing the Permissions
The permissions are also called the file's "mode" The command that changes permissions is chmod Symbolic Mode
$ chmod +x header.c
$ chmod u-x header.c
$ chmod ug+rwx header.c
User permission is u, group permission is g, and other is o
Changing the Permissions Absolute Mode
in terms of bits and octal notation
$ chmod 400 header.c $ chmod 555 header.c
To set the default mode that is assigned to each file you create umask command
$ umask 027
Shutting down the machine
Shutdown –h now Or shutdown –h 0 Shutdown –h 18:30 “system is going
down for maintenance”
Shutdown –r now shutdown –r 0
References
http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/install-guide/
Red Hat Linux 9 Unleashed – Bill Ball & Hoyt Duff