散仙学shell命令(三)と


本編では主に、linuxプロセスの管理、ディスク情報統計、CPU、メモリなどのコマンドについて説明します.
実際の開発では、linuxシステムの状況は、サーバの実行情報、cpu負荷、メモリ占有、ディスクなどを直接反映することができるので、これらのコマンドを把握することで、linuxシステムのより迅速かつ専門的な管理に役立ちます.
(1),psコマンド,システムプロセスの探査.
[search@h1 ~]$ ps
  PID TTY          TIME CMD
17847 pts/0    00:00:00 bash
17977 pts/0    00:00:00 ps
[search@h1 ~]$ 

デフォルトでは、psコマンドはあまり情報を表示せず、pidプロセス番号とその端末TTYで実行され、プロセスに使用されたCPU時間、および実行されたコマンドのみが表示されます.
では、通常は実際の開発ではps-eflコマンドを使って、より多くの情報を表示します.
F S UID        PID  PPID  C PRI  NI ADDR SZ WCHAN  STIME TTY          TIME CMD
4 S root         1     0  0  80   0 -  4808 poll_s Aug01 ?        00:00:01 /sbin/init
1 S root         2     0  0  80   0 -     0 kthrea Aug01 ?        00:00:00 [kthreadd]
1 S root         3     2  0 -40   - -     0 migrat Aug01 ?        00:00:00 [migration/0]
1 S root         4     2  0  80   0 -     0 ksofti Aug01 ?        00:00:00 [ksoftirqd/0]
1 S root         5     2  0 -40   - -     0 cpu_st Aug01 ?        00:00:00 [migration/0]
5 S root         6     2  0 -40   - -     0 watchd Aug01 ?        00:00:00 [watchdog/0]
1 S root         7     2  0  80   0 -     0 worker Aug01 ?        00:00:15 [events/0]
1 S root         8     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [cgroup]
1 S root         9     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [khelper]
1 S root        10     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [netns]
1 S root        11     2  0  80   0 -     0 async_ Aug01 ?        00:00:00 [async/mgr]
1 S root        12     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [pm]
1 S root        13     2  0  80   0 -     0 bdi_sy Aug01 ?        00:00:00 [sync_supers]
1 S root        14     2  0  80   0 -     0 bdi_fo Aug01 ?        00:00:00 [bdi-default]
1 S root        15     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [kintegrityd/0]
1 S root        16     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [kblockd/0]
1 S root        17     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [kacpid]
1 S root        18     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [kacpi_notify]
1 S root        19     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [kacpi_hotplug]
1 S root        20     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [ata_aux]
1 S root        21     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [ata_sff/0]
1 S root        22     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [ksuspend_usbd]
5 S root        23     2  0  80   0 -     0 hub_th Aug01 ?        00:00:00 [khubd]
5 S root        24     2  0  80   0 -     0 serio_ Aug01 ?        00:00:00 [kseriod]
1 S root        25     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [md/0]
1 S root        26     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [md_misc/0]
1 S root        27     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [linkwatch]
1 S root        28     2  0  80   0 -     0 watchd Aug01 ?        00:00:00 [khungtaskd]
1 S root        29     2  0  80   0 -     0 kswapd Aug01 ?        00:00:00 [kswapd0]
1 S root        30     2  0  85   5 -     0 ksm_sc Aug01 ?        00:00:00 [ksmd]
1 S root        31     2  0  99  19 -     0 khugep Aug01 ?        00:00:00 [khugepaged]
1 S root        32     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [aio/0]
1 S root        33     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [crypto/0]
1 S root        38     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [kthrotld/0]
1 S root        39     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [pciehpd]
1 S root        41     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [kpsmoused]
1 S root        42     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [usbhid_resumer]
1 S root        73     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [kstriped]
1 S root       145     2  0  80   0 -     0 scsi_e Aug01 ?        00:00:00 [scsi_eh_0]
1 S root       146     2  0  80   0 -     0 scsi_e Aug01 ?        00:00:00 [scsi_eh_1]
1 S root       153     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [mpt_poll_0]
1 S root       154     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [mpt/0]
1 S root       155     2  0  80   0 -     0 scsi_e Aug01 ?        00:00:00 [scsi_eh_2]
1 S root       295     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [kdmflush]
1 S root       297     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [kdmflush]
1 S root       314     2  0  80   0 -     0 kjourn Aug01 ?        00:00:00 [jbd2/dm-0-8]
1 S root       315     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [ext4-dio-unwrit]
5 S root       389     1  0  76  -4 -  2769 poll_s Aug01 ?        00:00:00 /sbin/udevd -d
1 S root       408     2  0  80   0 -     0 bdi_wr Aug01 ?        00:00:00 [flush-253:0]
1 S root       602     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [vmmemctl]
1 S root       721     2  0  80   0 -     0 kjourn Aug01 ?        00:00:00 [jbd2/sda1-8]
1 S root       722     2  0  80   0 -     0 worker Aug01 ?        00:00:00 [ext4-dio-unwrit]
1 S root       765     2  0  80   0 -     0 kaudit Aug01 ?        00:00:00 [kauditd]
1 S root       904     1  0  80   0 -  2280 poll_s Aug01 ?        00:00:00 /sbin/dhclient -1 -q -lf /var/lib/dhclient/dhclient-eth0.leases -pf /var/run/dhclient-eth0.pid eth0
5 S root       941     1  0  80   0 - 62799 poll_s Aug01 ?        00:00:00 /sbin/rsyslogd -i /var/run/syslogd.pid -c 5
5 S root       983     1  0  80   0 - 16651 poll_s Aug01 ?        00:00:00 /usr/sbin/sshd
4 S root      1077     1  0  80   0 - 20318 ep_pol Aug01 ?        00:00:00 /usr/libexec/postfix/master
1 S root      1091     1  0  80   0 - 29323 hrtime Aug01 ?        00:00:00 crond
4 S postfix   1102  1077  0  80   0 - 20380 ep_pol Aug01 ?        00:00:00 qmgr -l -t fifo -u
4 S root      1109     1  0  80   0 -  1016 n_tty_ Aug01 tty1     00:00:00 /sbin/mingetty /dev/tty1
4 S root      1111     1  0  80   0 -  1016 n_tty_ Aug01 tty2     00:00:00 /sbin/mingetty /dev/tty2
4 S root      1113     1  0  80   0 -  1016 n_tty_ Aug01 tty3     00:00:00 /sbin/mingetty /dev/tty3
4 S root      1115     1  0  80   0 -  1016 n_tty_ Aug01 tty4     00:00:00 /sbin/mingetty /dev/tty4
4 S root      1118     1  0  80   0 -  1016 n_tty_ Aug01 tty5     00:00:00 /sbin/mingetty /dev/tty5
4 S root      1122     1  0  80   0 -  1016 n_tty_ Aug01 tty6     00:00:00 /sbin/mingetty /dev/tty6
5 S root      1127   389  0  78  -2 -  2768 poll_s Aug01 ?        00:00:00 /sbin/udevd -d
5 S root      1128   389  0  78  -2 -  2768 poll_s Aug01 ?        00:00:00 /sbin/udevd -d
4 S root     17790   983  0  80   0 - 25099 poll_s 04:01 ?        00:00:00 sshd: root@pts/0 
4 S root     17795 17790  0  80   0 - 27104 wait   04:01 pts/0    00:00:00 -bash
4 S root     17846 17795  0  80   0 - 36358 wait   04:14 pts/0    00:00:00 su - search
4 S search   17847 17846  0  80   0 - 27107 wait   04:14 pts/0    00:00:00 -bash
4 S postfix  17972  1077  0  80   0 - 20338 ep_pol 04:29 ?        00:00:00 pickup -l -t fifo -u
0 R search   17979 17847  0  80   0 - 27558 -      04:44 pts/0    00:00:00 ps -efl
[search@h1 ~]$ 

