linux常用的簡單命令(三)tar、scp、df/du、ps、free、top、netstat、tcpdump、kill、reboot/halt/poweroff、shutdown __linux

來源:互聯網
上載者:User

1.1     打包解包命令(tar)
常用打包命令:tar,一般搭配如下參數使用:

-c:建立壓縮檔的參數命令(create)

-x:解壓縮檔案的參數命令

-z:是否同時具有gzip屬性?是否需要用gzip壓縮?

-j:是否同時具有bzip2熟悉。是否需要用bzip2壓縮。

-v:壓縮的過程中顯示檔案。

-f:使用檔案名稱,注意,在f之後要立即接檔案名稱。不要再增加新的參數。

1.1.1    打包命令
例如:

將以sms_mt開頭的所有檔案打包成名為sms_mt.tar包。

root@[/mas/log/sms/bak]$ tar -cvf sms_mt.tar sms_mt*

將以sms_mt開頭的所有檔案打包成為sms_mt.tar.gz包。

root@[/mas/log/sms/bak]$ tar -zcvf sms_mt.tar.gz sms_mt*

將以sms_mt開頭的所有檔案打包成為sms_mt.tar.bz2包。

root@[/mas/log/sms/bak]$ tar -jcvf sms_mt.tar.bz2 sms_mt*

1.1.2    解包命令
將sms_mt.tar包解包。

root@[/mas/log/sms/bak]$ tar -xvf sms_mt.tar

將sms_mt.tar.gz包解包。

root@[/mas/log/sms/bak]$ tar -zxvf sms_mt.tar.gz

將sms_mt.tar.bz2包解包。

root@[/mas/log/sms/bak]$ tar -jxvf sms_mt.tar.bz2

 

1.2     遠程登入命令(ssh)
遠程登入命令:ssh 登入使用者@IP -p連接埠

例如:從某伺服器上登入至172.16.9.28伺服器,ssh連接埠為8015

root@[/root]$ ssh mas@172.16.9.28 -p8015

mas@172.16.9.28's password: (此處填寫172.16.9.28伺服器的mas使用者密碼)

Last login: Wed Aug  5 09:04:11 2009 from 172.18.25.203

mas@[/mas]$

 

1.3     遠程傳輸命令(scp)
遠程登入命令:scp -P連接埠 傳輸檔案 使用者@IP:目的路徑

例如:從某伺服器上傳輸DbBackUpFileDelete.pid檔案至172.16.9.48

mas@[/mas]$ scp -P8015 DbBackUpFileDelete.pid mas@172.16.9.48:/mas

mas@172.16.9.28's password: (172.16.9.28伺服器的mas使用者密碼)

 

1.4     查看磁碟檔案空間(df/du)
1.4.1    查看系統各個磁碟使用方式
查看各磁碟空間檔案系統和使用方式:df,常用參數如下:

-a或--all   包含全部的檔案系統;

-h或--human-readable   以可讀性較高的方式來顯示資訊;

       -H或--si   與-h參數相同,但在計算時是以1000 Bytes為換算單位而非1024 Bytes;

       -i或--inodes   顯示inode的資訊;

  -k或--kilobytes  指定區塊大小為1024位元組;

  -l或--local   僅顯示本地端的檔案系統;

  -m或--megabytes   指定區塊大小為1048576位元組;

例如:使用df –h查看當前系統的容量和已用空間、可用空間等詳細資料。

mas@[/mas/libsrc]$ df -h

檔案系統              容量  已用 可用 已用% 掛載點

/dev/mapper/rootvg-lvroot  16G  386M   15G   3% /

/dev/mapper/rootvg-lvhome 992M   34M  908M   4% /home

/dev/mapper/rootvg-lvvar   20G  293M   19G   2% /var

/dev/mapper/appvg-lvmysql  21G  249M   20G   2% /var/lib/mysql

/dev/mapper/rootvg-lvusr    18G  3.5G   13G  21% /usr

/dev/mapper/appvg-lvapp    9.7G  435M  8.8G   5% /app

