系統運維(shell)

先來一些基礎操做:java

查看內存使用狀況:(注意:1. 真實可用內存=free + cached  2.Swap的使用量若是較大,將嚴重影響應用的性能)nginx

[@yd-80-133 ~] # free -m
              total       used       free     shared    buffers     cached
Mem:         96636      96400        235          0        522      75056
-/+ buffers /cache :      20821      75814
Swap:         8189         49       8139

查看磁盤使用狀況:(若是你部署應用的磁盤使用率100%,你的應用就會變得不可用)web

[@yd-81-74 ~] # df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             3.9G  977M  2.8G  26% /
/dev/sda6             1.4T  194G  1.1T  16% /opt
/dev/sda3             3.9G  2.4G  1.3G  66% /var
/dev/sda5             4.9G  3.0G  1.7G  64% /usr
tmpfs                  12G   38M   12G   1% /dev/shm
10.13.81.44: /data/scribelog
                        21T  7.3T   13T  37% /opt/scribelog

查看系統概況:(top命令,能夠看到不少信息。shift+p按cpu倒序,shift+m按內存倒序,1查看每一個cpu繁忙程度)bash

top - 16:38:58 up 1019 days,  1:53, 28 users ,  load average: 0.77, 0.53, 0.56
Tasks: 325 total,   1 running, 324 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.7%us,  0.3%sy,  0.0%ni, 98.6% id ,  0.4%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  24659996k total, 22502624k used,  2157372k free ,   118628k buffers
Swap:  4192956k total,    13344k used,  4179612k free ,   324068k cached
   PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                       
  4033 root      18   0 1996m 975m  13m S 159.0  4.1   6:40.52 java                                                                                                         
12336 root      18   0 2020m 1.2g  10m S  9.8  5.3   2860:34 java                                                                                                          
  3484 root      34  19     0    0    0 S  2.0  0.0  16159:29 kipmi0                                                                                                        
  7350 root      15   0 12868 1192  740 R  2.0  0.0   0:00.01 top                                                                                                           
29636 smc       21   0 1092m 579m  14m S  2.0  2.4   1:20.44 java                                                                                                          
30469 smc       21   0 1075m 708m  14m S  2.0  2.9   5:34.31 java

查看一個進程有多少線程:tcp

[@yd-81-211 ~]$ ps -eLf | grep 24941 | wc -l
583

查看端口被哪一個進程佔用:(pid顯示的就是那個進程)性能

[@yd-81-74 ~] # lsof -i tcp:8080
COMMAND   PID USER   FD   TYPE   DEVICE SIZE NODE NAME
java    30469  smc  239u  IPv4 64471973       TCP 10.13.81.74:webcache (LISTEN)
這個命令還能夠查看文件被哪一個進程佔用
[@yd-81-130 nginx] # lsof | grep /data/log/scribelog
bash       4171    smc  cwd       DIR               0,23     16384                17797 /data/log/scribelog/user (10.13.81.44: /data/scribelog/ )
cat        4172    smc  cwd       DIR               0,23     16384                17797 /data/log/scribelog/user (10.13.81.44: /data/scribelog/ )

查看端口是否在監聽:(最後一列顯示哪一個進程在監聽這個端口)spa

[@yd-81-74 ~] # netstat -nalp | grep 8080
tcp        0      0 10.13.81.74:8080            0.0.0.0:*                   LISTEN      30469 /java

比較兩個文件是否同樣:線程

md5sum targetfile.txt > targetfile.md5
把targetfile.md5和targetfile.txt放到同一目錄下進行校驗:
md5sum -c targetfile.md5

jar包操做:日誌

jar - tvf xxxx.jar  查看類文件
jar - xvf xxxx.jar  解壓到當前目錄

使用awk(日誌處理):code

相關文章
相關標籤/搜索