Linux系统启动过程详解(2)

当使用chkconfig命令为此脚本在rcNUM.d目录创建链接时,RUNLEVEL表示默认创建为SNUM开头的文件,除此之外的级别均默认创建为KNUM开头的链接。S后边的启动优先级为SS所表示的数字,K后边的关闭优先级次序为KK所表示的数字。一般SS+KK=99。

#description: DESCRIPTIONS

描述信息,用户说明此脚本的简单功能。可以使用\进行续行。

/etc/rc.d/rc.local

/etc/rc.d/rcNUM.d/S99local --> /etc/rc.d/rc.local

/etc/rc.local --> /etc/rc.d/rc.local

在系统启动最后执行的服务,准确说应该是脚本。不方便定义为服务等的命令都可以在其中写入,在用户登录前执行。

例如命令行模式登陆式的显示的欢迎内容等。

GRUB:GRand Unified Bootloader

grub启动流程:

stage1:装在MBR中。目的是为了引导stage2。

stage1.5:用来识别常见的文件系统。

stage2:位于内核所在分区。/boot/grub/。

/etc/grub.conf

grub配置文件。是链接文件,指向/boot/grub/grub.conf

主要内容如下:

default=0

设定默认启动的title编号,编号从0开始。

timeout=5

等待选择超时时间。单位是秒。

splashimeage=(hd0,0)/grub/palash.xmp.gz

指定grub背景图片。

hidenmenu

是否隐藏菜单。

password --md5 PASSWORD

设定GRUB的编辑的密码。可以使用grub-md5-crypt来生成加密的密码。

title TITLENAME

内核标题或者是OS的名称,可自由修改。

root (hdDISKNUM,PARTNUM)

指定内核文件所在的设备和分区。对grub而言,所有硬盘一律显示为为hd。DISKNUM表示磁盘序号,PARTNUM表示分区序号。

kernel KERNEL CMDLINE

指定kernel路径即传递给内核的参数。参数文件可以在/proc/cmdline中看到。

initrd INIDRD

指定initrd路径。

password --md5 PASSWORD 启动内核或OS的密码。

安装grub:

#fdisk DEVICE

/dev/PART1 用来做boot

/dev/PART2 用来做sysroot

#mkdir /DIR/boot

#mount /dev/PART1 /DIR/boot

#grub-install --root-directory=/DIR DEVICE

此种方式要保证把内核文件所在分区挂载在/boot上。grub只要指定/boot所在的父目录就能自动找到/boot。

#vim /DIR/boot/grub.conf

修复grub:

安装grub stage1:

#grub

grub> root (hdDISKNUM,PARTNUM) 指定内核所在的磁盘和分区。

grub> setup (hdDISKNUM) 在指定的硬盘上安装grub。

grub> quit

grub.conf文件丢失:

开机进入grub后操作。

grub> find (hdDISKNUM,PARTNUM)/

按tab键会显示出相关文件。

grub> root (hdDISKNUM,PARTNUM)

grub> kernel /KERNEL

grub> initrd /INITRD

grub> boot

#mingetty [OPTION] 启动终端

[OPTION]

--loginprog=/bin/login 启动中断后执行的程序。默认为/bin/login。

#agetty [OPTION] PROT BAUDRATE  替代getty命令。

[OPTION]

-l LOGIN PROGRAME 指定登陆程序

-n 不需要用户输入用户名。不需要用户输入登录信息。配合-l一起使用。

例如:

#agetty -l /bin/bash 38400  登陆bash并将波特率设定为38400。

#stty [OPTION] DEVICE SETTING 改变和显示终端设备。

[OPTION]

-F --file=DEVICE 打开并使用指定的设备

SETTING:

size 显示行(rows)列(columns)数。

speed 显示终端速率。

例如:

#stty -F /dev/console size 物理终端

25 80 25行80列。

#stty -F /dev/console speed

38400 每秒38400个字符

#chkconfig [OPTION]

指定SysV风格脚本,自动在/etc/rcNUM.d下创建链接。

[OPTION]

--list SERVICE  列出所有独立守护进程的启动设定。不加参数显示所有设定。

--add SERVICE

自动创建链接,将SERVICE添加到chkconfig控制的服务列表中。下次系统启动生效。

--del SERVICE

删除SERVICE所有链接文件。

--level [RUNLEVELS] SERVICE on|off

指定级别为RUNLEVELS,SERVICE启动或关闭。对于瞬时守护进程不需要指定RUNLEVLES。RUNLEVELS可以省略,省略默认为2345级别。

linux常见的关机和重启命令:

shutdown

halt

-p 切断电源

需要配合exec命令使用。

reboot

poweroff

init 0

init 6

#exec 执行文件,并以子进程替换父进程。

例如:

#exec halt -p

守护进程的类型:

独立守护进程

瞬时守护进程

不需要关联至运���级别。

xinetd:超级守护进程。管理所有瞬时守护进程。需要关联运行级别。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/16692.html