/dev/mapper/appvg-lvbak    9.7G  905M  8.4G  10% /bak

/dev/mapper/appvg-lvmas    48G  3.6G   42G   8% /mas

/dev/sda1              99M   12M   83M  13% /boot

tmpfs                 506M     0  506M   0% /dev/shm

 

1.4.2    查看目錄或者檔案使用方式
查看各檔案或者目錄大小使用命令:du,常用參數如下:

-a或-all   顯示目錄中個別檔案的大小;

-b或-bytes   顯示目錄或檔案大小時,以byte為單位;

-c或--total   除了顯示個別目錄或檔案的大小外,同時也顯示所有目錄或檔案的總和;

-D或--dereference-args   顯示指定符號串連的源檔案大小;

-h或--human-readable   以K,M,G為單位,提高資訊的可讀性;

-H或--si   與-h參數相同,但是K,M,G是以1000為換算單位;

-k或--kilobytes   以1024 bytes為單位;

-l或--count-links   重複計算硬體串連的檔案;

-L<符號串連>或--dereference<符號串連>   顯示選項中所指定符號串連的源檔案大小;

-m或--megabytes   以1MB為單位;

-s或--summarize   僅顯示總計;

-S或--separate-dirs   顯示個別目錄的大小時,並不含其子目錄的大小;

-x或--one-file-xystem   以一開始處理時的檔案系統為準,若遇上其它不同的檔案系統目錄則略過。

例如:使用du –h查看目前的目錄下檔案大小。

mas@[/mas/libsrc]$ du -h

88K     ./svr_common

2.1M    ./isdn_head

60K     ./sms_moden

2.5M    ./mas2

13M     .

 

1.5     查看系統進程(ps)
查看系統各進程執行狀況的命令:ps,常用參數如下:

-a  顯示所有終端機下執行的程式,除了階段作業領導者之外;

a  顯示現行終端機下的所有程式,包括其他使用者的程式;

-A  顯示所有程式;

-c  顯示CLS和PRI欄位;

c  列出程式時,顯示每個程式真正的指令名稱,而不包含路徑,參數或常駐服務的標示;

-e  此參數的效果和指定"A"參數相同;

e   列出程式時,顯示每個程式所使用的環境變數;

-f  顯示UID,PPIP,C與STIME欄位;

-H  顯示樹狀結構,表示程式間的相互關係;

-j或j  採用工作控制的格式顯示程式狀況;

-l或l  採用詳細的格式來顯示程式狀況;

L  列出欄位的相關資訊;

n  以數字來表示USER和WCHAN欄位;

-u<使用者識別碼>  此參數的效果和指定"-U"參數相同;

u  以使用者為主的格式來顯示程式狀況;

x  顯示所有程式,不以終端機來區分;

X   採用舊式的Linux i386登陸格式顯示程式狀況。

 

例如:使用ps aux|grep gwinit_db查看gwiinit_db進程相關的資訊。

mas@[/mas/libsrc]$ ps aux|grep gwiinit_db

mas       7944  0.0  0.0   5180   692 pts/7    S+   20:24   0:00 grep gwiinit_db

 

1.6     顯示記憶體狀態(free)
顯示記憶體狀態的命令:free,一般顯示記憶體的使用方式,包括實體記憶體,虛擬分頁檔記憶體,共用記憶體區段,以及系統核心使用的緩衝區等。常用參數如下:

-b  以Byte為單位顯示記憶體使用量情況;

-k  以KB為單位顯示記憶體使用量情況;

-m  以MB為單位顯示記憶體使用量情況;

-o  不顯示緩衝區調節列;

-s<間隔秒數>  持續觀察記憶體使用量狀況;

-t  顯示記憶體總和列;

-V  顯示版本資訊。

       例如:使用free -m查看當前系統記憶體使用量情況:

mas@[/mas/libsrc]$ free -m

             total       used       free     shared    buffers     cached

Mem:        1010       985        24      0         56        112

