Centos7查看内存使用情况
free
-b
:以字节为单位显示内存使用情况。-k
:以KB为单位显示内存使用情况(默认选项)。-m
:以MB为单位显示内存使用情况。-g
:以GB为单位显示内存使用情况。-t
:在输出的最后一行显示总内存使用情况。-s <间隔时间>
:周期性地显示内存使用情况,间隔时间为指定的秒数。-c <次数>
:指定周期性显示内存使用情况的次数。-h
:以人类可读的方式显示内存使用情况,例如,将数字转换为易于理解的单位(GB、MB、KB等)。
除了上述常用参数外,free
命令还支持其他一些选项,可以通过 man free
命令查看完整的帮助文档。
[root@VM-16-3-centos ~]# free -htotal used free shared buff/cache available
Mem: 2.0G 1.6G 85M 776K 305M 238M
Swap: 0B 0B 0B
[root@VM-16-3-centos ~]#
[root@VM-16-3-centos ~]# free -httotal used free shared buff/cache available
Mem: 2.0G 1.6G 86M 776K 305M 239M
Swap: 0B 0B 0B
Total: 2.0G 1.6G 86M
[root@VM-16-3-centos ~]#
- total 总物理内存
- used 已经使用的内存
- free 没有使用的内存
- shared 多进程共享内存
- buff/cache 读写缓存内存
- available 应用程序可用物理内存
top
- -d seconds:设置top命令的刷新间隔时间,默认为3秒。
- -u username:只显示指定用户名的进程信息。
- -p pid:只显示指定进程ID的信息。
- -n iterations:设置top命令的循环次数,即显示的次数。
- -s field:按指定字段对进程进行排序,默认按CPU使用率排序。可选字段包括pid、user、pr、ni、virt、res、shr、s、%cpu、%mem、time+、time、command。
- -o field:按指定字段对进程进行排序,与-s参数不同的是,-o参数可同时指定多个字段进行排序。
- -c:显示完整的命令行信息。
[root@VM-16-3-centos ~]# top
top - 15:47:19 up 164 days, 6:58, 1 user, load average: 0.21, 0.20, 0.13
Tasks: 105 total, 1 running, 104 sleeping, 0 stopped, 0 zombie
%Cpu(s): 1.3 us, 0.5 sy, 0.0 ni, 97.5 id, 0.7 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 2046684 total, 95396 free, 1648520 used, 302768 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 241956 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1180 mysql 20 0 1612496 283868 3144 S 0.0 13.9 155:13.21 mysqld 3997 root 20 0 2691696 275528 4916 S 0.0 13.5 191:00.55 java 4457 root 20 0 2698236 273284 80 S 0.0 13.4 227:16.56 java 7843 root 20 0 2705412 261332 5792 S 0.0 12.8 5:25.89 java 910 root 20 0 2706072 196472 0 S 0.0 9.6 42:33.88 java
28805 root 20 0 3564004 102764 0 S 0.0 5.0 142:35.23 java 1120 rabbitmq 20 0 2281004 81128 3504 S 0.0 4.0 507:39.35 beam.smp
[root@VM-16-3-centos ~]# top -c
top - 15:47:56 up 164 days, 6:59, 1 user, load average: 0.11, 0.17, 0.13
Tasks: 105 total, 1 running, 104 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.8 us, 0.7 sy, 0.0 ni, 98.5 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 2046684 total, 94868 free, 1648668 used, 303148 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 241808 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1180 mysql 20 0 1612496 283868 3144 S 0.0 13.9 155:13.23 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid 3997 root 20 0 2691696 275528 4916 S 0.0 13.5 191:00.58 java -Xms128m -Xmx128m -Xmn64m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/root/javaapp/dbddump.bin -jar jarp/dbd-1.0.0-SNAPSHOT.jar --server.port=3333 --spring.profiles.active=prod 4457 root 20 0 2698236 273284 80 S 0.0 13.4 227:16.59 java -Xms128m -Xmx128m -Xmn64m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/root/javaapp/limdump.bin -jar jarp/lim-0.0.1-SNAPSHOT.jar --server.port=3334 --spring.profiles.active=prod 7843 root 20 0 2705412 261332 5792 S 0.3 12.8 5:25.94 java -Xms128m -Xmx128m -Xmn64m -jar -Djasypt.encryptor.password=123456 jarp/station-0.0.1-SNAPSHOT.jar 910 root 20 0 2706072 196472 0 S 0.3 9.6 42:33.91 java -Xms128m -Xmx128m -Xmn64m -jar jarp/robot-0.0.1-SNAPSHOT.jar --server.port=3335 --spring.profiles.active=prod
28805 root 20 0 3564004 102764 0 S 0.0 5.0 142:35.25 /usr/local/java/jdk1.8.0_231/bin/java -Dzookeeper.log.dir=/usr/local/zookeeper/apache-zookeeper-3.8.1-bin/bin/../logs -Dzookeeper.log.file=zookeeper-root-server-VM-16-3-centos.log -XX:+HeapDumpOnOutOfMemoryError -XX:OnOutOfMemoryError=kill -9 %p -cp /usr/local/z+
- USER:进程所有者的用户名
- PID:进程ID
- %CPU:进程占用CPU的百分比
- %MEM:进程占用内存的百分比
- VSZ:进程占用的虚拟内存大小,单位为KB
- RSS:进程占用的实际物理内存大小,单位为KB
- TTY:进程所在的终端
- STAT:进程状态,包括R(运行)、S(睡眠)、T(停止)、Z(僵尸进程)等
- START:进程启动的时间
- TIME:进程占用CPU的时间
- COMMAND:进程命令
关于排序
x高亮显示排序列,shit+<或shift+>切换高亮(高亮不是很明显仔细观察)
ps
按照内存排序显示内存占用前5的进程
[root@VM-16-3-centos ~]# ps aux --sort -rss | head -n 5
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
mysql 1180 0.0 13.8 1612496 283868 ? Sl 2023 155:13 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
root 3997 0.0 13.4 2691696 275900 ? Sl 2023 191:01 java -jar dbd-1.0.0-SNAPSHOT.jar
root 4457 0.0 13.3 2698236 273284 ? Sl 2023 227:17 java -jar lim-0.0.1-SNAPSHOT.jar
root 7843 0.1 12.7 2705412 261332 ? Sl Apr09 5:26 java -jar station-0.0.1-SNAPSHOT.jar
[root@VM-16-3-centos ~]#
a表示显示所有进程,包括其他用户的进程;u表示以用户为主要输出格式,包括进程用户、进程ID、CPU使用率、内存占用等;x表示显示没有控制终端的进程。