查看本机上的timer服务列表
systemctl list-timers, 查看对应服务的详细信息systemctl cat anacron.timer1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16systemctl list-timers
root@ss20231017:~# systemctl cat anacron.timer
/lib/systemd/system/anacron.timer
[Unit]
Description=Trigger anacron every hour
[Timer]
OnCalendar=*-*-* 07..23:30
RandomizedDelaySec=5m
Persistent=true
[Install]
WantedBy=timers.target
root@ss20231017:~#chrt查看linux程序的调度器以及调度的优先级。查看各个调度器的最大最小优先级chrt -m, 查看某个线程的优先级信息chrt -p pid, 以某个优先级启动某个程序chrt -f 99 sleep 10000
1  | chrt -m  | 
列出CPU消耗高的进程top10
1
2
3
ps -eT -o%cpu,pid,tid,ppid,comm | grep -v CPU | sort -n -r | head -10端口查看进程
1  | 
  | 
shell中使用
$获取当前程序的pid,由于shell中$用于取变量,一般打印当前程序的PID,可以用$$来表示1
2
3
4cat 1.sh
echo $$
cat /proc/$$/cgroup通过shell打印某一个pid的rss内存使用
该能力有几种方式都可以实现,第一种方式是通过统计/proc/$pid/smaps中的Rss,然后将所有的数据加起来,统计出来的就是Rss的大小。第二种方式是通过ps的方式来统计,具体如下:(从原理上看,两者实际是完全一样的,PS同样是读取/proc文件来获取资源的)
1  | 
  | 
查看某一个命令的详细使用文档,可以考虑使用info指令来查看,该命令可以查看这个指令的info 文档 :
info top,info chtr,info ps一些可以探索使用方式的工具:
cut,paste,xargs下载一些gun库的源码,可以直接通过apt-get 进行下载
apt-get source iputils-ping通过sar查看系统监控相关的数据,默认情况下只能查看当天的数据,可以通过如下脚本查看之前某一天的数据, 其原理就是通过sar产生的数据文件读取相关的数据,并做展示。
1  | 
  | 
安装sar工具后,默认情况下并不会默认开启,需要主动打开,操作的方式为,修改
/etc/default/sysstat文件,设置ENABLED="true"即可查看整个操作系统的内存使用情况,直接通过free命令只能看到整体的内容使用情况,这些内存使用情况,还需要进一步分区分内存是被slabinfo占用,还是被Pagetable占用,或者是被应用的rss占用。可以通过如下脚本进行采集分析, 由于RSS包含程序和程序之间公用的部分,所以已下的内容加起来要比实际的内容要多。操作系统分配的内存还有一部分是通过allocpage方式直接申请的,这部分内存无法被统计到。
1  | cat mem.sh  | 
- 在网络收包的时候,
NET_RX_SOFTIRQ主要是由net_rx_action处理,receive_mergeable是和virtio_net驱动有关系。 网络相关的内容,通过ss命令可以快速的分析其网络状态。 
1  | ss -s  | 
- Linux提供一些通用的系统查看工具,sar就是其中一个比较强大的工具,利用这个工具可以查看网络、IO、Page交换、磁盘IO等信息。以下为相关示例
 
1  | 
  |