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 第十六天的更多相关文章
- 孤荷凌寒自学python第四十六天开始建构自己用起来更顺手一点的Python模块与类尝试第一天
孤荷凌寒自学python第四十六天开始建构自己用起来更顺手一点的Python模块与类,尝试第一天 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 按上一天的规划,这是根据过去我自学其它编程语 ...
- javaSE第二十六天
第二十六天 414 1:网络编程(理解) 414 (1)网络编程:用Java语言实现计算机间数据的信息传递和资源共享 414 (2)网络编程模型 414 (3)网络编程的三要素 ...
- javaSE第十六天
第十六天 140 1:List的子类(掌握) 140 (1)List的子类特点 140 (2)ArrayList 141 A:没有特有功能需要学习 141 B:案例 ...
- 第三百五十六天 how can I 坚持
一年了,三百五十六天.写个算法算下对不对. 今天突然想买辆自行车了.云马智行车,还是捷安特,好想买一辆. 网好卡.貌似少记了一天呢,357了.好快. 睡觉了,还没锻炼呢,太晚了. 1458748800 ...
- IT第二十六天 - Swing、上周总结
IT第二十六天 上午 Swing 1.对于方法的参数如果是int数值类型,应该直接调用该类中的常量属性,而不应该直接填入数字 2.Toolkit类中定义的方法是可以直接访问本地计算机(操作系统)信息的 ...
- Python第二十六天 python装饰器
Python第二十六天 python装饰器 装饰器Python 2.4 开始提供了装饰器( decorator ),装饰器作为修改函数的一种便捷方式,为工程师编写程序提供了便利性和灵活性装饰器本质上就 ...
- OCM_第十六天课程:Section7 —》GI 及 ASM 安装配置 _安装 GRID 软件/创建和管理 ASM 磁盘组/创建和管理 ASM 实例
注:本文为原著(其内容来自 腾科教育培训课堂).阅读本文注意事项如下: 1:所有文章的转载请标注本文出处. 2:本文非本人不得用于商业用途.违者将承当相应法律责任. 3:该系列文章目录列表: 一:&l ...
- 孤荷凌寒自学python第八十六天对selenium模块进行较详细的了解
孤荷凌寒自学python第八十六天对selenium模块进行较详细的了解 (今天由于文中所阐述的原因没有进行屏幕录屏,见谅) 为了能够使用selenium模块进行真正的操作,今天主要大范围搜索资料进行 ...
- 孤荷凌寒自学python第七十六天开始写Python的第一个爬虫6
孤荷凌寒自学python第七十六天开始写Python的第一个爬虫6 (完整学习过程屏幕记录视频地址在文末) 今天在上一天的基础上继续完成对我的第一个代码程序的书写. 不过由于对python-docx模 ...
随机推荐
- lnmp环境部署脚本-y
系统环境:centos6.X #!/bin/bash#date:2018-01-01## MySQL 安装8版本的话不太适合,有待于添加安装脚本进行测试#新版的MySQL安装需要高版本2.8以上cma ...
- 使用 Spring Data 进行 MongoDB 4.0 事务处理
使用 Spring Data 进行 MongoDB 4.0 事务处理 原文链接:http://spring.io/blog/2018/06/28/hands-on-mongodb-4-0-transa ...
- js判断访问浏览器是安卓还是ios还是微信浏览器还是微博
var u = navigator.userAgent, app = navigator.appVersion; var isAndroid = u.indexOf('Android') > - ...
- Redis主从集群及哨兵模式
本次实验环境准备用一台服务器模拟3台redis服务器,1主2从 主从集群搭建 第一步:安装Redis 安装Redis,参考前面安装Redis文章,保证单机使用没有问题. 第二步:配置服务器文件 定位到 ...
- 我的第一篇java笔记
什么是程序 程序通常指完成某些事物的一种既定方式和过程. 在日常生活中,可以把程序看成一系列动作的执行过程和描述. Java介绍 Java是Sun Microystems于1995年推出的高级编程语言 ...
- CentOS7 yum安装配置 drbd-84-utils (外部模式)
1 安装环境介绍 1.1 系统环境 内核:3.10.0-862.el7.x86_64 版本:CentOS Linux release 7.5.1804 (Core) 主服务器:hostname = ...
- ucore-lab1-练习6report
练习6--完善中断初始化和处理 1. 中断向量表中一个表项占多少个字节?其中哪几位代表中断处理代码的入口? 答:系统将所有的中断事件统一进行编号(0-255),这个编号称为中断向量.中断向量表的一个 ...
- win10操作系统上,wireshark抓取https。
今天试了下使用wireshark抓https的包 一.记录如下: 配置一个环境变量SSLKEYLOGFILE为D:\Temp\sslog.log(这个文件需要自己去创建). 去下载一个chrome浏览 ...
- CentOS7升级默认内核
安装内核升级镜像源 rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm Yum安装内核 yum --e ...
- 分布式之redis
正文 1.为什么使用redis 分析:博主觉得在项目中使用redis,主要是从两个角度去考虑:性能和并发.当然,redis还具备可以做分布式锁等其他功能,但是如果只是为了分布式锁这些其他功能,完全还有 ...