对L
i
nux系统进行的常用的管理工作,系统启动和服务管理、进程管理、自动任务管理、日志管理和存储管理等
1、
系统启动过程与运行级别
Linux启动过程
A
进行硬件自检POST,然后读取0-0-1(0柱面0磁道第一个扇区)的MBR中的引导程序并加载
B
启动引导程序负责引导磁盘分区中的OS,引导磁盘分区中的OS启动,加载L
i
nux内核程序
C
内核程序负责OS启动的前期工作,并加载系统的第一个进程INIT进程
D
系统中第一个进程是INIT进程,该进程根据其配置文件执行相应的启动程序,并进入到相应的启动级别
E
在不同的运行级别中,根据系统的设置启动相应的服务
F
启动过程的最后将运行控制台程序,其实用户输入帐号和密码进行登录
运行级别:是0-6,共7个运行级别
0:关机,建议系统默认的运行级别不要设为0,否则系统不能正常启动
1:单用户模式:只允许root用户对系统进行维护
2:多用户模式:不加载网卡,不能使用NFS
3:完全多用户模式:字符界面的工作模式
4:未分配使用
5:图形界面的多用户模式,运行窗口程序,允许在图形界面下进行操作
6:重启:不要把默认运行级别设置为6
显示和改变运行级别
#runlevel 显示当前和上一个运行级别 “N”为为不存在上一个运行级别
#init 运行级别 改变运行级别
可使用命令:
#init 0 关机
#init 6 重启
查看和设置各运行级别的服务状态(启动是随着系统的启动而运行)
#chkconfig --list 服务名 查看某一个服务的启动状态(直接回车是查看所有服务的启动状态)
#chkconfig
�C
level 运行级别 服务名 on/off 设置某个
独立服务
服务在哪些运行级别下是启动还是关闭
对于受xinetd管理的服务(超级网络服务),不存在某个运行级别启动状态,设置时无需指定运行级别
#chkconfig
�C
list 服务名 查看某个服务的状态
#chkconfig 服务名 on/off 设置某个服务的状态
注意:设置了某个服务的启动后,还需要xinetd服务启动才生效,设置xinetd启动
#service xinetd restart
也可使用命令
#ntsys 回车后,使用空格在出现的窗口中进行服务状态的选择
系统初始化进程:
Linux系统第一个进程是INIT进程,进程号PID永远为1,系统启动会安装其配置文件内容引导其他程序。
INIT
的配置文件是
/etc/inittab,解析此文件:
每一行内容的格式:id:runlevel:action:process。确定某个进程在哪些运行级别下以何种方式来运行
I
d字段:标识一个在inittab文件中唯一的配置记录,由1-4个字符组成
R
unlevel字段:指定该记录在哪些运行级别中运行,可以是单个,也可以是多个级别
A
ction字段:描述记录将执行哪种类型的动作,常见的有initdefault(系统启动默认进入的级别)、sysinit(指定后面的脚本在其他进程之前运行)、wait(init进程将等待wait后程序的运行结束)、ctraaltdel(使用此组合键进行重启操作)powerfail(当UPS发来断电信号时系统运行的命令,此命令指定供电恢复时运行的命令)、respawn(后面的进程结束后会重新运行)
P
rocess字段:是启动进程所执行的命令
系统初始化脚本:
Linux系统中,inittab文件中指定rc.sysinit作为系统的初始化脚本,rc.sysinit保存在/etc/rc.d/下,系统启动时被调用执行,完成系统初始化的工作。
R
c.local脚本同样保存在/etc/rc.d/目录下,在rc.sysinit执行完后执行,系统管理员可以把自定义的命令保存于此
2、
进程类管理命令
什么是进程:程序是保存在存储介质中的可执行机器代码和数据的集合,进程是在计算机处理器(CPU)执行中的计算机程序。两者关系:
A
程序是保存在外存中的可执行代码和数据,是静态保存的数据
B
进程是程序代码在处理器中的运行,是动态执行的代码
C
操作系统执行程序时,将程序代码有外存读取到内存中,驻留在内存中的程序代码作为进程动态的执行
D
对Linux来说是个多进程OS,每个程序启动会创建一个或多个进程,与其他进程共同运行在Linux内核空间,每个进程是一个独立的任务,依据规则被CPU交替执行。每个单独的进程运行在自己的虚拟地址空间,并且只能通过安全的内核管理机制与其他进程交互
进程查看:
使用ps命令:是一个静态查看命令
#ps aux 查看系统中包含系统进程和用户进程在内的所有进程
#ps
�C
ef 可以查看父进程
使用top命令:可以动态显示系统状态和定时刷新,平时使用最对,但是占用系统资源。显示包括CPU、内存占用情况、进程列表和每一个进程的运行状态等,在其界面中可以修改进程优先级,停止某个进程,按照对CPU和内存占用排序等
使用pstree命令:使用树形结构来查看进程
进程控制:手工启动(直接执行一个命令)和调度启动(事先设置,自动启动)
手工启动:
前台运行:直接执行一个命令,可以启动一个或多个进程
后台运行:在执行命令时,在后面添加“&”符号,不占用操作窗口。对于在前台运行的进程,可以使用“CTRL+Z”来调入后台运行。查看后台运行的进程使用命令:#jobs ,也可以使用命令把后台进程调入到前台运行: #fg 后台进程编号
调度启动:使用at命令和crontab命令
at命令指定某个时间一次性在系统中运行
crontab命令可以指定周期性运行的任务计划
#at
�C
t MMDDhhmm 回车后写入要执行的命令,完成后使用Ctrl+D结束命令输入。MMDDhhmm是月份、日期、小时、分钟
#at 时间 今天或者明天执行的计划
#atq 查询还没有执行的at计划任务
#atrm 任务号 删除对应任务号的计划任务
终止命令运行:可使用“CTRL+C”组合键强制当前终端中运行的命令,如果无法正常终止,可使用命令先查看此进程的PID,然后使用命令
#kill -9 PID 强制结束此进程的运行
3、
系统任务的定时运行。crontab命令
软件包组成:vixie-cron软件包,此软件包默认是安装的,使用命令:
#rpm
�C
q vixie-cron 查看软件包安装
还包括软件包“crontabs”软件包,实现对Linux系统的定时任务管理
C
ron服务的启动和停止:cron服务的守护进程是crond
查询crond服务状态
#service crond status
停止和启动crond服务
#service crond stop
#service crond start
#service crond restart
设置其开机运行状态
#chkconfig --list crond
#chkconfig --level 35 crond on
C
ron任务的格式:
运行时间 command(运行的命令)
如:01 08 * * * date
运行时间:分钟(0-59)小时(0-23)天(1-31)月(1-12)周(0-7,0和7代表周日)
设置任务计划(用户自定义任务计划)
所有用户的自定义的任务计划都保存在/var/spool/cron目录中,以用户名起名的目录
查看任务计划:
#crontab
�C
l 查看当前的cron任务列表
编辑任务计划:有两种方法
A
覆盖原有的cron任务,只存在当前设置的任务
#crontab 直接回车,然后输入时间和命令,使用“CTRL+D”结束输入
B
调用vi编辑器对cron任务进行编辑
#crontab
�C
e 调用vi编辑器进行编辑
作为网络管理员可以对其他用户设置任务计划
#crontab
�C
e 用户名
cron任务的删除
#crontab
�C
r 删除用户现有的cron任务
C
ron的相关文件
系统设定的任务计划,保存在“/etc/crontab”中,crond进程每分钟都检查/etc/crontab文件、/etc/cron.d/目录以及/var/spool/cron/目录的改变,发现更改,载入内存运行
解析系统任务配置文件/etc/crontab
SHELL:设置cron使用的shell环境
PATH:执行命令时的搜索路径
MAILTO:发送邮件给用户
HOME:执行命令时使用的主目录
其中有每小时、每天、每周、每月的任务,分别保存在:/etc/目录中,文件名是cron.hourly、cron.daily、cron.weekly、cron.monthly
帮助文件,可查看vixie-cron软件包的文件列表中的帮助信息
4、
日志管理
功能:记录Linux系统中的消息的文件,不同的日志文件记录不同的内容
日志文件存放位置:都放在/var/log/目录中,对于大型的服务程序可以在/var/log/下建立子目录来存放自己的日志文件
分类:两大类
A
应用程序独立管理的日志文件,只管理自己的日志文件,格式不统一和固定
B
受syslogd统一管理的日志文件,有相同的格式。此服务的配置文件是/etc/syslog.conf,都是系统中重要的日志文件
日志文件分析:
日志文件是纯文本文件,每一行一个消息,使用more或less命令查看,使用grep命令过滤查找
每一行有4个字段组成
A
时间标签:消息发出的日期和时间
B
主机名:生成消息的计算机名
C
生成消息的子系统的名称
D
消息:消息的内容
5、
存储与备份管理
磁盘配额
在L
i
nux中,即可以针对用户做配额,也可以针对组设置配额;还可以从用户占用磁盘空间大小和拥有的文件数量来进行,系统根据文件的属主和属组来判断。使用软件包是quota,可使用命令#rpm
�C
q quota查询
软限制和硬限制:
软限制:用户在文件系统中可拥有的最大吸盘空间和最多文件数量,在某个宽限其内可以暂时超过这个限制
硬限制:用户拥有的磁盘空间和文件数量,绝对不允许超过这个限制
用户限制和组限制
用户限制:对指定用户的磁盘空间限制和文件数量限制,只对该用户生效
组限制:指定用户组的磁盘空间限制和文件数量限制,配额对组中的所有用户生效
设置配额的步骤:
A
修改“/etc/fatab
”
文件
针对要设置配额的分区添加用户限制和组限制的选项:usrquota和grpquota
B
重新挂载文件系统
可以使用命令:#mount
�C
o remount 分区
也可以重新启动生效
C
创建配额文件
使用命令:
#quotacheck
�C
cmug 分区
或者#quotacheck
�C
cmugf 分区 强制检查分区和创建文件
选项中的“u”是针对用户生成文件,“g”是针对组生成文件,不一定两者都设定,根据需要选择,“m”是重新挂载文件系统,“c”创建配额文件
D
启用配额
#quotaon 分区
E
设置配额
针对用户
#edquota
�C
u 用户名 -u可省略
针对组
#edquota
�C
g组名
对用户进行文件数量的限制不实用
查看配额
#quota
�C
u 用户名
#quota
�C
g 组名
#repquota 分区 显示此分区针对每个用户的配额设置
文件的归档和备份
T
ar命令介绍
A
文件和目录进行归档
#tar cf 生成的tar文件名 需要备份的文件或目录名
c是创建文件,f后指定文件名。为明确文件类型,归档文件以.tar为后缀
对文件和目录进行压缩备份
#tar czf 生成的tar.gz文件名 需要备份的文件或目录名
z是对归档文件进行压缩
B查看归档中的文件列表
查看tar归档文件中的文件或目录列表
#tar tf tar文件名
t是查看归档文件中的文件列表
查看压缩归档文件中的文件或目录列表
#tar tzf tar.gz文件名
C
使用tar命令恢复归档文件
恢复tar备份文件
#tar xf tar文件名
x是表示释放归档文件
恢复压缩的tar备份文件
#tar xzf tar.gz文件名
恢复归档文件到指定目录
#tar xf tar文件名 -C 目录名
#tar zxf tar.gz文件名 -C 目录名