View
113
Download
8
Category
Tags:
Preview:
DESCRIPTION
Chapter 8 System Startup and Shutdown. Objectives. Define and explain bootstrap procedure Explain single and multi-user run levels Identify and configure system startup files Perform a clean shutdown procedure Explain and define the maintainance mode. Standard Boot Process (LILO). - PowerPoint PPT Presentation
Citation preview
Th
e S
aig
on
CT
T
Chapter 8
System Startup and Shutdown
Th
e S
aig
on
CT
T
ObjectivesObjectives
Define and explain bootstrap procedure
Explain single and multi-user run levels
Identify and configure system startup
files
Perform a clean shutdown procedure
Explain and define the maintainance
mode
Th
e S
aig
on
CT
T
Standard Boot Process (LILO)Standard Boot Process (LILO)
System load the Linux bootstrap from default
boot device, LILO, which resides in Master Boot
Record of hard drive
The bootstrap program has ability to boot Linux to
single-user or multi-user mode
After the bootstrap has loaded the kernel ( stored
in the /boot or / partition ) into memory, it
relinquishes control to this system
Th
e S
aig
on
CT
T
Standard Boot Process (LILO)Standard Boot Process (LILO)
The Linux system initializes physical
devices, virtual memory controller, and its
internal control tables for processes, files, ..
The init process is started and it starts all
other user processes
Before handing control over init, the
kernel will create any other kernel threads
Th
e S
aig
on
CT
T
Boot ProblemsBoot Problems
Sometimes, lilo will not able to boot the
system, it prints the letters LILO on screen.
The problems: disk corrupted, the
information on disk geometry is incorrect,
or since the new kernel image is installed
Troubleshooting: boot the system from
bootable CD or floppy and try to repair disk
problems or correct the /etc/lilo.conf
Th
e S
aig
on
CT
T
Manual BootManual Boot
There are times when lilo has loaded the kernel but
the kernel does NOT work properly because some
of hardware can not be found,…It’s possible to
pass configuration to the kernel through lilo at
lilo command line when booting:
Th
e S
aig
on
CT
T
Manual BootManual Boot
List of some important boot prompt arguments :
root=/dev/hda1 Tell the kernel which device to be mounted as root file system
ramdisk_size=2MB Define maximum of ramdisk (up to 4MB )
single This actually is a parameter passed to init, causes the system to boot in single-user mode
mem=192MB Tell the kernel amount of memory ( RAM size )
aha1542=0x334 Set the I/O port address for SCSI Interface Card
hdc=cdrom Specifies the third disk device is a CD-ROM
Instead of typing them at each reboot, these arguments can be included into the lilo.conf :
append=“hdc=cdrom”
Th
e S
aig
on
CT
T
Manual BootManual Boot
More information about boot prompt and
arguments can be found at:
http://www.tldp.org/HOWTO/BootPrompt-HOWTO.html
Refers to man 5 lilo.conf for a detailed information
about arguments
Th
e S
aig
on
CT
T
Startup Flow ControlStartup Flow Control
It used to run Linux system at level 3
Th
e S
aig
on
CT
T
Run LevelsRun Levels
Runlevel 0 /etc/rc.d/rc0.d
Shutdown mode. Tasks: killing all processes and unmounting file systems
Runlevel 1 /etc/rc.d/rc1.d
Single-user mode, generally used by system administrator when doing maintenance/recovery of the system
Runlevel 2 /etc/rc.d/rc2.d
Multi-user mode, some network services are not started : NFS, …
Runlevel 3 /etc/rc.d/rc3.d
Multi-user mode, all network services are started
Th
e S
aig
on
CT
T
Run LevelsRun Levels
Runlevel 4 /etc/rc.d/rc4.d
User defined run level
Runlevel 5 /etc/rc.d/rc5.d
Multi-user X11 mode. All services that are started in run level 3 are generally started
Runlevel 6 /etc/rc.d/rc6.d
Reboot runlevel.
Runlevel s/S /etc/rc.d/rcS.d
Single-user mode.
Runlevel a/b/c Pseudo states. (rarely used)
Th
e S
aig
on
CT
T
Run Levels UsingRun Levels Using
Use /sbin/runlevel to get current run level
How to start X window ?RedHat and TurboLinux : # init 5
Debian : # init 2
SuSE and Caldera: # init 3
Slackware : # init 4
Reboot : # init 6
Shutdown : # init 0
To manual set default run level at boot time, open
/etc/inittab and look for this line : id:5:initdefault:
Th
e S
aig
on
CT
T
The init Control File: /etc/inittabThe init Control File: /etc/inittab
The init process uses /etc/inittab as its
control file :
• This is a text file, can be edited by the system admin
• init must be told about changes to /etc/inittab by: # init q
• One line per process to run at define run levels
• Lines starting with ‘#’ are comments
Processes run from /etc/inittab are daemons
Init read /etc/inittab every time the run level is
changed
Th
e S
aig
on
CT
T
Structure of Structure of /etc/inittab/etc/inittab
Each line has 4 fields seperated by colons:
id:level:action:command
id Unique identifier for line (up to 4 alphanumeric characters)
level Run level(s) to activate processs
action Keyword for how to run process
command Full path name and parameters of command to be executed
Th
e S
aig
on
CT
T
Structure of Structure of /etc/inittab/etc/inittab
The main inittab action keywords are:
off Do not run this command. Used to retain an entry but to disable it.
wait Run command and wait for completion
once Run command but do not wait. Daemons processes are often started this way
respawn Run command; If process exists, then rerun it. Used for commands that have to start again after completion, like getty and ttymon
sysinit Run command at first init
boot Run command at boot time but do not wait
bootwait Like boot but wait for completion
initdefault Defines default boot level
Th
e S
aig
on
CT
T
/etc/inittab/etc/inittab
# more /etc/inittab...
id:3:initdefault:
#System initialization
si::sysinit:/etc/rc.d/rc.sysinit
l0:0:wait:/etc/rc.d/rc 0
l1:1:wait:/etc/rc.d/rc 1
l2:2:wait:/etc/rc.d/rc 2
l3:3:wait:/etc/rc.d/rc 3
l4:4:wait:/etc/rc.d/rc 4
l5:5:wait:/etc/rc.d/rc 5
l6:6:wait:/etc/rc.d/rc 6
Th
e S
aig
on
CT
T
Run Command ScriptsRun Command Scripts
The run commands scripts are kept
under /etc/rc.d/ and are initiated by init
with directions from /etc/inittab
The script called rc itself runs startup
programs in sub-directories under /etc/rc.d/
•rc 0 looks in /etc/rc.d/rc0.d for runlevel 0
•rc 1 looks in /etc/rc.d/rc1.d for runlevel 1
•rc 2 looks in /etc/rc.d/rc2.d for runlevel 2
• etc …
Th
e S
aig
on
CT
T
Run Command ScriptsRun Command Scripts
These startup programs are symbolic links to
the actual scripts in the /etc/init.d/
The startup link names are formatted: first
character is S (started) or K (killed or
stopped), the next two digits identify the
order that scripts are executed by rc
program
Th
e S
aig
on
CT
T
Changing Run LevelsChanging Run Levels
Use init command to change between run levels.
Syntax :
init <runlevel>
Examples :
# init 0 Shutdown system
# init 6 Reboot system
# init 3 Change to runlevel 3, multi-user text mode
# init 5 Change to runlevel 5, multi-user X11 mode
Th
e S
aig
on
CT
T
Shuting DownShuting Down
Use shutdown commansd. It differs from “init 0”
when allowing to specify time to exit, warn users
what happens, …
Make sure that you follow the proper shutdown
procedure. Do NOT simply shut off the power
# shutdown Default system shutdown (run level 1)
# shutdown –r now Reboot the system now (run level 6)
# shutdown –h 2:00 Halt the system at 2:00AM (run level 0)
Th
e S
aig
on
CT
T
Maintenance ModeMaintenance Mode
When the system doesn’t work because
problems. The simplest and best solution is
to shut down the system to maintenance
mode (run level 1) or reboot the system to
single-user mode (run level S) and try to fix
problems
Th
e S
aig
on
CT
T
SummarySummary
Define and explain bootstrap procedure
Explain single and multi-user run levels
Identify and configure system startup
files
Perform a clean shutdown procedure
Explain and define the maintainance
mode
Recommended