-/+ buffers/cache: 816      194

Swap:         4095      673       3422

 

1.7     顯示系統資源(top)
    顯示系統資源命令:top。它是Linux下常用的效能分析工具,能夠即時顯示系統中各個進程的資源佔用狀況,類似於Windows的工作管理員。下面詳細介紹它的使用方法。

root@[/root]$ top

top - 01:06:48 up  1:22,  1 user,  load average: 0.06, 0.60, 0.48

Tasks:  29 total,   1 running,  28 sleeping,   0 stopped,   0 zombie

Cpu(s):  0.3% us,  1.0% sy,  0.0% ni, 98.7% id,  0.0% wa,  0.0% hi,  0.0% si

Mem:    191272k total,   173656k used,    17616k free,    22052k buffers

Swap:   192772k total,        0k used,   192772k free,   123988k cached

 

PID USER     PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND

1379 root      16   0  7976 2456 1980 S  0.7  1.3   0:11.03 sshd

1470 root      16   0  2128  980  796 R  0.7  0.5   0:02.72 top

1471 root      16   0  1992  632  544 S  0.0  0.3   0:00.90 init

1472 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0

1473 root      13  0     0    0    0 S  0.0  0.0   0:00.00 watchdog/0

 

各列的含義如下:

序號                     列名                            含義

a                          PID               進程id

b                          PPID             父進程id

c                          RUSER          Real user name

d                          UID              進程所有者的使用者id

e                          USER             進程所有者的使用者名稱

f                          GROUP          進程所有者的組名

g                          TTY              啟動進程的終端名。不是從終端啟動的進程則顯示為。

h                          PR                 優先順序

i                           NI                 nice值,負值表示高優先順序,正值表示低優先順序

j                           P                   最後使用的CPU,僅在多CPU環境下有意義

k                          %CPU            上次更新到現在的CPU時間佔用百分比

l                           TIME            進程使用的CPU時間總計,單位秒

m                         TIME+          進程使用的CPU時間總計,單位1/100秒

n                          %MEM         進程使用的實體記憶體百分比

o                          VIRT            進程使用的虛擬記憶體總量,單位kb。VIRT=SWAP+RES

p                          SWAP            進程使用的虛擬記憶體中,被換出的大小,單位kb。

q                          RES              進程使用的、未被換出的實體記憶體大小,單位kb。

r                           CODE            可執行代碼佔用的實體記憶體大小,單位kb

s                           DATA           可執行代碼以外的部分佔用的實體記憶體大小,單位kb

t                           SHR              共用記憶體大小,單位kb

u                          nFLT             分頁錯誤次數

v                          nDRT            最後一次寫入到現在,被修改過的頁面數。

w                         S                  進程狀態。(其中: D=不可中斷的睡眠狀態;R=運行;

S=睡眠;T=跟蹤/停止; Z=殭屍進程)

 x                         COMMAND 命令名/命令列

 y                       WCHAN        若該進程在睡眠,則顯示睡眠中的系統函數名

 z                         Flags             任務標誌

預設情況下僅顯示比較重要的 PID、USER、PR、NI、VIRT、RES、SHR、S、%CPU、%MEM、TIME+、COMMAND列。

 

