Title: ITI481: Unix Administration
1ITI-481 Unix Administration
- Meeting 2
- Rutgers University Center for Applied Computer
Technologies - Chris Uriarte, Instructor
2Todays Agenda
- Software Installation
- Booting and Shutting Down
- Emergency Boot Procedures
3Software Installation
- Methods of Installation
- Binary distributions
- Red Hat Package Manager (RPM)
- Compiling from source
- Software installations usually must be done as
root.
4Red Hat Package Manager (RPM)
- Generally used for installation and removal of
precompiled software. - Originally deployed on Linux systems, now
available on other major platforms (most notably,
Solaris) - Installation of operating system and additional
software on many UNIX distributions managed
through RPMs. - RPMs that are part of the Linux Distribution can
be found on your install CD at/mnt/cdrom/ltDistri
bution Namegt/RPMS - RPM installations are usually managed by the rpm
command (/bin/rpm) - As close to setup as you can get on UNIX one
command installs an entire software package. -
5RPM at the Command Line
- For a list of packages already installedrpm qa
- To install a new packagerpm ivh
package-file-name - To upgrade an existing packagerpm Uvh
package-file-name - To uninstall a package rpm e package-name
- (package name as seen in rpm qa)
6RPM at the Command Line (cont)
- List the files associated with a particular
package - rpm ql package-name
7Package Files vs. Installed Packages
- An rpm package file is a file that contains all
the software associated with a particular
application. It ends with the .rpm extension,
for example netscape-communicator-4.71-i586.rpm - When the package is installed, using the rpm i
option, the package name is officially entered in
the system package database as the application
name and version, i.e. netscape-communicator-4.71.
Therefore, to remove the package, you need use
the package name not the full name of the file
that you used to install the package.
8Exercise Using Red Hat Package Manager
- Place your Linux CD in your drive - the files on
your CD can now be accessed via the directory
/mnt/cdrom. - The Mandrake/RPMS directory on your CDROM
contains many RPM files. - Install tcpdump off of the Red Hat CDgt cd
/mnt/cdrom/Mandrake/RPMSgt rpm ivh
tcpdump-3.6.1-1mdk.i586.rpm - Uninstall elm software gt rpm -e elm-2.5.3-7mdk
- Question Is vim installed on your system? If
so, what is the version number?
9Installing Software from Source
- A source installation takes raw computer code and
compiles it into a usable software program. - Optimizes software for platform on which it is
compiled. - Generally provides more installation and
configuration options that using a binary or RPM
distribution. - Requires a C compiler (gcc is the most common and
is pre-installed with many systems).
10Typical Steps for Installing from Source
- Download source archive.
- Unpack archive
- filename.tar.gz or filename.tgz - use gzip
and/or tar - filename.Z use uncompress
- filename.zip use unzip
- Look at README and/or INSTALL documents for
specific installation steps. - Usually, you
- Run configure script if there is one.
- Run make.
- Run make install.
- Key READ the README and INSTALL files!
11Exercise Installing ssh1 from Source
- Download ssh1.2.27. Additional download
locations can be found at http//www.ssh.com/produ
cts/ssh/download.html. - From the download directorygt tar -xvzf
ssh-1.2.27.tar.gz gt cd ssh-1.2.27gt./configuregt
makegt make install
12Where to Find UNIX Software
- Tucows Linuxhttp//www.linuxberg.com
- Freshmeathttp//www.freshmeat.net/
- Rpmfind.nethttp//rpmfind.net/linux/RPM/
- Updates for packages distributed with Red Hat
Linux can be found at any of the Red Hat Mirrors
http//www.redhat.com/download/mirror.html
13Where to Find UNIX Software
- TwoCows http//www.twocows.com
- SunFreeware http//www.sunfreeware.com.
- Download.com http//www.download.com
14When will you use these software installation
procedures?
- When you want to install a new system or user
application. - When you need to apply patches, fixes or updates
that have been provided by your OS vendor. - i.e. RedHat security patches and bug fixes
available at http//www.redhat.com/apps/support/
errata/
15The UNIX Boot Process
- The UNIX boot process is unique.
- UNIX is divided into system states called run
levels, ranging from level 0 to level 6. - UNIX Flavors boot differently, but the general
concepts are always the same - Bootstrap the system using a bootloader
- Load the kernel into memory
- Execute rc scripts (startup scripts)
16The Linux Boot Process
- LILO starts and Linux is selected as the
operating system to boot. - The Linux kernel is loaded into memory and then
probes system hardware. - The init process reads /etc/inittab and
determines whether runlevel 0-6 should be
started. - rc scripts are executed for the specified run
level to start various services.
17Linux Loader (LILO)
- LILO is a boot manager.
- Usually installed in the Master Boot Record (MBR
a special segment of your hard disk that the
system reads during startup). - Configuration file is /etc/lilo.conf. If any
changes are made to lilo.conf, /sbin/lilo needs
to be run for the changes to become active. - For Linux, LILOs purpose is to identify the
location of the kernel, which is actually just a
file like/boot/vmlinuz-2.2.12-20
18General UNIX System Booting
- Linux is unique, as it uses LILO - a very
interactive bootloading system. - Administrators rarely interact with the
bootloader on other flavors of UNIX (unless a
special bootloader is present). - Other UNIX flavors, however, have capabilities
that are similar to those of LILO.
19The UNIX init Process
- init reads /etc/inittab, which designates what
runlevel to start. A runlevel of initdefault is
selected unless otherwise designated. - A runlevel determines what functionality the
system should be providing. Run levels
include0 Halt the system1 Single-user (no
networking)2 Multiuser without NFS3
Multiuser with NFS4 Unused5 Same as 3 but
with X11 console6 Reboot the system
20UNIX Run Levels
- Run Level 1 single user mode
- No prompts for username/password
- Access only via console no remote access to the
system (i.e. telnet) - Very minimal services are running no
networking, no X Windows. - Console user has root permissions
- User for system maintenance
- Used when you forget your root password
21UNIX Run Levels (cont)
- Run Level 2
- All typical services are started
- Multi-user mode users are allowed to log into
the system - NO NFS (Network File System) file sharing
- Run Level 3
- Same as run level 2, but NFS is enabled.
- This is the DEFAULT system run level.
22UNIX Run Levels (cont)
- Run Level 4
- Not used (historical)
- Run Level 5
- Same as run level 3, but the system will
automatically boot into X Windows and console
users will authenticate via an X Windows
username/password interface.
23Special Run Levels
- Run Level 0
- The system halt or shutdown run level
- System processes are stopped and the system halts
- Run Level 6
- The system reboot run level.
- System processes are stopped and the machine is
restarted.
24rc Scripts
- Run level scripts are located in /etc/rc.d/rcX.d
(Xrunlevel , e.g. /etc/rc.d/rc3.d for run
level 3). They are used for both startup and
shutdown purposes. - These directories have startup scripts that run
processes and applications during boot time. The
scripts use the following naming convention - K or S Number Service Name (i.e. S80sendmail)
- S is for start. K is for kill. Lower numbers
start before higher. - Startup scripts take two options start or stop.
Scripts with a S are run with start option.
Scripts with a K are run with a stop option.
25rc scripts, cont
- The scripts in the rcX.d directories are
typically NOT actual files themselves they are
usually symbolic links to links to scripts
located in /etc/rc.d/init.d or /etc/init.d - For example
- A script that starts the apache server, might
exist /etc/rc.d/init.d/apache. This script need
only contain the commands that required to start
apache. - To start Apache during run level 3, create a
symbolic link in /etc/rc.d/rc3.d called, for
example, S99apache and link it to
/etc/rc.d/init.d/apache
26rc script example
- Example you create a script that checks the
system for world writeable files (files that
anyone on the system can write to) and emails
these files to you. - This script is called checkworldread and is
located in /etc/rc.d/init.d. - You would like to run this script when the system
starts in ANY multiuser mode (I.e. run level 2, 3
and 5) - Therefore, you must create rc-style symbolic
links to /etc/rc.d/init.d/checkworldread from the
/etc/rc.d/rc2.d, rc3.d and rc5.d directories.
27rc script diagram
/etc/rc.d/rc3.d
/etc/rc.d/rc5.d
/etc/rc.d/rc1.d
/etc/rc.d/rc2.d
S99checkwr
S99checkwr
S99checkwr
/etc/rc.d/init.d
Symbolic link
checkworldread
28Ways of Changing Run Levels
- /sbin/telinit 0-6 or /sbin/init 0-6
- Allows you to specify a specific run level to
change to - /sbin/shutdown (typically, shutdown now)
- /sbin/reboot
- /sbin/halt
- At LILO boot prompt type linux ltrun levelgt (i.e.
linux 5) - CTRL-ALT-DELETE
- Key combination on PC-based UNIX systems reboots
the systemCan be disabled in /etc/inittab. - Only power-cycle a UNIX system as a last
resort.
29Changing the Default Run Level
- To change the default run level, edit
/etc/inittab look for the line - id3initdefault
- After id put the run level number you wish to
use as your default run level. (usually 3 and 5
are most common options) - Now when your machine boots, it will
automatically enter that run level. - The default UNIX run level is 3, unless youve
specified otherwise during setup.
30Useful Keyboard Shortcuts
- Change to text consoleCTRL-ALT-F1-F6
- Change to X-Windows CTRL-ALT-F7
- Terminate X-Session CTRL-ALT-Backspace
31Exercise Changing Runlevels
- As root, type the followingshutdown t 30 h
System Downtime Beginning - Hit the power switch on your machine to turn the
system back on after the shutdown process is
complete. NEVER turn power off without a proper
shutdown. - At the LILO prompt, enter linux 1. (Linux only)
- After booting into single-user mode, typeinit 5
32Emergency Boot Procedures
- If system is unable to boot normally or you
forgot your root password, the following options
are available - Boot off of your system-specific boot disk
- Can be created usually be created during a UNIX
install process. Linux also has a mkbootdisk
command. - Boot off of your install floppy or cdrom. You
may be prompted to boot into single user mode or
into a recovery mode - Boot into single user mode.
33Homework
- Reading Linux Administration A Beginners Guide
assigned in class.