十六、服务管理

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 第十六天的更多相关文章

  1. 孤荷凌寒自学python第四十六天开始建构自己用起来更顺手一点的Python模块与类尝试第一天

     孤荷凌寒自学python第四十六天开始建构自己用起来更顺手一点的Python模块与类,尝试第一天 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 按上一天的规划,这是根据过去我自学其它编程语 ...

  2. javaSE第二十六天

    第二十六天    414 1:网络编程(理解)    414 (1)网络编程:用Java语言实现计算机间数据的信息传递和资源共享    414 (2)网络编程模型    414 (3)网络编程的三要素 ...

  3. javaSE第十六天

    第十六天    140 1:List的子类(掌握)    140 (1)List的子类特点    140 (2)ArrayList    141 A:没有特有功能需要学习    141 B:案例    ...

  4. 第三百五十六天 how can I 坚持

    一年了,三百五十六天.写个算法算下对不对. 今天突然想买辆自行车了.云马智行车,还是捷安特,好想买一辆. 网好卡.貌似少记了一天呢,357了.好快. 睡觉了,还没锻炼呢,太晚了. 1458748800 ...

  5. IT第二十六天 - Swing、上周总结

    IT第二十六天 上午 Swing 1.对于方法的参数如果是int数值类型,应该直接调用该类中的常量属性,而不应该直接填入数字 2.Toolkit类中定义的方法是可以直接访问本地计算机(操作系统)信息的 ...

  6. Python第二十六天 python装饰器

    Python第二十六天 python装饰器 装饰器Python 2.4 开始提供了装饰器( decorator ),装饰器作为修改函数的一种便捷方式,为工程师编写程序提供了便利性和灵活性装饰器本质上就 ...

  7. OCM_第十六天课程:Section7 —》GI 及 ASM 安装配置 _安装 GRID 软件/创建和管理 ASM 磁盘组/创建和管理 ASM 实例

    注:本文为原著(其内容来自 腾科教育培训课堂).阅读本文注意事项如下: 1:所有文章的转载请标注本文出处. 2:本文非本人不得用于商业用途.违者将承当相应法律责任. 3:该系列文章目录列表: 一:&l ...

  8. 孤荷凌寒自学python第八十六天对selenium模块进行较详细的了解

    孤荷凌寒自学python第八十六天对selenium模块进行较详细的了解 (今天由于文中所阐述的原因没有进行屏幕录屏,见谅) 为了能够使用selenium模块进行真正的操作,今天主要大范围搜索资料进行 ...

  9. 孤荷凌寒自学python第七十六天开始写Python的第一个爬虫6

    孤荷凌寒自学python第七十六天开始写Python的第一个爬虫6 (完整学习过程屏幕记录视频地址在文末) 今天在上一天的基础上继续完成对我的第一个代码程序的书写. 不过由于对python-docx模 ...

随机推荐

  1. lnmp环境部署脚本-y

    系统环境:centos6.X #!/bin/bash#date:2018-01-01## MySQL 安装8版本的话不太适合,有待于添加安装脚本进行测试#新版的MySQL安装需要高版本2.8以上cma ...

  2. 使用 Spring Data 进行 MongoDB 4.0 事务处理

    使用 Spring Data 进行 MongoDB 4.0 事务处理 原文链接:http://spring.io/blog/2018/06/28/hands-on-mongodb-4-0-transa ...

  3. js判断访问浏览器是安卓还是ios还是微信浏览器还是微博

    var u = navigator.userAgent, app = navigator.appVersion; var isAndroid = u.indexOf('Android') > - ...

  4. Redis主从集群及哨兵模式

    本次实验环境准备用一台服务器模拟3台redis服务器,1主2从 主从集群搭建 第一步:安装Redis 安装Redis,参考前面安装Redis文章,保证单机使用没有问题. 第二步:配置服务器文件 定位到 ...

  5. 我的第一篇java笔记

    什么是程序 程序通常指完成某些事物的一种既定方式和过程. 在日常生活中,可以把程序看成一系列动作的执行过程和描述. Java介绍 Java是Sun Microystems于1995年推出的高级编程语言 ...

  6. CentOS7 yum安装配置 drbd-84-utils (外部模式)

    1 安装环境介绍 1.1 系统环境 内核:3.10.0-862.el7.x86_64  版本:CentOS Linux release 7.5.1804 (Core) 主服务器:hostname = ...

  7. ucore-lab1-练习6report

    练习6--完善中断初始化和处理 1.  中断向量表中一个表项占多少个字节?其中哪几位代表中断处理代码的入口? 答:系统将所有的中断事件统一进行编号(0-255),这个编号称为中断向量.中断向量表的一个 ...

  8. win10操作系统上,wireshark抓取https。

    今天试了下使用wireshark抓https的包 一.记录如下: 配置一个环境变量SSLKEYLOGFILE为D:\Temp\sslog.log(这个文件需要自己去创建). 去下载一个chrome浏览 ...

  9. CentOS7升级默认内核

    安装内核升级镜像源 rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm Yum安装内核 yum --e ...

  10. 分布式之redis

    正文 1.为什么使用redis 分析:博主觉得在项目中使用redis,主要是从两个角度去考虑:性能和并发.当然,redis还具备可以做分布式锁等其他功能,但是如果只是为了分布式锁这些其他功能,完全还有 ...