Linux命令小结:crontab/netstat/iostat/sar
crontab
cron可以设定在指定的时间运行任务。
1、查看定时任务
[root@client1 ~]# crontab -l -u root
*/1 * * * * date >> /root/1.txt
[root@client1 ~]# cat /var/spool/cron/root
*/1 * * * * date >> /root/1.txt
查看root用户的定时任务。上面的例子中只有一个定时任务,它每隔1分钟时间将当时的时间追加到/root/1.txt文件。实际上,定时任务被写入到/var/spool/cron/目录中。
2、编辑定时任务
crontab -e
编辑定时任务。
[root@client1 ~]# cat /etc/crontab
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
定时任务的设置格式如上所示,它包含执行命令的时间以及命令的内容两部分内容。命令执行时间分成分、时、天、月以及星期5个部分。实际上,cron进程除了从var/spool/cron目录中读取定时任务外,还从/etc/crontab中读取。后者是针对系统的定时任务,因此命令执行时间和命令内容外还多了项用户。
3、cron进程
[root@client1 ~]# /etc/init.d/crond restart
Stopping crond: [ OK ]
Starting crond: [ OK ]
修改定时任务后,可以不重启cron进程。
iostat
用于打印块设备、分区以及NFS的IO的统计信息。此外,还会打印CPU的统计信息。
1、用法
[root@client1 ~]# iostat -d /dev/sda1
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda1 0.02 0.69 0.00 21232 32
[root@client1 ~]# iostat -d /dev/sda1 -k
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda1 0.02 0.34 0.00 10616 16
[root@client1 ~]# iostat -d -x /dev/sda1 10 2
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
sda1 0.01 0.00 0.02 0.00 0.77 0.00 32.41 0.00 0.68 0.52 0.00
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
sda1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
例子打印了2次/dev/sda1块设备的IO统计信息,每次间隔为10秒钟。命令参数-d代表值输出设备的IO信息不打印CPU的统计信息;-x代表打印扩展信息; -k代表以kB_read的格式输出。
2、输出说明
一般信息(读写数据量)
tps: 每秒发送到设备的transfer数目,transfer由多个逻辑的请求合并而成,它的大小是不确定的。
Blk_read/s: 每秒从设备中读取的数据的大小,以块为单位。块大小和文件系统有关,一般为4K字节。
Blk_write/s: 每秒写入到设备的数据量,以块为单位。
Blk_read: 从设备读取的Block数目;注意这不是每秒的平均值,而是整个测试过程。
Blk_wrtn: 写入到设备的Block数目;
扩展信息(IO请求)
rrqm/s: r(read)rq(request)m(merge) 每秒合并的读请求数目;
wrqm/s: w(write)rq(request)m(merge) 每秒合并的写请求数目;
r/s: r(read) 每秒发送到设备的读请求数目;
w/s: w(write) 每秒发送到设备的写请求数目;
rsec/s: r(read)sec(sector) 每秒读扇区的数目;
wsec/s: w(write)sec(sector) 每秒写扇区的数目;
avgrq_sz: avg(average)rq(request)-sz(size) 发送到扇区的请求的平均大小;
avgqu_sz: avg(average)qu(queue)-sz(size) 请求队列的平均大小;
await: 发送到设备的IO的平均时间,包括请求在队列中的等待时间和请求处理时间两部分。时间单位是毫秒(millisecond)
util: IO请求发送到设备占用的CPU时间。当这个值接近100%时,说明设备接近饱和。
netstat
打印网络链接、路由表、接口统计等信息。
1、连接的协议类型
-t:TCP连接
-u: UDP连接
2、连接状态
-l: 只打印监听状态的连接;
-a: 显示所有状态的连接,默认不打印监听状态的连接。
shanno@taurus-p245 ~ $ netstat -tnp ## 默认不打印监听端口
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 192.168.1.104:44531 203.208.41.153:80 ESTABLISHED 13765/firefox
shanno@taurus-p245 ~ $ netstat -tnpl ## 只打印监听端口
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN -
shanno@taurus-p245 ~ $ netstat -tnpa ## 全打印,包括监听端口
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN -
tcp 0 0 192.168.1.104:44531 203.208.41.153:80 ESTABLISHED 13765/firefox
3、其它
-p: 进程
-c: 每隔1秒钟持续输出连接状态
-n: 以点分四段(例如192.168.0.1)的格式打印IP地址
4、用法
a. 通过端口号查询进程号;
b. 查询进程的端口号。
sar
打印系统的活动信息,用于监视网络流量、磁盘IO等。
1、安装
sudo apt-get install sysstat
2、命令格式
sar [options] [interval [count]]
interval代表采样间隔,count代表采样次数。
3、监视网络流量
shanno@taurus-p245 ~ $ sar -n DEV 3
00时08分52秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil
00时08分55秒 eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
00时08分55秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
00时08分55秒 wlan0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
00时08分55秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil
00时08分58秒 eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
00时08分58秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
00时08分58秒 wlan0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil
Average: eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: wlan0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
例子中-n代表network,它后面可以跟DEV,代表网络设备。
错误信息
root@cvknode20221:~# date
Tue Sep 2 11:38:26 CST 2014
root@cvknode20221:~# sar -n DEV
Invalid system activity file: /var/log/sysstat/sa02
解决方法
root@cvknode20221:~# sar -o 02
root@cvknode20221:~# ls /var/log/sysstat/
sa02
root@cvknode20221:~# sar -n DEV
11:38:46 AM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
11:38:48 AM vnet4 0.00 45.50 0.00 8.82 0.00 0.00 0.00
11:38:48 AM vnet1 0.00 45.50 0.00 8.82 0.00 0.00 0.00
11:38:48 AM eth0 52.50 3.00 9.68 0.34 0.00 0.00 8.50
11:38:48 AM eth1 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Linux命令小结:crontab/netstat/iostat/sar的更多相关文章
- 常用Linux命令小结
常用Linux命令小结 Linux下有很多常用的很有用的命令,这种命令用的多了就熟了,对于我来说,如果长时间没有用的话,就容易忘记.当然,可以到时候用man命令查看帮助,但是,到时候查找的话未免有些临 ...
- Linux命令之Crontab定时任务,利用Crontab定时执行spark任务
Linux命令之Crontab定时任务,利用Crontab定时执行spark任务 一.Linux命令之Crontab定时任务 1.1 常见Crontab任务 1.1.1 安装crontab 1.1.2 ...
- 工作中常用的Linux命令:crontab命令
本文链接:http://www.cnblogs.com/MartinChentf/p/6060252.html (转载请注明出处) crontab是一个用来设置.删除或显示供守护进程cron执行的定时 ...
- 每天一个linux命令(56)--crontab命令
上一节学习了 at 命令是针对仅运行一次的任务,循环运行的例行性计划任务,Linux 系统则是由 cron(crond)这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个 ...
- Linux 命令之 crontab
crontab 简介 crontab 主要用于需要管理周期执行定时任务的场景 crontab 安装 (有些系统默认已经带了 crontab,无需安装的朋友可以直接跳过本节) 安装: yum insta ...
- linux命令之crontab详解
crontab命令: crontab -l : 显示定时任务列表 crontab -e: 编辑定时任务 crontab -r : 删除所有定时任务 基本格式 : * * * * * command ...
- linux命令小结
查看IP ip a 测试ip ping 10.0.0.128 测试端口 telnet 10.0.0.128 22 # telnet + ip + 端口 Linux - CentOS 7. ...
- 高频Linux命令小结(新手向)
示例代码托管在:http://www.github.com/dashnowords/blogs 博客园地址:<大史住在大前端>原创博文目录 华为云社区地址:[你要的前端打怪升级指南] 近期 ...
- Linux命令:ps,netstat,top
ps ps用于查看当前运行的进程.如果想查看动态的进程信息,可以使用top命令.查看详细命令帮助使用man ps. ps最常用的选项组合就是ps aux: # ps aux USER PID %CPU ...
随机推荐
- Python自动化 【第十六篇】:JavaScript作用域和Dom收尾
本节内容: javascript作用域 DOM收尾 JavaScript作用域 JavaScript的作用域一直以来是前端开发中比较难以理解的知识点,对于JavaScript的作用域主要记住几句话,走 ...
- Python: 元组的基本用法
元组和列表是近亲,列表允许并且提供了方法来改变它的值,但元组是不可改变的,即不允许你改变它的值----这也是它没有方法的部分原因. 元组的主要作用是作为参数传递给函数调用.或是从函数调用那里获得参数时 ...
- {POJ}{3903}{Stock Exchange}{nlogn 最长上升子序列}
题意:求最长上升子序列,n=100000 思路:O(N^2)铁定超时啊....利用贪心的思想去找答案.利用栈,每次输入数据检查栈,二分查找替换掉最小比他大的数据,这样得到的栈就是更优的.这个题目确实不 ...
- 通过JDBC进行简单的增删改查(以MySQL为例)
目录 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JDBC基本操作 (1)定义记录的类(可选) (2)连接的获取 ( ...
- 转载:log4j.properties log4j.xml 路径问题
自动加载配置文件: (1)如果采用log4j输出日志,要对log4j加载配置文件的过程有所了解.log4j启动时,默认会寻找source folder下的log4j.xml配置文件,若没有,会寻找lo ...
- CSS属性(根据继承性分为两类)
一.可继承属性 1>所有标签可继承: visibility:行高 cursor: 2>内联标签可继承: line-height:行高 color:文字颜色 font-family:文字字体 ...
- 如何在cluster上跑R脚本
R 是一个比较不错但是有时候操蛋的语言,不错是因为用着爽的时候真的很爽,操蛋是因为这种爽不是什么时候都可以的,比如说在cluster上批处理跑R脚本. 当然说这话有些在上面跑过的各种不服气,你丫傻逼吧 ...
- 改变Eclipse 中代码字体大小
1.改变eclipse 中代码字体大小,就是我打进去的java文件的字体大小 wiondow--preferences--general--appearance--colors and fonts-- ...
- google垂直搜索结果
佰年金融 所谓“垂直”很干净地分离出来,而不是在谷歌算作有机列表的结果,但该行已开始模糊.例如,现在许多视频结果似乎是直接整合为有机(万SERP的例子).我治疗的新的“有深度的文章”作为一个垂直的结果 ...
- Python数据库备份脚本
Python数据库备份脚本 #!/usr/bin/env python # author: liudong # -*- coding: utf-8 -*- # filename: db_bak.py ...