Linux top 持续监控脚本
在定位 Linux 性能问题时,经常需要排查是哪个进程造成的系统资源(CPU、内存)过高。
这里提供一个脚本,可方便的进行持续的 top 监控,将监控结果按时间戳命名,保存到文件。
后续,可通过 grep
命令或脚本解析进行问题定位。
主要功能
- 输出完整 top 进程列表
- 支持自定义采集间隔
- 支持删除过期日志
脚本
top_monitor.sh
脚本如下:
1 |
|
在定位 Linux 性能问题时,经常需要排查是哪个进程造成的系统资源(CPU、内存)过高。
这里提供一个脚本,可方便的进行持续的 top 监控,将监控结果按时间戳命名,保存到文件。
后续,可通过 grep
命令或脚本解析进行问题定位。
top_monitor.sh
脚本如下:
1 | #! /bin/bash |
在执行 nohup python my_script.py &
时,生成的 nohup.out
文件为空。
原因是:stdout 没有及时 flush
解决办法:添加python
启动参数-u
。
参数说明:
# python --help ... -u : force the binary I/O layers of stdout and stderr to be unbuffered; stdin is always buffered; text I/O layer will be line-buffered; also PYTHONUNBUFFERED=x ...
参考链接:
https://stackoverflow.com/questions/25674613/python-nohup-out-dont-show-print-statement
安装 kubernetes 时需要关掉swap, Ubuntu 18.04 下关闭 swap 的操作:
1 | # 查看是否有swap(返回空表示没有),也可以使用 top/free 查看 |
/swap.img
为 ubuntu 18.04
默认的 swap 文件。其他场景可通过cat /etc/fstab
查看。
关于swap
更多操作, 参考:
在Shell中,我们可以用awk实现按列求和的功能,非常简单。看下面的例子:
1 | [linux@test /tmp]$ cat test |
1 | [linux@test /tmp]$ cat test |
对文件test中 第一列为aaa的行求和
1 | [linux@test /tmp]$ awk '/aaa/ {sum += $2};END {print sum}' test |
awk 处理文本还是很方便的。
————————————————
版权声明:本文为CSDN博主「默一鸣」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/yimingsilence/article/details/77163585
通过tar命令备份、解压缩文件,也可在不解压缩文件时查看包内的文件信息。
使用如下参数:
tar -ztvf file.tar.gz
将列出所有包内的文件列表,包括目录
-z, --gzip, --gunzip, --ungzip filter the archive through gzip -t, --list list the contents of an archive -v, --verbose verbosely list files processed -f, --file=ARCHIVE use archive file or device ARCHIVE
以上内容, 转自: https://www.cnblogs.com/0820LL/p/9620158.html
如果想查看文件压缩前后整体大小、压缩率等,可以使用:
gzip -l file.tar.gz