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