Linux Help Session

Download Report

Transcript Linux Help Session

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 – I
Getting Started
Introduction
 For x86 architecture
 Free implementation of UNIX
 Used for




Programming
Productivity
Distributed Computing
Telecom & Networking
L
What is inux ?
 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
/dev/hda1
/dev/hda2
Mount Point
/
swap
Size
19.14 GB
512 MB
 For a machine already having windows:

Hard Drive Partition
/dev/hda1
/dev/hda2
/dev/hda3
Mount Point
/mnt/dos
/
swap
Size
9.74 GB
8.14 GB
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 Linuxbased 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
















/
/bin
/boot
/dev
/etc
/home
/lib
/mnt
/opt
Proc
/root
/sbin
/tftpboot
/tmp
/Usr
/var
The root Directory
Essential Commands
Boot Loader Files
Device Files
System Configuration files
User home directories
Shared libraries
usual mount point
Add-on software packages
Kernel Information Process control
Super user
System commands mostly root only
Network boot support
temp files
Secondary software file hierarchy
Variable data (e.g. logos), spooled files
Files in the /etc directory

Fstab


Inittab


Systems printer capabilities database
Shells


The list of users of the system & their accnt info.
Printcap


Contains directions and options used when loading kernel modules to
enable various types of hardware
Passwd


The system Initialization table. Defines default run level. Here we can
define either to use text or GUI mode.
Modules.conf


FILE SYSTEM TABLE. A text file listing each hard drive, Floppy drive or
other storage attached to your PC.
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


Subnet mask



It is always 255.0.0.0 for loopback address
Broadcast address


If you're configuring loopback mode, it is
127.0.0.1
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=static
IPADDR=192.168.8.139
NETMASK=255.255.255.0
BROADCAST=192.168.8.255
GATEWAY=192.168.8.1
 Edit the file /etc/sysconfig/network
NETWORKING=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.1
ifconfig eth0 192.168.75.20 netmask 255.255.255.0

Verify Settings
ifconfig eth0

route


To show and manipulate the IP routing table
Add default gateway
route add default gw 192.168.1.254
route 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 to
127.0.0.1
localhost
ENT localhost.localdomain
 /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 address
default 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=dhcp
IPADDR=
NETMASK=
BROADCAST=
GATEWAY=
 Edit the file /etc/sysconfig/network
NETWORKING=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 system
groupname: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
File Ownership and
Permissions
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

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/linu
x/RHL-9-Manual/install-guide/
 Red Hat Linux 9 Unleashed – Bill Ball &
Hoyt Duff