-eパラメータは主にすべてのプロセスを表示します.
-fパラメータは主に完全なフォーマット出力を表示する
-lパラメータ、追加のプロセスタグ、優先度など
以下、これらの列がそれぞれ表す意味を紹介します.
これらのプロセスを開始するユーザを表すUID
PID、プロセスのプロセス番号
PPID、親プロセスのプロセス番号、そのプロセスを表し、その親プロセスによって開始される
C,jプロセスライフサイクルにおけるCPU利用率
STIME、プロセス起動のシステム時間
TTY,プロセス起動時の端末装置
TIME,プロセス実行に必要な累計CPUの時間
CMD、起動したプログラム名
F,カーネルがプロセスに割り当てられたシステムタグ
S、プロセスの状態、0は運行を代表して、Sは休眠していることを代表して、Rは運行することができることを代表して、運行を待つことを代表して、Zはゾンビのプロセスを代表します
PRI、プロセスの優先度、大きい数字ほど優先度が低い
NI、優先度に参加するための謙譲度値
ADDR、プロセスのメモリアドレス
SZは、プロセスが呼び出されると、必要な交換空間の大きさ
WCHAN,プロセススリープカーネル関数のアドレス
ps-efHパラメータは、ツリー状にプロセス情報を表示することができ、それらのプロセスがそれらのプロセスを開始したことを簡単に見ることができます.
root       721     2  0 Aug01 ?        00:00:00   [jbd2/sda1-8]
root       722     2  0 Aug01 ?        00:00:00   [ext4-dio-unwrit]
root       765     2  0 Aug01 ?        00:00:00   [kauditd]
root         1     0  0 Aug01 ?        00:00:01 /sbin/init
root       389     1  0 Aug01 ?        00:00:00   /sbin/udevd -d
root      1127   389  0 Aug01 ?        00:00:00     /sbin/udevd -d
root      1128   389  0 Aug01 ?        00:00:00     /sbin/udevd -d
root       904     1  0 Aug01 ?        00:00:00   /sbin/dhclient -1 -q -lf /var/lib/dhclient/dhclient-eth0.leases -pf /var/run/dhclient-eth0.pid eth0
root       941     1  0 Aug01 ?        00:00:00   /sbin/rsyslogd -i /var/run/syslogd.pid -c 5
root       983     1  0 Aug01 ?        00:00:00   /usr/sbin/sshd
root     17790   983  0 04:01 ?        00:00:00     sshd: root@pts/0 
root     17795 17790  0 04:01 pts/0    00:00:00       -bash
root     17846 17795  0 04:14 pts/0    00:00:00         su - search
search   17847 17846  0 04:14 pts/0    00:00:00           -bash
search   17984 17847  0 04:51 pts/0    00:00:00             ps -efH
root      1077     1  0 Aug01 ?        00:00:00   /usr/libexec/postfix/master
postfix   1102  1077  0 Aug01 ?        00:00:00     qmgr -l -t fifo -u
postfix  17972  1077  0 04:29 ?        00:00:00     pickup -l -t fifo -u
root      1091     1  0 Aug01 ?        00:00:00   crond
root      1109     1  0 Aug01 tty1     00:00:00   /sbin/mingetty /dev/tty1
root      1111     1  0 Aug01 tty2     00:00:00   /sbin/mingetty /dev/tty2
root      1113     1  0 Aug01 tty3     00:00:00   /sbin/mingetty /dev/tty3
root      1115     1  0 Aug01 tty4     00:00:00   /sbin/mingetty /dev/tty4
root      1118     1  0 Aug01 tty5     00:00:00   /sbin/mingetty /dev/tty5
root      1122     

