Linux 第十六天
Posted kuexun
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 第十六天相关的知识,希望对你有一定的参考价值。
十六、服务管理
1、服务分类
1)RPM包默认安装的服务:包括独立的服务、基于xinetd的服务
2)源码包安装的服务
3)RPM安装服务和源码包安装服务的区别就是安装位置的不同
>源码包安装在指定位置,一般是/usr/local/
>RPM包安装在默认位置中
2、查询已安装的服务
1)对于RPM包安装的服务: chkconfig –list 查看所有RPM包安装的服务自启动状态
2)源码包安装的服务:查看服务安装位置,一般是/usr/local/下
3、RPM服务默认安装配置文件路径
◆/etc/init.d/:启动脚本位置
◆/etc/sysconfig/:初始化环境配置文件位置
◆/etc/:配置文件位置
◆/etc/xinetd.conf:xinetd配置文件
◆/etc/xinetd.d/:基于xinetd服务的启动脚本
◆/var/lib/:服务产生的数据放在这里
◆/var/log/:日志
◆应用的独特文件自定义位置
4、独立服务管理
1)启动
◆/etc/init.d/独立服务名 start || stop || status || restart
◆service 独立服务名start || stop || restart || status (red hat)
2)自启动
◆chkconfig [--level 运行级别] [独立服务名] [on || off]
◆修改/etc/rc.d/rc.local文件,添加服务启动命令,将在用户登录前执行这个文件里的命令
◆使用ntsysv命令管理自启动 (red hat)
5、基本xinetd服务的管理
1)安装 yum-y install xinetd
2)启动
修改 /etc/xinetd.d/服务配置文件里的disable为no
service xinetd restart
3)自启动(自启动同时将启动该服务)
◆chkconfig [--level 运行级别] [基于xinetd服务名] [on || off]
◆使用ntsysv命令管理自启动 (red hat)
6、源码包安装服务
1)启动
绝对路径 start || stop
2)自启动
修改/etc/rc.d/rc.local文件,添加服务启动命令,将在用户登录前执行这个文件里的命令
3)让源码包服务被服务管理命令识别
◆sercice
在/etc/init.d/中新建一个到启动服务的绝对路径的软链接
◆chkconfig 和ntsysv
i 修改/etc/init.d/启动服务,新增
# chkconfig:运行级别 启动顺序 关闭顺序 (顺序可参考/etc/rc.d/rc3.d/,顺序不可重复,如 #chkconfig:35 86 76)
#description:content (描述内容随意)
ii chkconfig –add 服务名
十七、系统管理
1、进程管理
进程是正在执行的一个程序或命令
2、进程管理的作用
1)判断服务器健康状态
top[选项]
选项:
-d 秒数:指定top命令每隔几秒更新。默认是3秒
在top命令的交互模式当中可以执行的命令:
? 或 h:显示交互模式的帮助
P:以CPU使用率排序,默认就是此项
M:以内存的使用率排序
N:以PID排序
q:退出top
2)查看系统中所有进程
ps aux #查看系统中所有进程,使用BSD操作系统格式
ps-le #查看系统中所有进程,使用Linux标准命令格式。
◆USER:该进程是由哪个用户产生的;
◆PID:进程的ID号;
◆%CPU:该进程占用CPU资源的百分比,占用越高,进程越耗费资源;
◆%MEM:该进程占用物理内存的百分比,占用越高,进程越耗费资源;
◆VSZ:该进程占用虚拟内存的大小,单位KB;
◆RSS:该进程占用实际物理内存的大小,单位KB;
◆TTY:该进程是在哪个终端中运行的。其中ty1-tty7代表本地控制台终端,ty1-tty6是本地的字符界面终端,tty7是图形终端。pts/0-256代表虚拟终端。
◆STAT:进程状态。常见的状态有:R:运行、S:睡眠、T:停止状态、s:包含子进程、+:位于后台
◆START:该进程的启动时间
◆TIME:该进程占用CPU的运算时间,注意不是系统时间
◆COMMAND:产生此进程的命令名
3)杀死进程
◆kill命令
kill -l #查看可用的进程信号
kill -信号 pid 对进程进行信号对应的处理
◆killall 命令
killall [选项] [信号] 进程名 #按照进程名杀死进程
选项:
-i:交互式,询问是否要杀死某个进程
-I:忽略进程名的大小写
◆pkill命令
pkill [选项] [信号] 进程名 按照进程名终止进程 如 pkill -9 -t tty1
选项:
-t 终端号:按照终端号踢出用户
2、工作管理
1)把进程放入后台
◆tar -zcf etc.tar.gz /etc & 放在后台运行
◆在命令执行的过程中,按下ctrl+z快捷键 放在后台暂停
2)查看后台的工作
jobs [-l]
选项:
-l:显示工作的PID
注:”+”号代表最近一个放入后台的工作,也是工作恢复时,默认恢复的工作。“-”号代表倒数第二个放入后台的工作
3)将后台暂停的工作恢复到前台执行
fg %工作号
%工作号:%号可以省略,但是注意工作号和PID的区别
4)把后台暂停的工作恢复到后台执行
bg %工作号
后台恢复执行的命令,是不能和前台有交互的,否则不能恢复到后台执行
3、系统资源命令
1)vmstat命令监控系统资源
vmstat [刷新延时] [刷新次数]
2)dmesg开机时内核检测信息
dmesg 可配合管道符使用
3)free命令查看内存使用状态
free [选项]
选项:
-b:以字节为单位显示
-k:以KB为单位显示,默认就是以KB为单位显示
-m:以MB为单位显示
-g:以GB为单位显示
4)查看CPU信息
cat /proc/cpuinfo //每次开机都会重新检测写入
5)uptime命令
显示系统的启动时间和平均负载,也就是top命令的第一行。w命令也可以看到这个数据。
6)查看系统与内核相关信息
uname [选项]
选项:
-a:查看系统所有相关信息;
-I:查看内核版本;
-s:查看内核名称。
7)file /bin/ls 判断当前系统的位数
8)lsb_release -a 查询当前Linux系统的发行版本
9)列出进程打开或使用的文件信息
1sof [选项]
选项:
-c字符串:只列出以字符串开头的进程打开的文件
-u用户名:只列出某个用户的进程打开的文件
-p pid:列出某个PID进程打开的文件
4、定时任务
1)crond服务管理与访问控制
开启:service crond restart
自启动:chkconfig crond on
2)用户的crontab设置
crontab [选项]
选项:
-e:编辑crontab定时任务
-l:查询crontab任务
-r:删除当前用户所有的crontab任务
3)定时格式
举例如下:
十八、日志管理
1、rsyslogd服务的新特点:
基于TCP网络协议传输日志信息;
更安全的网络传输方式;
有日志消息的及时分析框架;
后台数据库;
配置文件中可以写简单的逻辑判断;
与syslog配置文件相兼容。
2、常见日志的作用
日志文件 |
说明 |
/var/log/cron |
记录了系统定时任务相关的日志。 |
/var/log/cups/ |
记录打印信息的日志 |
/var/1og/dmesg |
记录了系统在开机时内核自检的信息。也可以使用dmesg令直接查着内核自检信息。 |
/var/1og/btmp
|
记录错误登录的日志。这个文件是二进制文件,不能直接vi查看,而要使用lastb命令查看 |
/var/1og/lastlog |
记录系统中所有用户最后一次的登录时间的日志。这个文件也是二进制文件,不能直接vi,而要使用lastlog命令查看。 |
/var/1og/mailog |
记录邮件信息。 |
/var/log/message |
记录系统重要信息的日志这个日志文件中会记录Linux系统的绝大多数重要信息,如果系统出现问题时,首先要检查的就应该是这个日志文件。 |
/var/log/secure |
记录验证和授权方面的信息,只要涉及账户和密码的程序都会记录。比如说系统的登录,ssh的登录,su切换用户,sudo授权,甚至添加用户和修改用户密码都会记录在这个日志文件中。 |
/var/log/wtmp |
永久记录所有用户的登录、注销信息,同时记录系统的启动、重启、关机事件。同样这个文件也是一个二进制文件,不能直接vi,而需要使用last命令来查看。 |
/var/run/utmp |
记录当前已经登录的用户的信息。这个文件会随着用户的登录和注销而不断变化,只记录当前登录用户的信息。同样这个文件不能直接vi,而要使用w,who,users等命令来查询。 |
3、非系统默认日志
采用RPM方式安装的系统服务也会默认把日志记录在/var/log/目录中(源码包安装的服务日志是在源码包指定目录中)。不过这些日志不是由rsyslogd服务来记录和管理的,而是各个服务使用自己的日志管理文档来记录自身日志。
4、日志文件格式
·基本日志格式包含以下四列:
事件产生的时间 发生事件的服务器的主机名 产生事件的服务名或程序名 事件的具体信息
5、/etc/rsyslog.conf配置文件
格式: 服务名称[连接符]日志等级 日志记录位置
1)服务名称
2)连接符号
“*”代表所有日志等级,比如:“authpriv.*”代表authpriv认证信息服务产生的日志,所有的日志等级都记录
“.”代表只要比后面的等级高的(包含该等级)日志都记录下来。比如:“cron.info”代表cron服务产生的日志,只要日志等级大于等于info级别,就记录
“=”代表只记录所需等级的日志,其他等级的都不记录。比如:“*=emerg”代表人和日志服务产生的日志,只要等级是emerg等级就记录。这种用法及少见,了解就好
“!”代表不等于,也就是除了该等级的日志外,其他等级的日志都记录。
3)日志等级
4)日志记录位置
◆日志文件的绝对路径,如“/var/log/secure”
◆系统设备文件,如“/dev/lp0”
◆转发给远程主机,如“@192.168.0.210:514”
◆用户名,如“root”或”*“
◆忽略或丢弃日志,如“~”
6、日志轮替
1)将其他程序日志加入日志轮替配置文件:/etc/logrotate.conf
/绝对路径/logs/log{
参数…
}
2)logrotate命令
logrotate [选项] 配置文件名
选项:
如果此命令没有选项,则会按照配置文件中的条件进行日志轮替
-v:显示日志轮替过程。加了-v选项,会显示日志的轮替的过程
-f:强制进行日志轮替。不管日志轮替的条件是否已经符合,强制配置文件中所有的日志进行轮替
十九、启动管理
1、运行级别
1)运行级别及含义
2)runlevel 查看运行级别命令
3)init 运行级别 改变运行级别命令
4)修改/etc/inittab来修改系统默认运行级别
2、启动过程
1)系统启动过程
2)initramfs内存文件系统
可以通过启动引导程序加载到内存中,然后加载启动过程中所需要的内核模块,比如USB、SATA、SCSI硬盘的驱动和LVM、RAID文件系统的驱动
3、启动引导程序grub
1)grub中分区表示
2)grub配置文件/boot/grub.conf
default=0默认启动第一个系统
timeout-5等待时间,默认是5秒
splashimage=(hd0,0)/grub/splash.xpm.gz指定grub启动时的背景图像文件的保存位置
hiddenmenu隐藏菜单
title CentOS (2.6.32-279.el6.i686) 标题
root(hd0,0) 是指启动程序的保存分区
kernel /vmlinuz-2… 定义内核加载时的选项
initrd /initramfs-2.6.32-279.e16.i686.img 指定initramfs内存文件系统镜像文件的所在位置
二十、备份与恢复
1、Linux系统需要备份的数据
◆/root/目录:
◆/home/目录:
◆/var/spool/mail/目录:
◆/etc/目录:
◆其他目录(如RPM包或源码包安装的服务的数据)
2、备份策略
◆完全备份:完全备份就是指把所有需要备份的数据全部备份,当然完全备份可以备份整块硬盘,整个分区或某个具体的目录
◆增量备份指的是在第一次完全备份或最后一次备份的基础上,只对新添加或改变过的数据进行备份。至上一次备份以来,增量备份不会备份那些没有发生改变的数据。
◆只以完全备份为基础,对新添加或改变过的数据进行备份。
3、常用备份命令dump
dump [选项] 备份之后的文件名 原文件或目录
选项:
-level:就是我们说的0-9十个备份级别,0为完全备份,目录不支持增量备份
-f文件名:指定备份之后的文件名
-u:备份成功之后,把备份时间记录在/etc/dumpdates文件
-v:显示备份过程中更多的输出信息
-j:调用bzlib库压缩备份文件,其实就是把备份文件压缩为.bz2格式
-W:显示允许被dump的分区的备份等级及备份时间
例如:
备份分区:dump -1uj -f /root/boot.bak.bz2 /boot/ 增量备份boot分区
备份目录或文件:dump -0j -f /root/etc.dump.bz2 /etc 完全备份etc/目录
4、恢复备份命令restore
restore [模式选项] [选项]
模式选项:restore命令常用的模式有以下四种,这四个模式不能混用。
-C:比较备份数据和实际数据的变化
-i:进入交互模式,手工选择需要恢复的文件。
-t:查看模式,用于查看备份文件中拥有哪些数据。
-r:还原模式,用于数据还原。
选项:
-f:指定备份文件的文件名
以上是关于Linux 第十六天的主要内容,如果未能解决你的问题,请参考以下文章