linux学习笔记-日常运维

系统日常运维管理查看系统负载命令: w  
重点是 load average后面的三个数字。  1,表示1分钟之内的系统的平均负载。
                                                        2,表示5分钟之内的系统的平均负载。
                                                        3,表示15分钟之内的系统平均负载。
这个数字的意思是:单位时间内CPU活动进程数。 数字越大表示负载越高。  (不超过CPU的核心数)
查看cpu的核数:cat /proc/cpuinfo   


vmstat 命令。
procs 显示进程信息。  r表示运行和等待CPU时间片的进程数。长时间大于cpu个数说明cpu不够用。
                                 b表示等待资源的进程数。例如:I/O。内存等。长时间大于1需要关注。
free 表示空闲内存信息。物理内存。
buff  表示将写入内存的缓冲大小。
cache 表示从磁盘中读取的 缓存大小。


si 由交换分区写入内存
so 由内存写入交换分区


bi 读磁盘的数据量
bo  写磁盘的数据量。


us 表示用户花费CPU的时间比。
sy 表示系统花费cpu的时间比。
id 表示CPU空闲的时间比。
wa  表示I/O等待所占用的时间比。
需要关注的是 r b wa 列。 bi bo   数值高说明磁盘读写压力大。si so  数值高 且不短变化 说明内存不够用。
vmstat 用法:  vmstat 1   表示每隔一秒 刷新一次。
                     vmstat  2  表示每隔二秒  刷新一次。
                     vmstat 1 10 表示每隔1秒刷新一次。 显示10次。


top 命令
每隔3秒刷新一次。q键退出。
RES表示进程所占用内存的大小。  %MEM为使用内存的百分比。
默认是按CPU使用率排列。按M 可以按内存排列 。 p按cpu使用率排列。
top -bn1 表示非动态一次性打印系统的使用情况。


sar 命令。监控网卡状态。
查看网卡流量  sar -n DEV   
sar -n DEV -f /var/log/sa/sa01   用-f 后面带文件名 可以查看某一天的流量
sar -b 查看磁盘io的状态
sar -p 查看cpu使用状态。


free 查看内存信息。
用法: free -m -g -k


ps 查看进程。
ps aux  查看系统进程。
STAT: 表示进程的状态。
D表示不能中断。通常为IO
R表示在运行
S已经中断的进程
s表示主进程
+表示前台运行的进程。


netstat 端口查看。
netstat -lnp 打印当前启动的端口
netstat -an 打印当前的网络连接状况 显示数字端口


tcpdump 系统自带抓包工具
tcpdump -nn -i eth0 tcp and host 192.168.0.1 and port 80
-nn 数字形式显示。
-i 指定网卡
tcp 协议类型 udp
host 来源IP
prot 端口
tcpdump -nn -vs0 tcp and port not 22 -c 100 -w 1.cap 
-c 抓包的次数
-w 保存为文件
wireshark 在linux下也可以安装 yum install -y wireshark

抓包分析http请求:tshark -n -t a -R http.request -T fields -e "frame.time" -e "ip.src" -e "http.host" -e "http.request.method" -e "http.request.uri"
固定用法。


iptables 命令
有三个表。
filter:一般的过滤功能...工作中常用
nat:用于nat功能(端口映射,地址映射,中转IP等)
mangle:用于对特定数据包的修改


iptables -t filter -I INPUT -p tcp --dport 80 -s 12.12.12.12 -j REJECT


-t 指定哪个表 常用 filter
-I 插入一条规则 在最上面增加 -A 增加一条规则 在下面增加 -D 删除规则。 优先级从上到下
-p 制定类型 tcp
--dport 指定端口 80
-s 来源IP地址
-j 指定动作。 REJECT 拒绝  DROP 直接扔掉       ACCEPT  允许


iptables -nvL 查看规则。 默认是查看filter表
iptables -Z清除iptables -nvL 看到的前两列数据
iptables -F 清空规则
service iptables seve 保存规则。重启生效


linux系统的任务计划
* * * * *  分时日月周 。周日表示0或者7
0 */4 ***  每隔4个小时
0 1,3,6 ***  1 3 6小时
0 9-18 * * *  9-18点
crontab -e 直接进去制定计划。相当于vim
crontab -l 列出任务计划
crontab -r 删除计划


系统服务管理。
ntsysv 命令。相当于setup工具里面的。
yum install -y ntsysv


chkconfig 服务工具。
chkconfig --list   列出所有的服务及每个级别的开启状态。
chkconfig --level 345 crond /on   表示crond 345级别 开、关
--level 指定级别。
chkconfig --add 增加某个服务
chkconfig --del 删除某个服务
系统预设的服务都在/etc/init.d 目录里面


rsync 远程备份工具
yum install -y rsync



rsync -av 1.txt /tmp/    把1.txt 同步到/tmp/目录下
rsync -av 1.txt  [email protected]:/tmp/     把1.txt 同步到1.1.1.1 服务器的/tmp/目录下
rsync -av [email protected]. 1:/tmp/  /tmp/   把远程的拉到本地
选项
-a 归档模式
-v 打印一些信息
-l 保留软链接
--delete 会删除新目标比原目标新的文件   
--exclude 可以排除不需要传输的文件。

用密钥的方式访问。不建立密钥密码 实现数据备份。
命令。ssh-keygen 能建立私钥和公钥
        私钥位置:/root/.ssh/id_rsa       公钥:/root/.ssh/id_rsa.pub 


rsync 后台备份。
A机器新建rsync配置文件。vim /etc/rsync.conf

#port=873                           #定义了端口
log file=/var/log/rsync.log                       #日志文件
pid file=/var/run/rsyncd.pid                        # 指定PID文件。涉及服务启动 停止动作。


[ beifen ]                                            自定义模块名字。 两边要有空格
path=/zyos/                         #数据存放路径
use chroot=false                 # 默认是true   有软链接 false   指的是除了path目录 是否还可以访问其他目录。 
max connections=4                 #最大连接数 。默认是0 无限制
read only=no                读写权限
list=true              用户查询服务器模块时 是否显示。true显示 false 不显示
uid=root               传输文件时 以哪个身份传输。 文件所有者  所属组
gid=root
auth users=test                         指定传输的用户。
secrets file=/etc/rsyncd.passwd           账户 密码存放位置。
host allow=192.168.137.3             被允许连接的主机。可以是iPhone段。多个IP 逗号隔开。



secrets file 权限一定是要600.否则不能同步。
rsync --deamon --config=/etc/rsyncd.conf    启动服务。  开机启动 把命令写入 /etc/rc.local


rsync -avL --delete [email protected]::beifen /tmp/ --password-file=/root/pass    服务器拉到本地。


rsync -avL --delete /root/test/ [email protected]::beifen/test --password-file=/root/pass   本地推到服务器 beifen模块下

模块同步 是双冒号 ::
--password-file 指定密码文件的路径。   客户端使用。  这样免去输密码步骤,可用在脚本。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章