linux shell 一些常用命令(ubuntu)

NO IMAGE

(注:這些常用的操作寫在這裡只是為了方便忘記時檢視,裡面可能會有 些錯誤,若發現了,請及時聯絡更正下,這裡也會不定期更新內容的)

1.設定檔案/目錄的許可權
字元形式的chmod命令:
chmod [ugoa][ -=][rwx] 檔案或者目錄
引數如下:
			“u”表示檔案所有者
			“g”表示檔案所屬組
			“o”表示其他使用者
			“a“表示所有使用者
命令選項中用” -=“表示許可權設定的操作動作:
	    ” “表示增加相應許可權;
”-“表示減少相應許可權;
”=“表示賦值許可權。
eg:         chmod a-x mymkdir
2.如何進入root賬戶:
  sudo -i
  輸入密碼即可
3.如何檢視磁碟分配情況(兩種方法):
  fdisk -l
  df -hT
4.讓系統重新探測磁碟的分割槽情況:
  partprobe /dev/sdb(需要分割槽的磁碟)
5.對硬碟進行分割槽:
  fdisk /dev/sdb     進入互動式的分割槽管理介面中,然後驚醒相應的操作即可
6.對分割槽的格式化:
 
分割槽沒有格式化是不能夠使用的,格式化分割槽的主要目的是在分割槽中建立檔案系統。Linux專用的檔案系統是ext,包含ext2,ext3,ext4等諸多版本。另外,Linux也支援Window中的FAT32檔案系統,Linux中表示為vfat.
  格式化分割槽的命令是mkfs,使用“-t”選項制定所要採用的檔案系統型別。
  mkfs命令的基本格式:
       mkfs -t 檔案系統型別
分割槽裝置
  eg:   mkfs -t ext4 /dev/sdb1
        mkfs -t vfat /dev/sdb5
7.du命令-檢視目錄或檔案佔用空間的大小
  -h,以K,M,G為單位顯示統計結果(預設單位為位元組).
  -s,檢視目錄本身的大小(不加該選項,則會顯示制定目錄下所有子目錄的大小).
  du命令支援萬用字元,如要檢視根目錄下每個目錄的大小.
  Eg:
      du -h /root/install.log
      du -hs /dev
      du -sh *
8.tar命令-檔案打包和壓縮
  
Linux中最常用的打包命令為tar。最常用的壓縮命令有兩個:gzip和bzip2,用gzip製作的壓縮檔案通常使用副檔名”.gz“,用bzip2製作的壓縮檔案通常使用副檔名”.bz2”.
  
bzip2的壓縮效率比gzip更高,但是它們都只能針對單個檔案進行壓縮和解壓,所以通常都是先通過tar命令將多個檔案或目錄打包成一個包檔案,然後再通過gzip或bzip2進行壓縮,如×.tar.gz和*.tar.bz2就是屬於這種先打包再壓縮的檔案.
  
實際使用中,一般都是通過tar命令來呼叫gzip或bzip2進行壓縮或解壓,而很少去單獨使用gzip或bzip2命令.
1.打包壓縮
 tar命令本身只能對目錄和檔案進行打包,而並不進行壓縮.
 tar [選項]
打包或解壓縮檔名
需要打包的原始檔或目錄
 -c,建立.tar格式的包檔案,該選項不會對包檔案進行壓縮,所以得到的打包檔案與原始檔的大小相
 -v,顯示命令的執行過程。
 -f,使用打包檔案.
 -z,使用gzip來壓縮包檔案
 -j,使用bzip2來壓縮包檔案
eg: tar -jcvf home.tar.bz2 /home
2.解包解壓縮
 tar
[選項]
打包或壓縮檔名
[-C
目標目錄]
-x”選項表示解開.tar格式的包檔案.
-C”選項表示指定解壓後檔案存放的目的位置
(注意,C是大寫).
Eg: tar -zxvf home.tar.gz
    tar
-jxvf home.tar.bz2 -C home2
3.檢視打包或壓縮檔案內的內容
  -t
選項顯示打包檔案中的內容。
 Eg:
tar -ztvf home.tar.bz2
9.檢視程序狀態
   (1)檢視當前程序:ps
  
(2)檢視當前程序的詳細資訊:ps -l
      各項含義如下:
-“s”表示程序狀態。程序狀態型別主要有:R執行狀態或就緒狀態;S休眠狀態,但可以
中斷,D休眠狀態,但不可以中斷;T暫停或終止狀態;Z僵死狀態,程序已經停止,但無法移出記憶體.
-“UID”,程序啟動者的使用者ID
-“PID”,程序ID,PID是唯一的,但並不固定.
-“PPID”,當前程序的父程序的ID。
-”C“,程序最近使用CPU的估算。
-”PRI/NI“,程序的優先順序,數字越小優先順序越高。
-”SZ”,程序佔用記憶體空間的大小,以KB為單位。
-“WCHAN”,表示程序是否正在執行,“-”表示正在執行中。
-“TTY”,程序所在終端的終端號,其中桌面環境的模擬終端表示為pts/n(n表示打
開的是第n個終端視窗),字元介面的虛擬終端號為tty1-tty6,“?”表示未知或不佔用終端。
-”TIME“,程序從啟動以來佔用CPU的總時間,儘管有的命令已經運轉了很長時間,但是它們真正使用CPU的時間往往很短,所以該欄位的值通常是00:00:00.
”CMD“,啟動該程序的命令名稱。
    (3)檢視所有程序的詳細資訊
        
