运行级别 | 含义 |
---|---|
0 | 关机 |
1 | 单用户模式,可以想象为windows的安全模式,主要用于系统修复 |
2 | 不完全的命令行模式,不含NFS服务 |
3 | 完全的命令行模式,就是标准字符界面 |
4 | 系统保留 |
5 | 图形模式 |
6 | 重启动 |
注:
单用户模式:启动最小的服务,多余服务不开启,仅保证系统自己可以正常运行。主要用于系统修复。
NFS:Linux和Linux之间进行文件共享服务
// 查看系统运行级别
// N:NULL。当前级别为3即字符界面,其上一个级别为N即为空,表示系统开机直接进入字符界面
#runlevel
N 3
// 修改系统运行级别
// 进入图形级别,前提是安装图形界面
#init 5 // 若未安装图形界面则会报错
#runlevel
3 5 // 仍然进入了5级别
// 不建议使用下面命令关机和重启,不一定正确结束系统正在运行的服务;建议使用shutdown命令
// 关机
#init 0
// 重启
#init 6
// /etc/inittab文件现在没有那么重要,它的功能已经被其他配置文件所代替
#vim /etc/inittab
id:3:initdefault:
注:不要把开机启动级别设置为0或6级别。
RPM包与源码包的区别:主要在安装位置不一样。
RPM包安装在系统默认位置,一般不指定安装位置,安装包作者决定安装的位置。
源码包手工指定安装位置,一般装在/usr/local/目录下。
独立的服务和基于xinetd服务的区别:
独立的服务:服务独立的运行在内存中,服务响应速度快,但占用更多内存。
基于xinetd服务: xinetd服务是超级守护进程的一种。xinetd服务本身独立存在,管理一些服务。用户通过xinetd服务请求其管理的一些服务,然后xinetd返回请求服务的回复给用户,xinetd服务相当于proxy一样的角色。xinetd服务逐步被淘汰,大多数服务都是独立的服务。
//查看服务自启动服务
// 通过chkconfig查看的服务都是rpm包安装且都是独立的服务
#chkconfig --list
...
network 0:off 1:off 2:on 3:on 4:on 5:on 6:off //在不同系统运行级别时服务的自动开启状态即是否自启动
...
// 查看基于xinetd服务
// xinetd
#yum -y install xinetd
// 查看服务
#chkconfig --list // 会多一组显示基于inetd服务的服务
服务启动:就是在当前系统中让服务运行,并提供功能。
服务自启动:自启动是指让五福在系统开机或重启动之后,随着系统的启动而自动启动服务。
注:在chkconfig –list 查看到服务在不同运行级别时,服务自启动是否开启,不能确定现在服务是否已经开启。
chkconfig –list命令查看服务自启动状态,可以看到所有RPM包安装的服务
查看服务安装位置,一般是/usr/local/目录下
service、chkconfig、ntsysv都不能找到源码包安装的服务。
源码包一般安装在/usr/local/目录下
RPM包默认安装位置
1 ps aux
命令,显示所有执行的进程包括服务进程,但这并不好用
2 netstat -tlun
显示系统已运行(正在监听)的服务,其他功能可以man netstat
查看
查看/etc/services
文件,显示常见的端口和服务
常规rpm包文件安装位置:
- /etc/init.d/ :启动脚本位置
- /etc/sysconfig/ : 初始化环境配置文件位置
- /etc/ : 配置文件位置
- /etc/xinetd.conf : xinetd配置文件
- /etc/xinetd.d/ : 基于xinetd服务的启动脚本
- /var/lib/ : 服务产生的数据放在这里
- /var/log/ : 日志
1 /etc/init.d/独立服务名 start|stop|status|restart|
// 查看apache http服务的状态,其中httpd为一个shell脚本文件
#/etc/init.d/httpd status
// 启动apache服务
#/etc/init.d/httpd start
// 早期Linux版本服务管理脚本放在/etc/rc.d/init.d/目录
#/etc/rc.d/init.d/httpd status
2 service 独立服务名 start|stop|restart|status|
#service httpd status
注1:redhat系列的Linux才能使用service命令
注2:上面两种方法一般无法管理源码包启动脚本,但可以把源码包启动脚本放置在/etc/init.d/目录下统一管理
1 chkconfig [–level 运行级别] [独立服务名] [on|off]
#chkconfig --list |grep httpd
httpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
#chkconfig --level 2345 httpd on
#chkconfig --list |grep httpd
httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
#chkconfig httpd off
#chkconfig --list|grep httpd
httpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
2 修改/etc/rc.d/rc.local文件
/etc/rc.d/rc.local文件是在系统启动时,把所有的服务启动完,用户登录到系统前最后执行的文件,因此系统会执行这个文件中的命令。
#vim /etc/rc.d/rc.local
touch /var/lock/subsys/local
/etc/init.d/httpd start // 添加开机启动apache服务的命令
注1:通过修改/etc/rc.d/rc.local文件添加的开机启动服务不能在chkconfig –list中显示,这两种管理方式不想关,选取一种即可。
注2:也可以修改/etc/rc.local文件,/etc/rc.local文件是/etc/rc.d/rc.local文件的软连接
3 使用ntsysv命令管理自启动
ntsysv命令和chkconfig命令是相关的,即通过哪一个修改,对方都能看见修改。
注:ntsysv是redhat系列的Linux命令。
#yum -y install xinetd
// 显示rsync服务的端口
#grep rsync /etc/services
#vim /etc/xinetd.d/rsync
service rsync
{
flags = REUSE // 设置TCP/IP socket可重用
socket_type = stream
wait = no // 允许多个连接同时连接
user = root // 启动服务的用户为root
server = /usr/bin/rsync
server_args = --daemon
log_on_failure += USERID // 登录失败后,记录用户的ID
disable = no // 开启rsync服务,开启:no 关闭:yes
}
// 重启动xinetd服务
#service xinetd restart
只有独立的服务才有运行级别,基于xinetd的服务没有运行级别,xinetd在哪个级别可以自启动,rsync服务就在哪个级别可以自启动
// 不能加运行级别
#chkconfig rsync on
#netstat -tlun|grep 873
tcp 0 0 :::873 :::* LISTEN
#chkconfig rsync off
// 查看rsync服务是否关闭,
#netstat -tlun|grep 873 // 无显示,rync服务被关闭
#vim /etc/xinetd.d/rsync // 设置rsync服务的disable=no
#service xinetd restart
#netstat -tlun|grep 873
tcp 0 0 :::873 :::* LISTEN
// 使用图形化界面的ntsysv找到rsync服务开启即可
#ntsysv
注:由上面操作可知 xinetd服务的启动和自启动是一致的,即自启动开启关闭服务和启动开启关闭是一样的。
源码包的安装目录中的安装说明文档中一般有启动命令教程。如apache服务器的安装说明为INSTALL。
使用绝对路径,调用启动脚本来启动。不同的二元吗包的启动脚本不同。可以查看源码包的安装说明,查看启动脚本的方法。
// 源码包服务启动
#/usr/local/apache2/bin/apachectl start|stop
// 源码包中apache2服务首页的修改
#vim /usr/local/apache2/htdocs/index.html
只能通过修改/etc/rc.d/rc.local文件加入启动命令
#vim /etc/rc.d/rc.local // 加入/usr/local/apache2/bin/apachectl start即可
让源码包的apache服务能被service命令管理启动
#ln -s /usr/local/apache2/bin/apachectl /etc/init.d/apache
#service apache start
让源码包的apache服务能被chkconfig与ntsysv命令管理自启动
#vim /etc/init.d/apache
// 在apache启动脚本中添加
#chkconfig: 35 86 76 // 格式:chkconfig : 运行级别 启动顺序 关闭顺序
#description: source package apache
// 把源码包apache加入chkconfig 命令
#chkconfig --add apache
#chkconfig --list |grep apache
apache 0:关闭 1:关闭 2:关闭 3:开启 4:关闭 5:开启 6:关闭
// 这时,ntsysv命令也可以管理apache
#ntsysv
注:
// 格式:chkconfig : 运行级别 启动顺序 关闭顺序
#chkconfig: 35 86 76
#cd /etc/rc3.d/ // 3代表系统纯字符界面
#ls
// 显示以k和s开头文件文件
// k开头的为kill,s开头的为start,
// 系统进入3级别的时要把以s开头的文件执行一遍,同理系统退出3级别时执行一遍k开头的文件
// 启动顺序号和关闭顺序号可以为随意数字,但启动顺序号不能与/etc/rc3.d/目录下已存在的s开头文件的顺序号重复,同理关闭顺序号也不能与k开头文件的顺序号重复
服务名称 | 功能简介 | 建议 |
---|---|---|
acpid | 电源管理接口。如果是笔记本用户建议开启,可以监听内核层的相关电源事件。 | 开启 |
anacron | 系统的定时任务程序。cron的一个子系统,如果定时任务错过了执行时间,可以通过anacron继续唤醒执行 | 关闭 |
alsasound | Alsa声卡驱动。如果使用alsa声卡,开启 | 关闭 |
apmd | 电源管理模块。如果支持acpid,就不需要apmd,可以关闭 | 关闭 |
atd | 指定系统在特定时间执行某个人物,只能执行一次。如果需要则开启,但一般使用crond来进行循环定时任务 | 关闭 |
auditd | 审核子系统。如果开启了此服务,SELinux的审核信息会写入/var/log/audit/auxlit.log文件,如果不开启,审核信息会记录在syslog中 | 开启 |
autofs | 让服务器可以自动挂载网络中的其他服务器的共享数据,一般用来自动挂载NFS服务。如果没有NFS服务建议关闭 | 关闭 |
avahi-daemon | Avahi是zeroconf协议的实现,它可以在没有DNS服务的局域网里发现机遇zeroconf协议的设备和服务。除非有兼容设备或使用zeroconf协议,否则关闭 | 关闭 |
bluetooth | 蓝牙设备支持。一般不会在服务器上使用蓝牙设备,关闭它 | 关闭 |
capi | 仅对使用ISND设备的用户有用 | 关闭 |
chargen-dgram | 使用UDP协议的chargen server。主要功能是提供类似远程打字的功能 | 关闭 |
chargen-stream | 同上 | 关闭 |
cpuspeed | 可以用来调整CPU的频率。当闲置时可以自动降低CPU频率来节省电量 | 开启 |
crond | 系统的定时任务,一般的Linux服务器都需要定时任务帮助系统维护,建议开启 | 开启 |
cvs | 一个版本控制系统 | 关闭 |
daytime-dgram | daytime使用TCP协议的Daytime守护进程,该协议为客户机实现从远程服务器获取日期和时间的功能 | 关闭 |
dovecot | 邮件服务中POP3/IMAP服务的守护进程。主要用来接收信件,如果启动了邮件服务则开启,否则关闭 | 关闭 |
echo-dgram | 服务器回显客户服务的进程 | 关闭 |
echo-stream | 同上 | 关闭 |
firstboot | 系统安装完成之后,有个欢迎界面,需要对系统初始化设定,就是这个进程的作用。既然不是第一次启动,关闭 | 关闭 |
gpm | 在字符终端(tty1-tty6)中可以使用鼠标复制和粘贴。就是该服务的功能 | 开启 |
haldaemon | 检测盒支持USB设备。服务器可以关闭,个人建议开启 | 关闭 |
hidd | 蓝牙鼠标、键盘灯蓝牙设备检测。必须启动bluetooth服务 | 关闭 |
hplip | HP打印机支持,如果没有HP打印机关闭 | 关闭 |
httpd | apache服务的守护进程。如果需要启动apache就开启 | 开启 |
ip6tables | IPv6的防火墙,目前IPv6协议并没有使用,可以关闭 | 关闭 |
pitables | 防火墙功能,Linux中防火墙是内核支持功能。这是服务器的主要防护手段,必须开启 | 开启 |
irda | IrDA提供红外线设备间的通讯支持,关闭 | 关闭 |
irqbalance | 支持多核持利器,让CPU可以自动分配系统中断(IRQ),提高系统性能。目前服务器是多核CPU,开启 | 开启 |
isdn | 使用ISDN设备连接网络。目前主流的联网方式是光钎接入和ADSL,ISDN已经非常少见,关闭 | 关闭 |
kudzu | 该服务可以在开机时进行硬件检测,炳辉调用相关的设置软件。建议关闭,需要时开启 | 关闭 |
lvn2-monitor | 该服务可以让系统支持LVM逻辑卷组,如果分区采用的是LVM方式,那么应该开启,建议开启 | 开启 |
mcstrans | SELinux的支持服务,建议开启 | 开启 |
mdmonitor | 该服务用来监测Software RAID或LVM的信息,不是必须服务,建议关闭 | 关闭 |
mdmpd | 该服务用来监测Multi-Path设备,不是必须服务 | 关闭 |
messagebus | 这是Linux的IPC(Interprocess Communication,进程间通讯)服务,用来在各个软件中交换信息,建议关闭 | 关闭 |
mysqld | mysql数据库服务,需要时开启,否则关闭 | 开启 |
named | DNS服务的守护进程,用来进行域名解析,如果是DNS服务器则开启,否则关闭 | 关闭 |
netfs | 该服务用于在系统启动时自动挂载网络中共享文件空间,比如:NFS、Samba等。需要开启否则关闭 | 关闭 |
network | 提供网络设置功能。通过这个而服务来管理网络,所以开启 | 开启 |
nfs | NFS(Network File System)服务,Linux与Linux之间的文件共享服务,需要就开启,否则关闭 | 关闭 |
nfslock | 在Linux中使用NFS服务,避免同一个文件被不同的用户同时编辑,所以有这个锁服务。有NFS时开启,否则关闭 | 关闭 |
ntpd | 该服务可以通过互联网自动更新系统时间,使系统时间永远都准确。需要则开启,但不必须 | 关闭 |
pcscd | 只能卡检测服务,可以关闭 | 关闭 |
portmap | 用在远程过程调用(RPC)的服务,如果没有任何RPC服务时,可以关闭,主要是NFS和NIS服务需要 | 关闭 |
psacct | 该守护进程支持几个监控进程活动的工具 | 关闭 |
rdisc | 客户端ICMP路由协议 | 关闭 |
readahead_early | 在系统开机的时候,先将某些进程加载如内存整理,可以加快一点启动速度 | 关闭 |
readahead_later | 同上 | 关闭 |
restorecond | 用于给SELinux检测和重新加载正确的文件上下文。如果开启SELinux则需要开启 | 关闭 |
rpcgssd | 与NFS有关的客户端功能。如果没有NFS就关闭 | 关闭 |
rpcidmapd | 同上 | 关闭 |
rsync | 远程数据备份守护进程 | 关闭 |
sendmail | sendmail邮件服务的守护进程,如果有邮件服务就开启,否则关闭 | 关闭 |
setrouleshoot | 用于SELinux行管信息记录在/var/log/messages中,建议开启 | 开启 |
smartd | 该服务拥有自动检测硬盘状态,建议开启 | 开启 |
smb | 网络服务samba的守护进程。可以让Linux和Windows之间共享数据,如果需要则开启 | 关闭 |
squid | 代理服务的守护进程,需要则开启,否则关闭 | 关闭 |
sshd | ssh加密远程登录管理的服务。服务器的远程管理必须使用此服务,不需要则关闭 | |
syslog | 日志的守护进程 | 开启 |
vsftpd | vsftp服务的守护进程。需要FTP服务则开启,否则关闭 | 关闭 |
xfs | 这是XWindow的字体守护进程。为图形界面提供字体服务。不需要启动图形界面就不开启 | 关闭 |
xinetd | 超级守护进程。如果有依赖xinetd的服务就开启 | 开启 |
ypbind | 为NIS(网络信息系统)客户机激活ypbind服务进程 | 关闭 |
yum-updatesd | yum的在线升级服务 |
慕课网Linux服务管理