Java程序大多数都部署在Unix环境,而环境的稳定性对于部署的应用至关重要,所以Java开发人员需知道了解Unix环境的命令。

系统版本

查看系统版本

[root@localhost third_pkg]# cat /proc/version
Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013

CPU

查看CPU使用率,w

w可以查看CPU使用率,但此命令不仅仅看CPU使用率的,wwhow,意思是谁登录了系统和在做什么事情。

load average后面的3个数字分别为最近1、5、15分钟的平均负载:

[root@localhost ~]# w
07:12:04 up 1 day, 3:44, 1 user, load average: 0.01, 0.01, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 192.168.1.100 06:36 0.00s 0.21s 0.00s w

查看综合信息,top

使用top也能查看类似信息,但它还有个特点,可以实时查看TOP程序,你也试试:

top - 10:13:18 up 16 days, 14:14,  3 users,  load average: 0.02, 0.03, 0.00
Tasks: 96 total, 1 running, 95 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.7%us, 1.3%sy, 0.0%ni, 98.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1922148k total, 1733216k used, 188932k free, 130604k buffers
Swap: 0k total, 0k used, 0k free, 979132k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
21318 rabbitmq 20 0 2255m 67m 3816 S 0.7 3.6 0:14.16 beam

简析top的结果:

第一行为基本信息行:

10:13:18:当前时间

16 days, 14:14:机器已启动的时长

3 users,当前后3个用户登录

load average: 0.02, 0.03, 0.00,最近1分钟、5分钟、15分钟的负载情况

第二行为任务行:Task

96 total, 1 running, 95 sleeping, 0 stopped, 0 zombie,表示共96个进程,1个正在运行,95个睡眠,0个已停止,0个僵尸状态

第三行为Cpu行:

0.7%us, 1.3%sy, 0.0%ni, 98.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st,分别各空间的占比:

  • us,用户空间
  • sy,内核空间
  • ni,用户进程空间内改变过优先级的进程
  • id,空闲
  • wa,IO等待
  • hi,硬中断
  • si,软中断
  • st

第四行为内存行:1922148k total, 1733216k used, 188932k free, 130604k buffers,表示物理总内存、已使用的内存空间、空闲内存空间、缓冲区的内存空间

第五行为交换分区行:0k total, 0k used, 0k free, 979132k cached,交换分区总空间、已使用的空间、空闲的空间、缓冲的空间

再下面就是各进程的信息了:PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND,分别表示:

  • PID,进程ID
  • USER,进程所有者
  • PR,进程优先级
  • NI,NICE值
  • VIRT,虚拟内存大小
  • RES,
  • SHR,共享内存大小
  • S,进程状态(R,运行中;S,睡眠;T,停止;Z,僵尸进程)
  • %CPU,CPU使用率
  • %MEM,内存使用率
  • TIME+,进程使用CPU的时间总量
  • COMMAND,命令

查看进程的信息,ps

psprocess snapshot的意思,进程快照,通过此命令可以查看进程的信息,常用的用法:

[user001@localhost ~]$ ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 Mar22 ? 00:00:01 /sbin/init
root 2 0 0 Mar22 ? 00:00:00 [kthreadd]
root 3 2 0 Mar22 ? 00:00:00 [migration/0]

内存

查看内存使用情况,free

free查看内存使用情况,这里的free指的是内存空间的free,从打印的结果看,跟used是相对的:

[user001@localhost ~]$ free
total used free shared buffers cached
Mem: 1012352 537764 474588 0 72292 253348
-/+ buffers/cache: 212124 800228
Swap: 2031608 0 2031608

其中Swap交换区,类似于Windows的虚拟内存,在内存不够时,把硬盘空间当成内存使用。

虚拟内存统计报告,vmstat

vmstat,是virtual memory statistics,意思为虚拟内存统计。

[user001@localhost ~]$ vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 473968 72644 253364 0 0 8 4 25 35 0 0 99 0 0

磁盘

查看磁盘使用情况,df