(2)リアルタイムモニタリングプロセス情報,topコマンド
[search@h1 ~]$ top
top - 04:52:35 up  5:23,  1 user,  load average: 0.00, 0.00, 0.00
Tasks:  73 total,   1 running,  72 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.3%us,  0.0%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   2913304k total,   183724k used,  2729580k free,    27532k buffers
Swap:  2031608k total,        0k used,  2031608k free,    64120k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                            
    7 root      20   0     0    0    0 S  0.3  0.0   0:15.84 events/0                                                                                                           
    1 root      20   0 19232 1488 1220 S  0.0  0.1   0:01.06 init                                                                                                               
    2 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kthreadd                                                                                                           
    3 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/0                                                                                                        
    4 root      20   0     0    0    0 S  0.0  0.0   0:00.02 ksoftirqd/0                                                                                                        
    5 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/0                                                                                                        
    6 root      RT   0     0    0    0 S  0.0  0.0   0:00.07 watchdog/0                                                                                                         
    8 root      20   0     0    0    0 S  0.0  0.0   0:00.00 cgroup                                                                                                             
    9 root      20   0     0    0    0 S  0.0  0.0   0:00.00 khelper                                                                                                            
   10 root      20   0     0    0    0 S  0.0  0.0   0:00.00 netns                                                                                                              
   11 root      20   0     0    0    0 S  0.0  0.0   0:00.00 async/mgr                                                                                                          
   12 root      20   0     0    0    0 S  0.0  0.0   0:00.00 pm                                                                                                                 
   13 root      20   0     0    0    0 S  0.0  0.0   0:00.47 sync_supers                                                                                                        
   14 root      20   0     0    0    0 S  0.0  0.0   0:00.15 bdi-default                                                                                                        
   15 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kintegrityd/0                                                                                                      
   16 root      20   0     0    0    0 S  0.0  0.0   0:00.20 kblockd/0                                                                                                          
   17 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kacpid                                                                                                             
   18 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kacpi_notify                                                                                                       
   19 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kacpi_hotplug                                                                                                      
   20 root      20   0     0    0    0 S  0.0  0.0   0:00.00 ata_aux                                                                                                            
   21 root      20   0     0    0    0 S  0.0  0.0   0:00.00 ata_sff/0                                                                                                          
   22 root      20   0     0    0    0 S  0.0  0.0   0:00.00 ksuspend_usbd                                                                                                      
   23 root      20   0     0    0    0 S  0.0  0.0   0:00.00 khubd                                                                                                              
   24 root      20   0     0    0    0 S  0.0  0.0   0:00.01 kseriod                                                                                                            
   25 root      20   0     0    0    0 S  0.0  0.0   0:00.00 md/0                                                                                                               
   26 root      20   0     0    0    0 S  0.0  0.0   0:00.00 md_misc/0                                                                                                          
   27 root      20   0     0    0    0 S  0.0  0.0   0:00.00 linkwatch                                                                                                          
   28 root      20   0     0    0    0 S  0.0  0.0   0:00.00 khungtaskd                                                                                                         
   29 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kswapd0                                                                                                            
   30 root      25   5     0    0    0 S  0.0  0.0   0:00.00 ksmd                                                                                                               
   31 root      39  19     0    0    0 S  0.0  0.0   0:00.08 khugepaged                                                                                                         
   32 root      20   0     0    0    0 S  0.0  0.0   0:00.00 aio/0         

