zoukankan      html  css  js  c++  java
  • 【Linux】了解服务器的情况

    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
    
  • 相关阅读:
    个人兴趣与公司业务的关系
    分析能力的8个等级(转)
    DSL应用的优点
    架构师应具备的概要技能
    Cheetah
    不能运行VS2005的DSL Tool例子
    推荐:原型工具GUI Design Studio
    Viewpoints 1.0 for Visual Studio .NET 2008
    原创故事 - 不死鸡和不死牛的故事
    Antlr构建表达式引擎
  • 原文地址:https://www.cnblogs.com/nick-huang/p/6725353.html
Copyright © 2011-2022 走看看