dfdisk file system的简写,用于查看磁盘的使用情况。常搭配-h使用,-h--human-readable的意思。

[user001@localhost ~]$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 77G 3.3G 70G 5% /
tmpfs 495M 216K 495M 1% /dev/shm
/dev/sda1 291M 34M 242M 13% /boot

查看文件、文件夹使用空间,du

du,可以理解为disk usage,可以查看文件、文件夹的磁盘使用空间。

下面分别为列出/tmp/下各文件的占用空间和整个/tmp/的占用空间:

[root@localhost third_pkg]# du -h /tmp/
4.0K /tmp/.esd-500
4.0K /tmp/pulse-ZHwhowIxj97f
8.0K /tmp/orbit-gdm
80K /tmp/vmware-root
4.0K /tmp/.ICE-unix
176K /tmp/vmware-root-2083994411
4.0K /tmp/.X11-unix
4.0K /tmp/keyring-vU0QIo
24K /tmp/zookeeper/version-2
36K /tmp/zookeeper
8.0K /tmp/pulse-pAOyPUdpK7yZ
4.0K /tmp/keyring-MMfuPn
340K /tmp/
[root@localhost third_pkg]#
[root@localhost third_pkg]# du -sh /tmp/
340K /tmp/

网络

查看网卡的信息,ifconfig

ifconfig,是network interfaces configuring,查询服务器的网卡情况,下面就输出了eth0lo两个网络信息:

[root@localhost ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:72:9D:E7
inet addr:192.168.1.101 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe72:9de7/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:4806 errors:0 dropped:0 overruns:0 frame:0
TX packets:826 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:387034 (377.9 KiB) TX bytes:138929 (135.6 KiB) lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:448 (448.0 b) TX bytes:448 (448.0 b)

查看网络情况,netstat

[user001@localhost ~]$ netstat
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 192.168.1.101:ssh 192.168.1.100:63840 ESTABLISHED
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags Type State I-Node Path
unix 2 [ ] DGRAM 9155 @/org/kernel/udev/udevd
unix 2 [ ] DGRAM 12811 @/org/freedesktop/hal/udev_event
unix 16 [ ] DGRAM 12243 /dev/log

查看IO的情况,iostat

[user001@localhost ~]$ iostat
Linux 2.6.32-431.el6.x86_64 (localhost.localdomain) 03/23/2017 _x86_64_ (1 CPU) avg-cpu: %user %nice %system %iowait %steal %idle
0.05 0.00 0.29 0.24 0.00 99.41 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.78 16.18 8.62 611952 325794

【Linux】了解服务器的情况的更多相关文章

  1. Linux 通过 load average 判断服务器负载情况

    Linux中load average判断服务器负载情况 转载文章 http://www.111cn.net/sys/linux/56003.htm 写的比较详细,推荐看看.

  2. Linux生产服务器Shell脚本分享

    Linux生产服务器Shell脚本分享 2012-6-6 86市场网 linux 作为一名Linux/unix系统管理员,我经常遇到人问这个问题:shell能做什么?PHP这么强大,为什么不用PHP来 ...

  3. 优化Linux生产服务器的经验之谈

    [51CTO独家特稿]如何优化自己的Linux生产服务器?本文结合实际的工作经验,总结了优化Linux生产服务器的九大要点.如果有些方法您尚未采用,不妨一试. 一.时间同步 生产环境下的服务器对时间的 ...

  4. linux邮件服务器postfix配置实例

    linux邮件服务器postfix配置实例(超级详细!!!) 2013-03-13 13:30:21 标签:邮件服务器 linux 1. 系统安装:1)centos4.3 选上MAIL组件里的全部.2 ...

  5. linux部署服务器遇到tomcat already start

    linux部署服务器遇到tomcat already start 前言,之前做了个汽车停车计费的后端,然后现在需要部署到服务器.正常部署,使用secureFx找到所属webapps目录,将文件上传.然 ...

  6. Linux 高性能服务器编程——多线程编程

    问题聚焦:     在简单地介绍线程的基本知识之后,主要讨论三个方面的内容:    1 创建线程和结束线程:    2 读取和设置线程属性:    3 线程同步方式:POSIX信号量,互斥锁和条件变量 ...

  7. Linux 高性能服务器编程——多进程编程

    问题聚焦:     进程是Linux操作系统环境的基础.     本篇讨论以下几个内容,同时也是面试经常被问到的一些问题:     1 复制进程映像的fork系统调用和替换进程映像的exec系列系统调 ...

  8. Linux 高性能服务器编程——I/O复用

    问题聚焦:     前篇提到了I/O处理单元的四种I/O模型.     本篇详细介绍实现这些I/O模型所用到的相关技术.     核心思想:I/O复用 使用情景: 客户端程序要同时处理多个socket ...

  9. Linux 高性能服务器编程——高性能服务器程序框架

    问题聚焦:     核心章节.     服务器一般分为如下三个主要模块:I/O处理单元(四种I/O模型,两种高效事件处理模块),逻辑单元(两种高效并发模式,有效状态机)和存储单元(不讨论). 服务器模 ...

  10. Linux 高性能服务器编程——Linux服务器程序规范

    问题聚焦:     除了网络通信外,服务器程序通常还必须考虑许多其他细节问题,这些细节问题涉及面逛且零碎,而且基本上是模板式的,所以称之为服务器程序规范.     工欲善其事,必先利其器,这篇主要来探 ...