平均負荷は、3つの値、最近1分、最近5分、および最近15分であり、値が大きいほど負荷が高くなりますが、15分で負荷が高くなると、システムに問題が発生する可能性があります.
出力では、最初の行に現在の時間、システムの実行時間、ログインしたユーザー数、およびシステムの平均負荷が表示されます.
2行目には、サマリーのプロセス情報が表示され、topで出力されたプロセスはtaskと呼ばれ、実行、スリープ、停止、またはゾンビプロセス(プロセスは完了したが、親プロセスは応答しなかった)が表示されます.
3行目にCPU情報が表示され、プロセスの状態、運転、スペース、待機などが表示されます
4行目には、システムのメモリ情報が表示されます.合計メモリ、使用量、空き量が表示されます.
5行目には、スワップメモリの使用状況が表示されます.
(3),プロセスコマンドkillを終了することも,実際の使用において非常に重要なコマンドである.
通常kill-9プロセス番号を使用して、プロセスを殺します.-9は無条件停止を表します.
killallコマンドは、プロセス名でプロセスを停止したり、共通の方法でプロセスのセットを停止したりすることができます.
たとえばapacheのプロセスを閉じるには、コマンドkillall http*を使用します.
(4)free-mコマンド、現在のシステムのメモリ状況を表示する
[search@h1 ~]$ free -m
             total       used       free     shared    buffers     cached
Mem:          2845        179       2665          0         27         62
-/+ buffers/cache:         89       2755
Swap:         1983          0       1983
[search@h1 ~]$ 

(5)mountコマンド、メディアのマウント、ディスクの新規追加に必要なコマンド.使用法mount-t type directory
[search@h1 ~]$ mount
/dev/mapper/vg_h1-lv_root on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
[search@h1 ~]$ 

モバイルデバイスを削除する情報コマンドumount directory device
(6)dfコマンド、ディスク詳細の照会
[search@h1 ~]$ df -h
Filesystem                 Size  Used Avail Use% Mounted on
/dev/mapper/vg_h1-lv_root   18G  3.6G   13G  22% /
tmpfs                      1.4G     0  1.4G   0% /dev/shm
/dev/sda1                  485M   32M  428M   7% /boot
[search@h1 ~]$ 

−hパラメータは、バイトではなく、人間の肉眼がより読みやすい形式にバイトを変換するために使用することができる.
(7)duコマンドは、特定のディスクの下に、各ファイルが占める空間の大きさを表示します.このコマンドを使用して、通常、あるディスクの下に大きなファイルがあるかどうかを判断することができます.
一般的な組み合わせの使用方法はdu-chs*です.
[search@h1 ~]$ du -chs *
138M    abc1.txt
52M     apache-hive-0.13.1-bin.tar.gz
4.0K    count.txt
232K    filehivebak
4.0K    formathadoop.sh
380M    hadoop
0       hbase
308M    hbase-0.96.2-hadoop2
76M     hbase-0.96.2-hadoop2-bin.tar.gz
219M    hive
1.2G       
[search@h1 ~]$ 

-c、リストされているすべてのファイルの合計サイズを表示します.
-h、人間が読めるようにサイズを出力
-s、各出力パラメータの合計を表示
散仙はこの命令を単独で使うのはあまり役に立たないと思って、普通はすべて組み合わせて使います