top命令详解
命令描述top -d 5 -n 10显示每 5 秒刷新一次且仅刷新 10次top -u root指定用户 roottop -p 1102指定进程 PIDtop -o %MEM以内存使用率排序top -c完整命令,与top命令不同的就是command显示的属性更全,例如java运行的是哪个jartop -b -n 2批量打印2次全部进程pidof 进程名称获取进程IDtop -p `pidof xxx`指定名称的进程,进程只能有一个进程pidtop命令详解1.常见操作2.常见命令3.参数解析4.CPU使用率过高排查思路:top命令详解 1.常见操作 1. 输入top+回车键之后按1,也可以看到有各个cpu运行情况2. 输入top+回车键之后按shift+M,按内存使用大小降序显示3. 输入top+回车键之后按shift+p,按cpu使用大小降序显示4. 输入top+回车键之后按shift+n,以pid降序排序显示5. 输入top+回车键之后按shift+t,由进程使用的时间累计排序显示6. 输入top+回车键之后按h:显示帮助信息7. 输入top+回车键之后按e或E,可以切换每个任务或汇总占用内存的大小的单位, 从 KB、MB、GB、TB、PB 到 EB 循环切换.8. 输入top+回车键之后,按n,输入0表示无限制,输入n表示显示n条9. 输入top+回车键之后,按u,输入!前缀,输入username取反过滤用户10. 输入top+回车键之后,输入r回车,输入pid回车,输入优先级-20(区间-20,19,数字越小代表优先级程度越高)2.常见命令 3.参数解析 平均负载并不是代表CPU的使用率。简单来说,平均负载是指单位时间内,系统处于可运行状态和不可中断状态的平均进程数,也就是平均活跃进程数。 所谓可运行状态和不可中断状态是指: - 可运行状态(R):正在CPU上运行或者正在等待CPU的进程状态,如上; - 不可中断状态(D):不可中断是指一些正在处于内核关键流程的进程,如果盲目打断,会造成不可预知的后果,比如正在写磁盘的进程,盲目被打断,可能会造成读写不一致的问题,因此这里再次强调load average和CPU使用率并没有直接关系,其值可以大于100。 比如,此时1分钟的平均负载为5.6,而我们的操作系统是4个CPU,那么就代表此时系统负载过高,意味着有160%的的超载进程竞争不到CPU;若负载为2.0,则意味着有50%的CPU空闲。1分钟的系统负荷只是暂时现象,问题不大。应该主要观察"15分钟系统负荷",将它作为服务器正常运行的指标。buff/cache的内容,在Linux 2.4以前,page cache和buffer cache是两个独立的缓存,Linux 2.4开始page cache和buffer cache进行了统一 PID — 进程idUSER — 进程所有者PR — 进程优先级NI — nice值。负值表示高优先级,正值表示低优先级VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA SHR — 共享内存大小,单位kb S — 进程状态:D=不可中断的睡眠状态;R=运行;S=睡眠;T=跟踪/停止;Z=僵尸进程%CPU — 上次更新到现在的CPU时间占用百分比%MEM — 进程使用的物理内存百分比TIME+ — 进程使用的CPU时间总计,单位1/100秒top - 16:19:54 up 1 day, 4:24, 1 user, load average: 0.00, 0.01, 0.05top - 系统时间 up 运行时间, 用户数量, 系统最近5、10和15分钟内的平均负载 Tasks: 122 total, 1 running, 121 sleeping, 0 stopped, 0 zombie系统总共122进程 1个运行进程 121 休眠进程 0个stop进程 0个僵尸进程 %Cpu(s): 5.0 us, 15.0 sy, 0.0 ni, 75.0 id, 0.0 wa, 0.0 hi, 5.0 si, 0.0 stus, 用户空间的CPU百分比 sy,内核空间占用的CPU百分比;ni,用户进程内改变过优先级的进程占用CPU百分比 id, 空闲CPU的百分比 wa,IO wait: 等待输入输出的CPU时间百分比 hi:处理硬件中断的CPU时间 si: 处理软件中断的CPU时间 st:这个虚拟机被hypervisor偷去的CPU时间(译注:如果当前处于一个hypervisor下的vm,实际上hypervisor也是要消耗一部分CPU处理时间的)。 KiB Mem : 995896 total, 554812 free, 143384 used, 297700 buff/cachetotal — 物理内存总量 free — 空闲的内存总量 使用中的内存总量 block buffer + page cache 所占用的内存大小 KiB Swap: 2097148 total, 2097148 free, 0 used. 664544 avail Mem total - 交换分区的总量 free - 空闲的交换分区的总量 used - 已使用的交换分区大小 avail Mem: 这个值是系统的估算值,表示可用于启动新程序的物理内存大小(不包括 swap 空间) PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND COMMAND — 进程名称(命令名/命令行)4.CPU使用率过高排查思路: 1.使用top命令,然后按P按照CPU使用率降序排序,找到占用CPU过高的进程id2.使用`ps -mp [进程id] -o THREAD,tid,time | sort -rm`获取线程信息,并找到占用CPU高的线程3.使用`echo 'obase=16;[tid]' | bc`或`echo 'obase=16;[tid]' | printf "%x\n" [线程id]`将线程ID转为16进制4.使用`jstack 进程id | grep "线程id的16进制" -A 30`打印线程的堆栈信息5.从堆栈信息中找到是程序中的那几行代码是一直处于running状态的,从而定位问题。6.定位问题后,将进程kill掉
LinuxTOP命令详解
LinuxTOP命令详解先来看⼀下执⾏以后的结果:
各项数值的含义如下:
第⼀⾏是任务队列信息。
1 17:15:40 当前时间
2 up 21 days,1:19 系统运⾏时间,格式为天,时:分
3 8 user 当前登录⽤户数
4 load average: 0.00, 0.00, 0.00 系统负载,即任务队列的平均长度(三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值)
第⼆⾏为进程信息。
1 Tasks: 170 total 进程总数
2 1 running 正在运⾏的进程数
3 169 sleeping 睡眠的进程数
4 0 stopped 停⽌的进程数
5 0 zombie 僵⼫进程数
第三⾏为CPU信息。
1 Cpu(s): 11.8% us ⽤户空间占⽤CPU百分⽐
2 12.2% sy 内核空间占⽤CPU百分⽐
3 0.0% ni ⽤户进程空间内改变过优先级的进程占⽤CPU百分⽐
4 71.6% id 空闲CPU百分⽐
5 2.1% wa 等待输⼊输出的CPU时间百分⽐
6 0.0% hi 硬件CPU中断占⽤百分⽐
7 2.2% si 软中断占⽤百分⽐
8 0.0% st 虚拟机占⽤百分⽐
最后两⾏为内存信息。
Mem: 1926324k total 物理内存总量
841032k used 使⽤的物理内存总量
1085292k free 空闲内存总量
104712k buffers ⽤作内核缓存的内存量
Swap: 4128760k total 交换区总量
0k used 使⽤的交换区总量
4128760k free 空闲交换区总量
267836k cached 缓冲的交换区总量
再来看看进程信息区的详解:
1 PID 进程id
2 USER 进程所有者的⽤户名
3 PR 优先级
4 NI nice值。负值表⽰⾼优先级,正值表⽰低优先级
5 VIRT 进程使⽤的虚拟内存总量,VIRT=SWAP+RES
6 RES 进程使⽤的、未被换出的物理内存⼤⼩
Linux top 命令详解
Linux top 命令详解
top命令经常用来监控linux的系统状况,比如cpu、内存的使用,程序员基本都知道这个命令,但比较奇怪的是能用好它的人却很少,例如top监控视图中内存数值的含义就有不少的曲解。
本文通过一个运行中的WEB服务器的top监控截图,讲述top视图中的各种数据的含义,还包括视图中各进程(任务)的字段的排序。
top进入视图
top视图 01
【top视图 01】是刚进入top的基本视图,我们来结合这个视图讲解各个数据的含义。
第一行:
10:01:23 — 当前系统时间
126 days, 14:29 — 系统已经运行了126天14小时29分钟(在这期间没有重启过)
2 users — 当前有2个用户登录系统
load average: 1.15, 1.42, 1.44 — load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。
load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。
第二行:
Tasks — 任务(进程),系统现在共有183个进程,其中处于运行中的有1个,182个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。 第三行:cpu状态
6.7% us — 用户空间占用CPU的百分比。
0.4% sy — 内核空间占用CPU的百分比。
0.0% ni — 改变过优先级的进程占用CPU的百分比
92.9% id — 空闲CPU百分比
0.0% wa — IO等待占用CPU的百分比
0.0% hi — 硬中断(Hardware IRQ)占用CPU的百分比
0.0% si — 软中断(Software Interrupts)占用CPU的百分比
在这里CPU的使用比率和windows概念不同,如果你不理解用户空间和内核空间,需要充充电了。
linuxtop命令详解
linuxtop命令详解
top命令是Linux下常⽤的性能分析⼯具,能够实时显⽰系统中各个进程的资源占⽤状况,类似于Windows的任务管理器。下⾯详细介绍它的使⽤⽅法。
如果输出为:
top - 01:06:48 up 1:22, 1 user, load average: 0.06, 0.60, 0.48
Tasks: 29 total, 1 running, 28 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.3% us, 1.0% sy, 0.0% ni, 98.7% id, 0.0% wa, 0.0% hi, 0.0% si
Mem: 191272k total, 173656k used, 17616k free, 22052k buffers
Swap: 192772k total, 0k used, 192772k free, 123988k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1379 root 16 0 7976 2456 1980 S 0.7 1.3 0:11.03 sshd
14704 root 16 0 2128 980 796 R 0.7 0.5 0:02.72 top
1 root 16 0 1992 632 544 S 0.0 0.3 0:00.90 init
2 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0
3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 watchdog/0
统计信息区
前五⾏是系统整体的统计信息。第⼀⾏是任务队列信息,同 uptime 命令的执⾏结果。其内容如下:
01:06:48 当前时间
up 1:22 系统运⾏时间,格式为时:分
1 user 当前登录⽤户数
load average: 0.06, 0.60, 0.48 系统负载,即任务队列的平均长度。
Ping命令详解
Ping
(Packet Internet Gopher)
網路封包測試 相關資料
可用來測試遠端的主機是否存在,判斷網路是否正常
測試方法:
啟動DOS模式 > 輸入 PING 210.70.11.249
指令名稱 ping
使用權限 任何有效之使用者
使用方式 ping [-dfnqrRv] [-c ] [-ig] [-I ][-l ]
[-p ] [-s ] [-t ] [主機名稱或IP位址]
說 明 使用ICMP(Internet Control Message Protocol) 傳輸協定,偵測遠端主機的網路功能是否正常,而給予回應訊息。
參 數
-c 設定完成要求回應的次數。此指令會反覆發出訊息,直到完成的次數為止。
-q 不顯示指令執行過程,除開始和結束之相關訊息外。
-s 設定封包大小。
-v 顯示指令執行詳細過程,包括非回應訊息的資訊皆會被列出。
筥 例 1. 偵測192.168.1.1的網路功能是否正常:
* ping 192.168.1.1
Windows網路管理
--------------------------------------------------------------------------------
作者:李忠憲 mailto:shane@.tw
--------------------------------------------------------------------------------
前言
過去系統管理師主要負責業務是校務行政系統的管理、訓練,有些學校系統管理師尚且兼管電腦教室,TANet到中小學後,系統管理師又兼網路管理師,部分教室電腦試行學校,系統管理師另須負責教室電腦的管理維護之責。簡單的說,目前系統管理師一人所負責的業務,幾近於一家社區電腦公司的工作量,這當然不是一般人能夠做的事。因此除非有濃厚的興趣,否則系統管理師通常都做不長久,在這樣的環境中,系統管理師還必須努力求新知,以免被工作淘汰。
Netstat命令详解
Netstat命令详解
Netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。
如果你的计算机有时候接收到的数据报导致出错数据或故障,你不必感到奇怪,TCP/IP可以容许这些类型的错误,并能够自动重发数据报。但如果累计的出错情况数目占到所接收的IP数据报相当大的百分比,或者它的数目正迅速增加,那么你就应该使用Netstat查一查为什么会出现这些情况了。
Netstat 详细参数列表
(winXP)
C:\>netstat /?
显示协议统计信息和当前 TCP/IP 网络连接。
NETSTAT [-a] [-b] [-e] [-n] [-o] [-p proto] [-r] [-s] [-v] [interval]
-a 显示所有连接和监听端口。
-b 显示包含于创建每个连接或监听端口的可执行组件。在某些情况下已知可执行组 件拥有多个独立组件,并且在这些情况下包含于创建连接或监听端口的组件序列 被显示。这种情况下,可执行组件名在底部的 [] 中,顶部是其调用的组件, 等等,直到 TCP/IP部分。注意此选项可能需要很长时间,如果没有足够权限 可能失败。
-e 显示以太网统计信息。此选项可以与 -s选项组合使用。
-n 以数字形式显示地址和端口号。
-o 显示与每个连接相关的所属进程 ID。
-p proto 显示 proto 指定的协议的连接;proto 可以是下列协议之一: TCP、UDP、 TCPv6 或 UDPv6。如果与 -s 选项一起使用以显示按协议统计信息,proto 可以是下列协议之一:IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 或 ()UDPv6。
netsh命令详解
C:\Documents and Settings>netsh
netsh>interface
netsh interface>ip
netsh interface ip>add address "本地连接" 192.168.10.5 255.255.255.0 192.168.10.1 1
确定。
netsh interface ip>
C:\Documents and Settings>netsh
netsh>interface
netsh interface>ip
netsh interface ip>?
下列指令有效:
命令从 netsh 上下文继承:
.. - 移到上一层上下文级。
abort - 丢弃在脱机模式下所做的更改。
add - 在项目列表上添加一个配置项目。
alias - 添加一个别名
bridge - 更改到 `netsh bridge' 上下文。
bye - 退出程序。
commit - 提交在脱机模式中所做的更改。
delete - 在项目列表上删除一个配置项目。
diag - 更改到 `netsh diag' 上下文。
exit - 退出程序。
interface - 更改到 `netsh interface' 上下文。
offline - 将当前模式设置成脱机。
online - 将当前模式设置成联机。
popd - 从堆栈上打开一个上下文。
pushd - 将当前上下文放推入堆栈。
quit - 退出程序。
ras - 更改到 `netsh ras' 上下文。
linux的top命令参数详解
linux的top命令参数详解
简介
top命令是Linux下常⽤的性能分析⼯具,能够实时显⽰系统中各个进程的资源占⽤状况,类似于Windows的任务管理器。
top显⽰系统当前的进程和其他状况,是⼀个动态显⽰过程,即可以通过⽤户按键来不断刷新当前状态.如果在前台执⾏该命令,它将独占前台,直
到⽤户终⽌该程序为⽌. ⽐较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显⽰系统中CPU最“敏感”的任务列表.该命令可以
按CPU使⽤.内存使⽤和执⾏时间对任务进⾏排序;⽽且该命令的很多特性都可以通过交互式命令或者在个⼈定制⽂件中进⾏设定.
下⾯详细介绍它的使⽤⽅法。
参数含义
top - 01:06:48 up 1:22, 1 user, load average: 0.06, 0.60, 0.48
Tasks: 29 total, 1 running, 28 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.3% us, 1.0% sy, 0.0% ni, 98.7% id, 0.0% wa, 0.0% hi, 0.0% si
Mem: 191272k total, 173656k used, 17616k free, 22052k buffers
Swap: 192772k total, 0k used, 192772k free, 123988k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
root 16 0 7976 2456 1980 S 0.7 1.3 0:11.03 sshd
root 16 0 2128 980 796 R 0.7 0.5 0:02.72 top
root 16 0 1992 632 544 S 0.0 0.3 0:00.90 init
root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0
Linux系统shell之top命令详解
Linux系统shell之top命令详解
top命令是Linux下常⽤的性能分析⼯具,能够实时显⽰系统中各个进程的资源占⽤状况,类似于Windows的任务管理器。下⾯详细介绍它的
使⽤⽅法。
top - 01:06:48 up 1:22, 1 user, load average: 0.06, 0.60, 0.48
Tasks: 29 total, 1 running, 28 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.3% us, 1.0% sy, 0.0% ni, 98.7% id, 0.0% wa, 0.0% hi, 0.0% si
Mem: 191272k total, 173656k used, 17616k free, 22052k buffers
Swap: 192772k total, 0k used, 192772k free, 123988k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1379 root 16 0 7976 2456 1980 S 0.7 1.3 0:11.03 sshd
14704 root 16 0 2128 980 796 R 0.7 0.5 0:02.72 top
1 root 16 0 1992 632 544 S 0.0 0.3 0:00.90 init
2 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0
3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 watchdog/0
统计信息区
前五⾏是系统整体的统计信息。第⼀⾏是任务队列信息,同 uptime 命令的执⾏结果。其内容如下:
01:06:48 当前时间
up 1:22 系统运⾏时间,格式为时:分
1 user 当前登录⽤户数
load average: 0.06, 0.60, 0.48 系统负载,即任务队列的平均长度。
top命令详解
/Sunboy_2050/archive/2011/01/11/6129177.aspx
Linux下的top命令的图解使用 收藏
查看多核CPU命令
mpstat -P ALL 和 sar -P ALL
说明:sar -P ALL > aaa.txt 重定向输出内容到文件 aaa.txt
top命令经常用来监控linux的系统状况,比如cpu、内存的使用,程序员基本都知道这个命令,但比较奇怪的是能用好它的人却很少,例如top监控视图中内存数值的含义就有不少的曲解。
本文通过一个运行中的WEB服务器的top监控截图,讲述top视图中的各种数据的含义,还包括视图中各进程(任务)的字段的排序。
top进入视图
top视图 01
【top视图 01】是刚进入top的基本视图,我们来结合这个视图讲解各个数据的含义。
第一行:
10:01:23 — 当前系统时间
126 days, 14:29 — 系统已经运行了126天14小时29分钟(在这期间没有重启过)
2 users — 当前有2个用户登录系统
load average: 1.15, 1.42, 1.44 — load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。
load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。
第二行:
Tasks — 任务(进程),系统现在共有183个进程,其中处于运行中的有1个,182个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。
第三行:cpu状态
6.7% us — 用户空间占用CPU的百分比。
0.4% sy — 内核空间占用CPU的百分比。
0.0% ni — 改变过优先级的进程占用CPU的百分比
92.9% id — 空闲CPU百分比
linux中PS和TOP命令用法详解
程序与进程:
程序是静态的(文件),进程是动态的(运行的程序)
进程和线程:
一个程序至少有一个进程,一个进程至少有一个线程
进程之间的内存是独立的
线程之间的内存是共享(共享的优点并发连接高,缺点安全性差)
查看进程树:
Pstree树形结构显示系统进程信息
[root@localhost ~]# pstree
init─┬─auditd───{auditd}
├─console-kit-dae───63*[{console-kit-da}]
├─crond
├─dbus-daemon───{dbus-daemon}
├─dhclient
├─login───bash
├─master─┬─pickup
│└─qmgr
├─5*[mingetty]
├─rhsmcertd
├─rsyslogd───3*[{rsyslogd}]
├─sshd───sshd─┬─bash───pstree
│└─sftp-server
└─udevd
-P 显示进程号
[root@localhost ~]# pstree -p
init(1)─┬─auditd(1113)───{auditd}(1114)
├─console-kit-dae(1308)─┬─{console-kit-da}(1309)
│├─{console-kit-da}(1310)
│├─{console-kit-da}(1311)
│├─{console-kit-da}(1312)
│├─{console-kit-da}(1313)
│├─{console-kit-da}(1314)
│├─{console-kit-da}(1315)
│├─{console-kit-da}(1316)
│├─{console-kit-da}(1317)
│├─{console-kit-da}(1318)
│├─{console-kit-da}(1319)