随机推荐

  1. ID3D11DeviceContext::DrawIndexed DrawIndexed 参数详解 StartIndexLocation BaseVertexLocation

    先来看一下画的结果: m_pImmediateContext->DrawIndexed(36, 0, 0); 这个是画一个立方体 后两个参数都是0没有什么可说的. m_pImmediateCon ...

  2. [Spring学习笔记 2 ]装配各种类型的属性 map,list,array,null,properties

    一.spring Ioc容器补充(1) Spring Ioc容器 DI(依赖注入): 注入的方式:设值方法注入setter(属性注入)/构造子注入(构造函数传入依赖的对象)/字段注入field(注解) ...

  3. __cplusplus的用法(转)

    经常在/usr/include目录下看到这种字句: #ifdef __cplusplusextern "C" {#endif...#ifdef __cplusplus}#endif ...

  4. Linux如何实现开机启动程序详解(转)

    Linux开机启动程序详解我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤. ...

  5. AdapterView的使用与getView函数详解

    作者:徐冉.文章首发在他的个人博客. ) AdapterView&Adapter家族 adapterview就是和数据有关的控件,如listview,gridview,spinnerview等 ...

  6. 【jQuery】jquery插件封装

    扩展jQuery插件开发的基本知识,最佳做法和常见的陷阱. 入门 编写一个jQuery插件开始于给jQuery.fn加入​​新的功能属性,此处添加的对象属性的名称就是你插件的名称: jQuery.fn ...

  7. Mac 重建 Spotlight 索引

    前言 最近发现很多 mac 用户反映自己的 mac 系统显示内存占用高达 200 多 Gb,可是实际上自己下载的应用程序根本没那么多,使用专业的内存扫描工具扫的结果跟系统本身显示的完全不一样.那么出现 ...

  8. 巧用linux服务器的/dev/shm/

    巧用linux服务器的/dev/shm/,如果合理使用,可以避开磁盘IO不给力,提高网站访问速度. 首先让我们认识一下,什么是tmpfs和/dev/shm/? tmpfs是Linux/Unix系统上的 ...

  9. Win7 64bit 安装VisualSVN出现报错:Servic 'VisualSVN Server' failed to start.解决的方法

    问题描写叙述: Win7 64bit 安装VisualSVN时出现报错: Servic 'VisualSVN Server' failed to start.Please check VisualSV ...

  10. java中基础数据类型的应用

    1.float 与 double float是单精度类型,占用4个字节的存储空间  double是双精度类型,占用8个字节的存储空间  1)当你不声明的时候,默认小数都用double来表示,所以如果要 ...