ps命令使用”aux“選項可以顯示系統所有程序的詳細資訊。
         選項的含義:
        
-”a“:顯示當前終端上所有的程序,包括其他使用者的程序資訊。
        
-”u“:顯示面向使用者的格式
(包括使用者名稱,CPU及記憶體使用的情況等資訊)
        
-”X“:顯示後臺程序的資訊
   
(4)top命令------檢視程序動態資訊
    
使用ps命令檢視到的是靜態的程序資訊,並不能連續地反饋出當前程序的執行狀態。若希望以動態重新整理的方式顯示各程序的狀態資訊,可以使用top命令。
    top命令將會在當前終端以全屏互動式的介面顯示程序排名,及時跟蹤包括CPU,記憶體等系統資
源佔用情況,預設情況下每10s重新整理一次(實際我在Ubuntu下的重新整理情況是不定的,1s,2s,3s。。。。都有),其作用類似與windows系統中的”工作管理員“。
		在top命令的執行狀態下,可以通過快捷鍵按照不同的方式對顯示結果進行排序。例如,P鍵以CPU使用的時間進行排序,按M鍵以記憶體使用率排序,按N鍵以程序啟動時間排序,按A鍵以PID排序,按Q鍵退出。
(10)控制程序
1.啟動程序:
   手工啟動程序可以分為前臺啟動和後臺啟動。前臺啟動是預設的程序啟動方式,如使用者輸入”ls
-l“命令就會啟動一個前臺程序。當計算機在處理此命令的時候,使用者不能在進行其他操作。
後臺啟動:如果在要執行的命令後面加上一個&“符號,此時程式將轉到後臺執行,其執行結果不在螢幕上顯示,但在此命令的執行過程中,使用者仍可以繼續執行其他的操作。
列如:在後臺執行ls命令:ls
-al>a.txt&
後臺啟動適合於那些執行期間不需要使用者的干預或是執行時間較長的程式。
2.改變程序的執行方式:
  Ctrl Z組合鍵可以將當前程序掛起(調入後臺並停止執行),這種操作在需要暫停當前程序並進行其他操作時特別有用。
  需要檢視當前終端中在後臺執行的程序任務時,可以使用jobs命令,結合”-l“選項可以同時顯示出該程序對應的PID號。
  恢復程序執行時:fg命令將後臺的程序任務重新調入終端的前臺執行,制定後臺程序對應的任務編號。
再次按Ctrl Z組合鍵將該程序暫停,然後用bg命令將程序放回後臺執行:
eg:fg
1
    bg 1
3.終止程序執行:
  通常終止一個前臺程序可以使用Ctrl C組合鍵,對於在其他終端上或是在後臺執行的程序,就需要使用kill命令來終止。
  使用kill命令終止程序時,需要使用程序的PID號作為引數,如使用”jobs
-l“命令查出後臺執行的程序的PID號,然後用kill命令終止。kill命令通過向程序發出終止訊號使其正常退出執行,若程序已經無法響應終止訊號,則可以結合-9“選項強行殺死程序。強制終止程序時可能會導致程式執行的部分資料丟失,因此不到不得已時不要輕易使用”-9“選項。
(11)監視系統資訊
  A.監視使用者資訊
作為一名系統管理員,要時常瞭解並掌握Linux伺服器的裝填和效能等詳細資訊,在本任務中將介紹一些常用的監視系統資訊的方法。
1.users命令:檢視當前登入的使用者名稱
2.who命令:檢視當前登入使用者的詳細資訊
3.w命令:顯示當前登入使用者的詳細資訊(w命令顯示的資訊最詳細,比who命令的資訊還要詳細)
4.踢出系統中的可疑使用者:用who和ps
aux|grep 可疑使用者登入的終端編號(eg:pts/0)
來查詢出可疑使用者登入終端所對應的PID,然後在用kill
-9 PID 強制結束該程序,踢出使用者。
  B.監視資源佔用資訊
   
1.檢視記憶體使用情況:free
     
常用選項:-m,以MB為單位顯示資訊,預設以KB為單位。
             
-s,指定動態顯示時的重新整理頻率
             
eg:free
-m -s 10
     
注意:linux會儘可能使用記憶體,核心會把剩餘的記憶體申請為cache,而cache不屬於free範疇。
所以free很小時不要緊,可用於分配的記憶體不只是free的記憶體,還包括cache的記憶體。
    2.檢視硬碟使用情況
       df -hT
       利用”du -hs“命令可疑檢視某個指定目錄的大小,以便及時瞭解系統中哪個目錄所佔用的空間最大。
例:檢視根目錄下的每個子目錄所佔用空間的大小:
du -hs
/*     (/表示根,*是通用匹配
符)