1.8     顯示系統網路狀況(netstat)
顯示系統網路狀況常用命令:netstat,該命令可以查看整個Linux系統的網路情況(一般只有root使用者擁有執行該命令的許可權)。常用參數如下:

  -a或--all   顯示所有連線中的Socket;

  -A<網路類型>或--<網路類型>   列出該網路類型連線中的相關地址;

  -c或--continuous   持續列出網路狀態;

  -C或--cache   顯示路由器配置的快取資訊;

  -e或--extend   顯示網路其他相關資訊;

  -F或--fib   顯示FIB;

  -g或--groups   顯示多重廣播功能群組組員名單;

  -h或--help   線上協助;

  -i或--interfaces   顯示網路介面資訊表單;

  -l或--listening   顯示監控中的伺服器的Socket;

  -M或--masquerade   顯示偽裝的網路連線;

  -n或--numeric   直接使用IP地址,而不通過網域名稱伺服器;

  -N或--netlink或--symbolic   顯示網路硬體外圍裝置的符號串連名稱;

  -o或--timers   顯示計時器;

  -p或--programs   顯示正在使用Socket的程式識別碼和程式名稱;

  -r或--route   顯示Routing Table;

  -s或--statistice   顯示網路工作資訊統計表;

  -t或--tcp   顯示TCP傳輸協議的連線狀況;

  -u或--udp   顯示UDP傳輸協議的連線狀況;

  -v或--verbose   顯示指令執行過程;

  -V或--version   顯示版本資訊;

  -w或--raw   顯示RAW傳輸協議的連線狀況;

  -x或--unix   此參數的效果和指定"-A unix"參數相同;

  --ip或--inet   此參數的效果和指定"-A inet"參數相同。

例如:查看連接埠7890是否已被某進程佔用。

root@[/root]$ netstat -anp |grep 7890

tcp  0 0 0.0.0.0:7890       0.0.0.0:*            LISTEN      24536/mscp

tcp  0 0 172.16.9.48:45221  221.130.33.92:7890   ESTABLISHED 24464/mscp

 

 

 

 

1.9     網路資料包抓取命令(tcpdump)
網路資料包抓取使用命令:tcpdump,該命令通常只有root擁有執行許可權。常用參數如下:

-i <網卡連接埠>   使用指定的網卡連接埠送出資料包;

-s <資料包大小>   設定每個資料包的大小;

-w <資料包檔案>   把資料包資料寫入指定的檔案

 

例如:抓取發送給目的地址221.130.33.91,連接埠為tcp 8080

root@[/root]$ tcpdump -i eth0 tcp port 8080  and host 221.130.33.91 -s 0 -w mas_mms.cap

tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes

(使用”ctrl”+”c”按鍵組合終止抓包命令,只是擷取的資料包被寫入mas_mms.cap檔案中)

13 packets captured

13 packets received by filter

0 packets dropped by kernel

 

擷取的網路資料包通常可以使用Ethereal工具分析。

1.10            進程的刪除(kill)
進程的刪除使用命令:kill,一般和-9搭配使用。

例如:可以先通過ps命令尋找tomcat的pid,在通過kill命令強制結束該進程。

root@[/mas/guoleia/mysrc/gb2uni]$ ps -ef|grep gwiinit_db

mas       1446     1  0 22:04 ?        00:00:00 mscp gwiinit_db

root       2094  20812  0 22:08 pts/26   00:00:00 grep gwiinit_db

root@[/mas/guoleia/mysrc/gb2uni]$ kill -9 1446

 

1.11            重啟命令(reboot、halt、poweroff)
重啟命令:reboot、halt、poweroff都差不多,和shutdown -r now幾乎相同。

 

1.12            關機命令(shutdown)
關機命令:shutdown,可以關閉所有程式,並依使用者的需要,進行重新開機或關機的動作。常用參數如下:

-c  當執行"shutdown -h 11:50"指令時,只要按+鍵就可以中斷關機的指令;

-f  重新啟動時不執行fsck;

-F  重新啟動時執行fsck;

 -h  將系統關機;

 -k  只是送出資訊給所有使用者,但不會實際關機;

 -n  不調用init程式進行關機,而由shutdown自己進行;

 -r  shutdown之後重新啟動;

 -t<秒數>  送出警告資訊和刪除資訊之間要延遲多少秒。

例如:

立即關機:

root@[/root]$ shutdown -h now

在當天20:25分定時關機:

root@[/root]$ shutdown -h 20:25

系統再過十分鐘自動關機:

root@[/root]$ shutdown -h +10

系統馬上重啟:

root@[/root]$ shutdown –r now

 

本文來自CSDN部落格,轉載請標明出處:http://blog.csdn.net/grredowen/archive/2009/10/30/4749101.aspx

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.