Linux常用命令(一)服务控制及优化启动过程

 Linux常用命令(一)

服务控制及优化启动过程


  一、Red hat 系统开机引导过程


1linux操作系统的引导过程一般包括以下几个阶段:开机自检、MBR引导、GRUB菜单、加载Linux内核、init进程初始化。


2Linux系统中的进程使用数字进行标记,每个进程的身份标记号称为PID。“/sbin/init”是内核第一个加载的程序,因此init进程对应的PID号总是“1”。init进程是所有程序的父进程。


3inittab配置文件:Redhat6系统中,采用了全新的Upstart启动方式,大大提高了开机效率。Upstart不再使用单一的/etc/inittab配置文件,而是将各种初始化配置分散存放,并各自相应相关的启动事件。

/etc/inittab                        配置默认运行级别

/etc/sysconfig/init                   控制tty终端的开启数量、终端颜色方案

/etc/init/reS.conf                    加载rc.sysinit脚本,完成系统初始化任

/etc/init/rc.conf                     兼容脚本,负责各运行级别的调用处理

/etc/init/rcS-sulogin.conf               为单用户模式启动/sbin/sushell环境

/etc/init/control-alt-delete.conf          控制终端下的Ctrl+Alt+Del热键操作

/etc/init/start-ttys.conf               配置tty终端的开启数量、设备文件

/etc/init/tty.conf                    控制tty终端的开启


修改开机之后默认进入的系统运行级别,可以编辑文件/etc/inittab中的“运行级别字段”(第二字段)

wKioL1msGzbwiw8-AAAMdkH9uzs139.png


进来之后带#号开头的都是注释信息不会执行。在最下边有一行有效的配置记录。每个字段之间用“:”分割,格式为:

标记运行级别动作类型:程序或脚本

wKiom1msHCmy4AnxAAA0mUP4TfI829.png

id-------标记字段

标记字段可以有1~4个字符组成,用以区别于其他行的配置。


runlevels-------运行级别字段

0:关机

1:单用户模式,不需要密码验证即可登录系统,多用于系统维护。

2:字符界面的多用户模式(不支持访问网络)。

3:字符界面的完整多用户模式,大多数服务器主机都为3

4:未分配使用。

5:图形界面的多用户模式,提供了图形桌面操作环境。

6:重新启动,使用该级别时会重启主机。


action-------动作类型字段

动作类型字段描述了该行配置所对应的操作类别,initdefault表示“设置初始化系统后默认进入的运行级别”。


process------程序或脚本字段

此字段用于指定该行配置所对应的实际操作,可以是具体的命令、脚本程序等,此处为空。


二、服务的控制及设置启动方式。


1.RHEL6 系统中,各种系统服务的控制脚本默认放在/etc/rc.d/init.d/目录下。通过以下两种方式都可以实现对指定系统服务的控制:一是使用专门的service控制工具;其二是直接执行系统服务的脚本文件。

service   服务名称     控制类型

/etc/rc.d/init.d/服务名称    控制类型

对于大多数系统服务来说,常见的控制类型如下:

  start    (启动)

  stop     (停止)

  restart  (重启):先退出,再重新运行指定的系统服务程序

  reload   (重载):不退出服务,只是刷新配置。在某些服务中与restart的操作相同

  status    (查看状态):查看指定的系统服务的运行状态及相关信息。

用启动防火墙服务来举例

wKioL1msHH-ymA64AAAUk0dwE6A449.png

或者

wKiom1msHLSyyIXIAAATqweTyck589.png

想要关闭防火墙只要把“start”改为“stop”即可。


2、临时切换运行级别

切换运行级别之前可以先来查看一下当前的运行级别,使用命令runlevel

wKiom1msHOCg8Uu_AAALyX0jiYg011.png

第一列将显示上次所处的运行级别,如果之前未切换则显示N

第二列将显示当前所处的运行级别。

 

切换系统的运行级别使用init命令后边跟相应的运行级别数字即可。

wKioL1msHOzQ3-pAAAAJD_5v-aw799.png

init0为关闭当前系统

init6为重启当前系统


3、优化启动过程

系统中有很多的系统服务,可以使用命令更改各种服务开机时是否运行。


1)、使用ntsysv工具

ntsysv工具可以在字符模式中运行,为用户提供一个仿图形的交互式操作界面,专门用于集中配置各种系统服务的启动状态。

wKioL1msHTKRm8_FAAALKP8vcPU406.png

wKiom1msHVaSbHzAAAA-TQN1wNs204.png

单独执行“ntsysv”命令时仅用于管理当前运行级别中的服务,通过“--level”选项可以对指定运行级别中的服务进行管理。例如“ntsysv --level   35”命令可以同时管理两个运行级别中各种服务的开机启动管理。

操作方法:上下移动光标选择服务,服务前边的【*】表示开机自启动。使用空格来调整【*】,去掉

* ”则代表不会开机自动启动。设置完之后使用“Tab”键切换到OK上保存退出。


2)、使用chkconfig工具

chkconfig命令与ntsysv的功能类似,但是并不提供交互式的操作界面,它也是用来查询或设置系统服务的默认启动状态的。当需要设置某一服务在不同运行级别中的默认启动状态时,使用chkconfig工具会更有效率。

查看指定服务的默认启动状态:chkconfig  --list

wKioL1msHYzzFyhvAAA7M1ZOjH0156.png

on表示开机自启动,off表示在该运行级别不会开机自启动。

 

 

使用chkconfig命令设置防火墙在35运行级别开机时不会自动运行。

wKiom1msHbji9oxpAAAQbkdpnqg641.png


查看防火墙(iptables)的开机启动状态

wKioL1msHbexzt8dAAAU0rawdGM027.png

可以看到在35后面都是off


4、注意

对于初学者建议关闭系统的防火墙,即关闭IptablesSelinux

步骤如下:1)、关闭Iptableschkconfig   iptables  off

wKioL1msHdehgchpAAANAwI8bcw017.png

    

                2)、关闭Selinuxvim  /etc/sysconfig/selinux

wKioL1msHu_B0qUAAAAONfkY3Kk561.png

      修改SELINUX=disabled,保存后退出。(按“a”可以编辑,按“Esc”键退出编辑,再按大写“ZZ”保存退出)

wKiom1msH0fB4m2yAAApuGFC9gQ911.png


       3)、重新启动系统:init 6


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章