linux系统管理——进程管理
top 命令是使用 top - :: up :, user, load average: 0.06, 0.60, 0.48 #五分钟钱,十分钟前,十五分钟前负载的值根据cpu核数计算,上线为CPU核数的个数。
Tasks: total, running, sleeping, stopped, 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 S 0.7 1.3 :11.03 sshd
root R 0.7 0.5 :02.72 top
root S 0.0 0.3 :00.90 init
root S 0.0 0.0 :00.00 ksoftirqd/
root RT S 0.0 0.0 :00.00 watchdog/ VIRT:virtual memory usage 虚拟内存
、进程“需要的”虚拟内存大小,包括进程使用的库、代码、数据等
、假如进程申请100m的内存,但实际只使用了10m,那么它会增长100m,而不是实际的使用量 RES:resident memory usage 常驻内存
、进程当前使用的内存大小,但不包括swap out
、包含其他进程的共享
、如果申请100m的内存,实际使用10m,它只增长10m,与VIRT相反
、关于库占用内存的情况,它只统计加载的库文件所占内存大小 SHR:shared memory 共享内存
、除了自身进程的共享内存,也包括其他进程的共享内存
、虽然进程只使用了几个共享库的函数,但它包含了整个共享库的大小
、计算某个进程所占的物理内存大小公式:RES – SHR
、swap out后,它将会降下来 DATA
、数据占用的内存。如果top没有显示,按f键可以显示出来。
、真正的该程序要求的数据空间,是真正在运行中要使用的。
使用lsof命令
#yum install
3.lsof的常用几个命令:
lsof -i:(端口号)
lsof -i:3306 (3306默认是mysql服务端的端口)
lsof -i:3690 (3690默认是svn服务端的端口)
######################终止进程################################# kill -l 查看进程的信号 [root@zabbix ~]# kill -l [root@zabbix ~]# pkill - httpd pkill 按照终端号提出用户
pkill -t 例子: [root@zabbix ~]# w #使用w查看本机已经登录的用户
:: up min, users, load average: 0.04, 0.07, 0.12
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 : : .39s .39s -bash
root pts/ 192.168.1.152 : : .09s .09s -bash
root pts/ 192.168.1.152 : .00s .25s .04s w [root@zabbix ~]# pkill -t - tty1
#强制杀死从tty1终端登录的进程
linux系统管理——工作管理 ############### 把进程放入后台运行 ##################### 在命令后加入 &,放入后台程序不会暂停是继续运行的 Ctrl + z 放入后台程序是暂停的 ################# 查看后台的工作 ################# [root@zabbix ~]# jobs
[]+ 已停止 top [root@zabbix ~]# jobs -l
[]+ 停止 (信号) top 注: + 号代表最近一个放入后台的工作,也是工作恢复时默认恢复的工作,- 号代表倒数第二个放入后台的工作 ########### 将后台暂停的工作恢复到前台 ###########
fg %工作号 [root@zabbix ~]# fg
[root@zabbix ~]# jobs
[]- 已停止 top
[]+ 已停止 top ################# 把后台暂停的进程恢复到后台运行 ################ bg