一.
創(chuàng)新互聯(lián)主要從事做網(wǎng)站、網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)延吉,十載網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18982081108
二.Linux 的文件權(quán)限與目錄配置
1.用戶記錄在/etc/passwd文件中
密碼記錄在/etc/shadow文件中
組名記錄在/etc/group文件中
2.改變文件所屬群組:chgrp [-R] dirname/filename
選項(xiàng)與參數(shù):
-R : 進(jìn)行遞歸(recursive)的持續(xù)變更,亦即連同次目錄下的所有文件、目錄
都更新成為這個(gè)群組之意。常常用在變更某一目錄內(nèi)所有的文件之情況。
改變文件所屬者:chown [-R] 賬號(hào)名稱 文件或目錄
chown [-R] 賬號(hào)名稱:組名 文件或目錄
選項(xiàng)與參數(shù):
-R : 進(jìn)行遞歸(recursive)的持續(xù)變更,亦即連同次目錄下的所有文件都變更
改變文件權(quán)限:chmod [-R] xyz 文件或目錄
選項(xiàng)與參數(shù):
xyz : 就是剛剛提到的數(shù)字類型的權(quán)限屬性,為 rwx 屬性數(shù)值的相加。
-R : 進(jìn)行遞歸(recursive)的持續(xù)變更,亦即連同次目錄下的所有文件都會(huì)變更
3.文件的權(quán)限:
? r (read):可讀取此一文件的實(shí)際內(nèi)容,如讀取文本文件的文字內(nèi)容等;
w (write):可以編輯、新增或者是修改該文件的內(nèi)容(但不含刪除該文件);
x (eXecute):該文件具有可以被系統(tǒng)執(zhí)行的權(quán)限。
目錄的權(quán)限:
w:o 建立新的文件與目錄;
o 刪除已經(jīng)存在的文件與目錄(不論該文件的權(quán)限為何!)
o 將已存在的文件或目錄進(jìn)行更名;
o 搬移該目錄內(nèi)的文件、目錄位置。
x:代表可以進(jìn)入該目錄(可以想象為抽屜的鑰匙)
三.Linux目錄與文件管理
1.建立新目錄:mkdir [-mp] 目錄名稱
選項(xiàng)與參數(shù):
-m :配置文件案的權(quán)限喔!直接設(shè)定,不需要看預(yù)設(shè)權(quán)限 (umask) 的臉色~
-p :幫助你直接將所需要的目錄(包含上層目錄)遞歸建立起來!
2.刪除目錄:rmdir或rm
a :當(dāng)設(shè)定 a 之后,這個(gè)文件將只能增加數(shù)據(jù),而不能刪除也不能修改數(shù)據(jù),只有root 才能設(shè)定這屬性
i :這個(gè) i 可就很厲害了!他可以讓一個(gè)文件『不能被刪除、改名、設(shè)定連結(jié)也無法寫入或新增數(shù)據(jù)!』對(duì)于系統(tǒng)安全性有相當(dāng)大的幫助!只有 root 能設(shè)定此屬性
注意1:屬性設(shè)定常見的是 a 與 i 的設(shè)定值,而且很多設(shè)定值必須要身為 root 才能設(shè)定
注意2:xfs 文件系統(tǒng)僅支援 AadiS 而已
顯示文件隱藏屬性:lsattr [-adR] 文件或目錄
選項(xiàng)與參數(shù):
-a :將隱藏文件的屬性也秀出來;
-d :如果接的是目錄,僅列出目錄本身的屬性而非目錄內(nèi)的文件名;
-R :連同子目錄的數(shù)據(jù)也一并列出來!
13.:文件檔名的搜尋
whereis [-bmsu] 文件或目錄名
選項(xiàng)與參數(shù):
-l :可以列出 whereis 會(huì)去查詢的幾個(gè)主要目錄而已
-b :只找 binary 格式的文件
-m :只找在說明文件 manual 路徑下的文件
-s :只找 source 來源文件
-u :搜尋不在上述三個(gè)項(xiàng)目當(dāng)中的其他特殊文件
bzip2 [-cdkzv#] 檔名
選項(xiàng)與參數(shù):
-c :將壓縮的過程產(chǎn)生的數(shù)據(jù)輸出到屏幕上!
-d :解壓縮的參數(shù)
-k :保留源文件,而不會(huì)刪除原始的文件喔!
-z :壓縮的參數(shù) (默認(rèn)值,可以不加)
-v :可以顯示出原文件/壓縮文件案的壓縮比等信息;
-# :與 gzip 同樣的,都是在計(jì)算壓縮比的參數(shù), -9 最佳, -1 最快!
bzcat 檔名.bz2 #查看壓縮包文檔內(nèi)容 (bzcat/bzmore/bzless)
bzgrep ‘關(guān)鍵字’檔名.gz #從壓縮包拮取關(guān)鍵字
xz [-dtlkc#] 檔名
選項(xiàng)與參數(shù):
-d :就是解壓縮?。?br/>-t :測(cè)試壓縮文件的完整性,看有沒有錯(cuò)誤
-l :列出壓縮文件的相關(guān)信息
-k :保留原本的文件不刪除~
-c :同樣的,就是將數(shù)據(jù)由屏幕上輸出的意思!
-# :同樣的,也有較佳的壓縮比的意思!
xcat 檔名.xz #查看壓縮包文檔內(nèi)容 (xzcat/xzmore/xzless)
xzgrep ‘關(guān)鍵字’檔名.gz #從壓縮包拮取關(guān)鍵字
tar [-z|-j|-J] [cv] [-f 待建立的新檔名] filename... <==打包與壓縮
tar [-z|-j|-J] [tv] [-f 既有的 tar 檔名] <==察看檔名
tar [-z|-j|-J] [xv] [-f 既有的 tar 檔名] [-C 目錄] <==解壓縮
選項(xiàng)與參數(shù):
-c :建立打包文件,可搭配 -v 來察看過程中被打包的檔名(filename)
-t :察看打包文件的內(nèi)容含有哪些檔名,重點(diǎn)在察看『檔名』就是了;
-x :解打包或解壓縮的功能,可以搭配 -C (大寫) 在特定目錄解開
特別留意的是, -c, -t, -x 不可同時(shí)出現(xiàn)在一串指令列中。
-z :透過 gzip 的支持進(jìn)行壓縮/解壓縮:此時(shí)檔名最好為 .tar.gz
-j :透過 bzip2 的支持進(jìn)行壓縮/解壓縮:此時(shí)檔名最好為 .tar.bz2
-J :透過 xz 的支持進(jìn)行壓縮/解壓縮:此時(shí)檔名最好為 *.tar.xz
特別留意, -z, -j, -J 不可以同時(shí)出現(xiàn)在一串指令列中
-v :在壓縮/解壓縮的過程中,將正在處理的文件名顯示出來!
-f filename:-f 后面要立刻接要被處理的檔名!建議 -f 單獨(dú)寫一個(gè)選項(xiàng)啰!(比較不會(huì)忘記)
-C 目錄 :這個(gè)選項(xiàng)用在解壓縮,若要在特定目錄解壓縮,可以使用這個(gè)選項(xiàng)。
其他后續(xù)練習(xí)會(huì)使用到的選項(xiàng)介紹:
-p(小寫) :保留備份數(shù)據(jù)的原本權(quán)限與屬性,常用于備份(-c)重要的配置文件
-P(大寫) :保留絕對(duì)路徑,亦即允許備份數(shù)據(jù)中含有根目錄存在之意;
--exclude=FILE:在壓縮的過程中,不要將 FILE 打包!
??壓 縮:tar -jcv -f filename.tar.bz2 要被壓縮的文件或目錄名稱
??查 詢:tar -jtv -f filename.tar.bz2
??解壓縮:tar -jxv -f filename.tar.bz2 -C 欲解壓縮的目錄
僅解開單一文件的方法:1.tar -jtv -f /root/etc.tar.bz2 | grep 'shadow'(只解開壓縮包里的shadow)2.tar -jxv -f 打包檔.tar.bz2 待解開檔名
passwd [--stdin] [賬號(hào)名稱] <==所有人均可使用來改自己的密碼
passwd [-l] [-u] [--stdin] [-S] [-n 日數(shù)] [-x 日數(shù)] [-w 日數(shù)] [-i 日期] 賬號(hào) <==root 功能
選項(xiàng)與參數(shù):
--stdin :可以透過來自前一個(gè)管線的數(shù)據(jù),作為密碼輸入,對(duì) shell script 有幫助!
-l :是 Lock 的意思,會(huì)將 /etc/shadow 第二欄最前面加上 ! 使密碼失效;
-u :與 -l 相對(duì),是 Unlock 的意思!
-S :列出密碼相關(guān)參數(shù),亦即 shadow 文件內(nèi)的大部分信息。
-n :后面接天數(shù),shadow 的第 4 字段,多久不可修改密碼天數(shù)
-x :后面接天數(shù),shadow 的第 5 字段,多久內(nèi)必須要更動(dòng)密碼
-w :后面接天數(shù),shadow 的第 6 字段,密碼過期前的警告天數(shù)
-i :后面接『日期』,shadow 的第 7 字段,密碼失效日期
密碼參數(shù)顯示:chage
chage [-ldEImMW] 賬號(hào)名
選項(xiàng)與參數(shù):
-l :列出該賬號(hào)的詳細(xì)密碼參數(shù);
-d :后面接日期,修改 shadow 第三字段(最近一次更改密碼的日期),格式 YYYY-MM-DD
-E :后面接日期,修改 shadow 第八字段(賬號(hào)失效日),格式 YYYY-MM-DD
-I :后面接天數(shù),修改 shadow 第七字段(密碼失效日期)
-m :后面接天數(shù),修改 shadow 第四字段(密碼最短保留天數(shù))
-M :后面接天數(shù),修改 shadow 第五字段(密碼多久需要進(jìn)行變更)
-W :后面接天數(shù),修改 shadow 第六字段(密碼過期前警告日期)
usermod [-cdegGlsuLU] username
選項(xiàng)與參數(shù):
-c :后面接賬號(hào)的說明,即 /etc/passwd 第五欄的說明欄,可以加入一些賬號(hào)的說明。
-d :后面接賬號(hào)的家目錄,即修改 /etc/passwd 的第六欄;
-e :后面接日期,格式是 YYYY-MM-DD 也就是在 /etc/shadow 內(nèi)的第八個(gè)字段數(shù)據(jù)啦!
-f :后面接天數(shù),為 shadow 的第七字段。
-g :后面接初始群組,修改 /etc/passwd 的第四個(gè)字段,亦即是 GID 的字段!
-G :后面接次要群組,修改這個(gè)使用者能夠支持的群組,修改的是 /etc/group 啰~
-a :與 -G 合用,可『增加次要群組的支持』而非『設(shè)定』喔!
-l :后面接賬號(hào)名稱。亦即是修改賬號(hào)名稱, /etc/passwd 的第一欄!
-s :后面接 Shell 的實(shí)際文件,例如 /bin/bash 或 /bin/csh 等等。
-u :后面接 UID 數(shù)字啦!即 /etc/passwd 第三欄的資料;
-L :暫時(shí)將用戶的密碼凍結(jié),讓他無法登入。其實(shí)僅改 /etc/shadow 的密碼欄。
-U :將 /etc/shadow 密碼欄的 ! 拿掉,解凍啦!
userdel [-r] username
選項(xiàng)與參數(shù):
-r :連同用戶的家目錄也一起刪除
16.groupadd [-g gid] [-r] 組名
選項(xiàng)與參數(shù):
-g :后面接某個(gè)特定的 GID ,用來直接給予某個(gè) GID ~
-r :建立系統(tǒng)群組啦!與 /etc/login.defs 內(nèi)的 GID_MIN 有關(guān)。
groupmod [-g gid] [-n group_name] 群組名
選項(xiàng)與參數(shù):
-g :修改既有的 GID 數(shù)字;
-n :修改既有的組名
groupdel [groupname]
gpasswd:群組管理員功能:
#關(guān)于系統(tǒng)管理員(root)做的動(dòng)作:
gpasswd groupname
gpasswd [-A user1,...] [-M user3,...] groupname
gpasswd [-rR] groupname
選項(xiàng)與參數(shù):
:若沒有任何參數(shù)時(shí),表示給予 groupname 一個(gè)密碼(/etc/gshadow)
-A :將 groupname 的主控權(quán)交由后面的使用者管理(該群組的管理員)
-M :將某些賬號(hào)加入這個(gè)群組當(dāng)中!
-r :將 groupname 的密碼移除
-R :讓 groupname 的密碼欄失效
#關(guān)于群組管理員(Group administrator)做的動(dòng)作:
gpasswd [-ad] user groupname
選項(xiàng)與參數(shù):
-a :將某位使用者加入到 groupname 這個(gè)群組當(dāng)中!
-d :將某位使用者移除出 groupname 這個(gè)群組當(dāng)中。
17.ACL:針對(duì)單一使用者,單一文件或目錄來進(jìn)行r,w,x 的權(quán)限規(guī)范
??setfacl:設(shè)定某個(gè)目錄/文件的ACL 規(guī)范。
??getfacl:取得某個(gè)文件/目錄的ACL 設(shè)定項(xiàng)目;
setfacl [-bkRd] [{-m|-x} acl 參數(shù)] 目標(biāo)文件名
選項(xiàng)與參數(shù):
-m :設(shè)定后續(xù)的 acl 參數(shù)給文件使用,不可與 -x 合用;
-x :刪除后續(xù)的 acl 參數(shù),不可與 -m 合用;
-b :移除『所有的』 ACL 設(shè)定參數(shù);
-k :移除『預(yù)設(shè)的』 ACL 參數(shù),關(guān)于所謂的『預(yù)設(shè)』參數(shù)于后續(xù)范例中介紹;
-R :遞歸設(shè)定 acl ,亦即包括次目錄都會(huì)被設(shè)定起來;
-d :設(shè)定『預(yù)設(shè) acl 參數(shù)』的意思!只對(duì)目錄有效,在該目錄新建的數(shù)據(jù)會(huì)引用此默認(rèn)值
#設(shè)定規(guī)范:『 u:[使用者賬號(hào)]:[rwx] 』:
setfacl -m u:chenmingchang:rx acl_test1
#設(shè)定規(guī)范:『 g:[群組列表]:[rwx] 』:
setfacl -m g:mygroup1:rx acl_test1
針對(duì)有效權(quán)限 mask 的設(shè)定方式:
#設(shè)定規(guī)范:『 m:[rwx] 』 setfacl -m m:r acl_test1
使用者或群組所設(shè)定的權(quán)限必須要存在于 mask 的權(quán)限設(shè)定范圍內(nèi)才會(huì)生效
getfacl 指令用法: getfacl filename
查詢用戶相關(guān)信息:id finger
last 可以列出從系統(tǒng)建立之后到目前為止的所有登入者信息!
每個(gè)賬號(hào)的最近登入的時(shí)間:lastlog
查詢?cè)诰€用戶:who
18.擷取命令: cut, grep
cut -d'分隔字符' -f fields <==用于有特定分隔字符
cut -c 字符區(qū)間 <==用于排列整齊的訊息
選項(xiàng)與參數(shù):
-d :后面接分隔字符。與 -f 一起使用;
-f :依據(jù) -d 的分隔字符將一段訊息分區(qū)成為數(shù)段,用 -f 取出第幾段的意思;
-c :以字符 (characters) 的單位取出固定字符區(qū)間;
grep [-acinv] [--color=auto] '搜尋字符串' filename
選項(xiàng)與參數(shù):
-a :將 binary 文件以 text 文件的方式搜尋數(shù)據(jù)
-c :計(jì)算找到 '搜尋字符串' 的次數(shù)
-i :忽略大小寫的不同,所以大小寫視為相同
-n :順便輸出行號(hào)
-v :反向選擇,亦即顯示出沒有 '搜尋字符串' 內(nèi)容的那一行!
--color=auto :可以將找到的關(guān)鍵詞部分加上顏色的顯示喔!
統(tǒng)計(jì)文件里面有多少字?多少行?多少字符:wc [-lwm]
選項(xiàng)與參數(shù):
-l :僅列出行;
-w :僅列出多少字(英文單字);
-m :多少字符;
sed [-nefr] [動(dòng)作]
選項(xiàng)與參數(shù):
-n :使用安靜(silent)模式。在一般 sed 的用法中,所有來自 STDIN 的數(shù)據(jù)一般都會(huì)被列出到屏幕上。但如果加上 -n 參數(shù)后,則只有經(jīng)過 sed 特殊處理的那一行(或者動(dòng)作)才會(huì)被列出來。
-e :直接在指令列模式上進(jìn)行 sed 的動(dòng)作編輯;
-f :直接將 sed 的動(dòng)作寫在一個(gè)文件內(nèi), -f filename 則可以執(zhí)行 filename 內(nèi)的 sed 動(dòng)作;
-r :sed 的動(dòng)作支持的是延伸型正規(guī)表示法的語法。(預(yù)設(shè)是基礎(chǔ)正規(guī)表示法語法)
-i :直接修改讀取的文件內(nèi)容,而不是由屏幕輸出。
動(dòng)作說明: [n1[,n2]]function
n1, n2 :不見得會(huì)存在,一般代表『選擇進(jìn)行動(dòng)作的行數(shù)』,舉例來說,如果我的動(dòng)作是需要在 10 到 20 行之間進(jìn)行的,則『 10,20[動(dòng)作行為] 』
function 有底下這些咚咚:
a :新增, a 的后面可以接字符串,而這些字符串會(huì)在新的一行出現(xiàn)(目前的下一行)~
c :取代, c 的后面可以接字符串,這些字符串可以取代 n1,n2 之間的行!
d :刪除,因?yàn)槭莿h除啊,所以 d 后面通常不接任何咚咚;
i :插入, i 的后面可以接字符串,而這些字符串會(huì)在新的一行出現(xiàn)(目前的上一行);
p :打印,亦即將某個(gè)選擇的數(shù)據(jù)印出。通常 p 會(huì)與參數(shù) sed -n 一起運(yùn)作~
s :取代,可以直接進(jìn)行取代的工作哩!通常這個(gè) s 的動(dòng)作可以搭配正規(guī)表示法!
例如 1,20s/old/new/g 就是啦!(sed ‘s/要被取代的字符串/新的字符串/g’)
19.比較文件差異:
diff [-bBi] from-file to-file
選項(xiàng)與參數(shù):
from-file :一個(gè)檔名,作為原始比對(duì)文件的檔名;
to-file :一個(gè)檔名,作為目的比對(duì)文件的檔名;
注意,from-file 或 to-file 可以 - 取代,那個(gè) - 代表『Standard input』之意。
-b :忽略一行當(dāng)中,僅有多個(gè)空白的差異(例如 "about me" 與 "about me" 視為相同
-B :忽略空白行的差異。
-i :忽略大小寫的不同。
20.工作排程:
只執(zhí)行一次:
at [-mldv] TIME
at -c 工作號(hào)碼
選項(xiàng)與參數(shù):
-m :當(dāng) at 的工作完成后,即使沒有輸出訊息,亦以 email 通知使用者該工作已完成。
-l :at -l 相當(dāng)于 atq,列出目前系統(tǒng)上面的所有該用戶的 at 排程;
-d (jobnumber):at -d 相當(dāng)于 atrm ,可以取消一個(gè)在 at 排程中的工作;
-v :可以使用較明顯的時(shí)間格式欄出 at 排程中的任務(wù)欄表;
-c :可以列出后面接的該項(xiàng)工作的實(shí)際指令內(nèi)容。
TIME:時(shí)間格式,這里可以定義出『什么時(shí)候要進(jìn)行 at 這項(xiàng)工作』的時(shí)間,格式有:
HH:MM ex> 04:00
在今日的 HH:MM 時(shí)刻進(jìn)行,若該時(shí)刻已超過,則明天的 HH:MM 進(jìn)行此工作。
HH:MM YYYY-MM-DD ex> 04:00 2015-07-30
強(qiáng)制規(guī)定在某年某月的某一天的特殊時(shí)刻進(jìn)行該工作!
HH:MM[am|pm] [Month] [Date] ex> 04pm July 30
也是一樣,強(qiáng)制在某年某月某日的某時(shí)刻進(jìn)行!
HH:MM[am|pm] + number [minutes|hours|days|weeks]
ex> now + 5 minutes ex> 04pm + 3 days
就是說,在某個(gè)時(shí)間點(diǎn)『再加幾個(gè)時(shí)間后』才進(jìn)行。
循環(huán)執(zhí)行:
crontab [-u username] [-l|-e|-r]
選項(xiàng)與參數(shù):
-u :只有 root 才能進(jìn)行這個(gè)任務(wù),亦即幫其他使用者建立/移除 crontab 工作排程;
-e :編輯 crontab 的工作內(nèi)容
-l :查閱 crontab 的工作內(nèi)容
-r :移除所有的 crontab 的工作內(nèi)容,若僅要移除一項(xiàng),請(qǐng)用 -e 去編輯。
使用crontab 后, 他的工作會(huì)被記錄到/var/spool/cron/* 里頭去!但請(qǐng)注意,不要使用vi 直接編輯該文件, 因?yàn)榭赡苡捎谳斎胝Z法錯(cuò)誤,會(huì)導(dǎo)致無法執(zhí)行cron 喔!另外,cron 執(zhí)行的每一項(xiàng)工作都會(huì)被紀(jì)錄到/var/log/cron 這個(gè)登錄檔中。
范例一:用 dmtsai 的身份在每天的 12:00 發(fā)信給自己
[dmtsai@study ~]$ crontab -e
#此時(shí)會(huì)進(jìn)入 vi 的編輯畫面讓您編輯工作!注意到,每項(xiàng)工作都是一行。
0 12 * mail -s "at 12:00" dmtsai < /home/dmtsai/.bashrc
#分 時(shí) 日 月 周 |<==============指令串========================>|
關(guān)機(jī)狀態(tài)下,任務(wù)過期,開機(jī)會(huì)重新執(zhí)行任務(wù):
anacron [-sfn] [job]
anacron -u [job]
選項(xiàng)與參數(shù):
-s :開始一連續(xù)的執(zhí)行各項(xiàng)工作 (job),會(huì)依據(jù)時(shí)間記錄文件的數(shù)據(jù)判斷是否進(jìn)行;
-f :強(qiáng)制進(jìn)行,而不去判斷時(shí)間記錄文件的時(shí)間戳;
-n :立刻進(jìn)行未進(jìn)行的任務(wù),而不延遲 (delay) 等待時(shí)間;
-u :僅更新時(shí)間記錄文件的時(shí)間戳,不進(jìn)行任何工作。
job :由 /etc/anacrontab 定義的各項(xiàng)工作名稱。
21.進(jìn)程管理
觀察目前的背景工作狀態(tài): jobs
jobs [-lrs]
選項(xiàng)與參數(shù):
-l :除了列出 job number 與指令串之外,同時(shí)列出 PID 的號(hào)碼;
-r :僅列出正在背景 run 的工作;
-s :僅列出正在背景當(dāng)中暫停 (stop) 的工作。
把正在執(zhí)行的工作丟到背景:Ctrl+Z (工作會(huì)暫停)
將背景工作拿到前景來處理:fg %jobnumber (jobnumber 為工作號(hào)碼(數(shù)字)。注意,那個(gè) % 是可有可無的?。?/p>
讓工作在背景下的狀態(tài)變成運(yùn)作中: bg %jobnumber
管理背景當(dāng)中的工作: kill
kill -signal %jobnumber
[root@study ~]# kill -l
選項(xiàng)與參數(shù):
-l :這個(gè)是 L 的小寫,列出目前 kill 能夠使用的訊號(hào) (signal) 有哪些?
signal :代表給予后面接的那個(gè)工作什么樣的指示啰!用 man 7 signal 可知:
-1 :重新讀取一次參數(shù)的配置文件 (類似 reload);
-2 :代表與由鍵盤輸入 [ctrl]-c 同樣的動(dòng)作;
-9 :立刻強(qiáng)制刪除一個(gè)工作;
-15:以正常的進(jìn)程方式終止一項(xiàng)工作,與 -9 是不一樣的。(默認(rèn)值)
22.ps :將某個(gè)時(shí)間點(diǎn)的進(jìn)程運(yùn)作情況擷取下來
ps aux <==觀察系統(tǒng)所有的進(jìn)程數(shù)據(jù)
ps -lA <==也是能夠觀察所有系統(tǒng)的數(shù)據(jù)
ps axjf <==連同部分進(jìn)程樹狀態(tài)
選項(xiàng)與參數(shù):
-A :所有的 process 均顯示出來,與 -e 具有同樣的效用;
-a :不與 terminal 有關(guān)的所有 process ;
-u :有效使用者 (effective user) 相關(guān)的 process ;
x :通常與 a 這個(gè)參數(shù)一起使用,可列出較完整信息。輸出格式規(guī)劃:
l :較長(zhǎng)、較詳細(xì)的將該 PID 的的信息列出;
j :工作的格式 (jobs format)
-f :做一個(gè)更為完整的輸出。
直接背兩個(gè)比較不同的選項(xiàng), 一個(gè)是只能查閱自己 bash 進(jìn)程的『ps -l 』一個(gè)則是可以查閱所有系統(tǒng)運(yùn)作的進(jìn)程『ps aux 』!注意,你沒看錯(cuò),是『ps aux 』沒有那個(gè)減號(hào)(-) !
top:動(dòng)態(tài)觀察進(jìn)程的變化
top [-d 數(shù)字] | top [-bnp]
選項(xiàng)與參數(shù):
-d :后面可以接秒數(shù),就是整個(gè)進(jìn)程畫面更新的秒數(shù)。預(yù)設(shè)是 5 秒;
-b :以批次的方式執(zhí)行 top ,還有更多的參數(shù)可以使用喔!通常會(huì)搭配數(shù)據(jù)流重導(dǎo)向來將批次的結(jié)果輸出成為文件。
-n :與 -b 搭配,意義是,需要進(jìn)行幾次 top 的輸出結(jié)果。
-p :指定某些個(gè) PID 來進(jìn)行觀察監(jiān)測(cè)而已。在 top 執(zhí)行過程當(dāng)中可以使用的按鍵指令:
? :顯示在 top 當(dāng)中可以輸入的按鍵指令;
P :以 CPU 的使用資源排序顯示;
M :以 Memory 的使用資源排序顯示;
N :以 PID 來排序喔!
T :由該 Process 使用的 CPU 時(shí)間累積 (TIME+) 排序。
k :給予某個(gè) PID 一個(gè)訊號(hào) (signal)
r :給予某個(gè) PID 重新制訂一個(gè) nice 值。
q :離開 top 軟件的按鍵。
kill -signal PID
選項(xiàng)與參數(shù):
-1: 啟動(dòng)被終止的進(jìn)程,可讓該 PID 重新讀取自己的配置文件,類似重新啟動(dòng)
-9: 代表強(qiáng)制中斷一個(gè)進(jìn)程的進(jìn)行,如果該進(jìn)程進(jìn)行到一半, 那么尚未完成的部分可能會(huì)有『半產(chǎn)品』產(chǎn)生,類似 vim 會(huì)有 .filename.swp 保留下來。
-15: 以正常的結(jié)束進(jìn)程來終止該進(jìn)程。由于是正常的終止, 所以后續(xù)的動(dòng)作會(huì)將他完成。不過,如果該進(jìn)程已經(jīng)發(fā)生問題,就是無法使用正常的方法終止時(shí), 輸入這個(gè) signal 也是沒有用的。
killall –signal 指令名稱:
killall [-iIe]/–signal [command name]
選項(xiàng)與參數(shù):
-i :interactive 的意思,交互式的,若需要?jiǎng)h除時(shí),會(huì)出現(xiàn)提示字符給用戶;
-e :exact 的意思,表示『后面接的 command name 要一致』,但整個(gè)完整的指令不能超過 15 個(gè)字符。
-I :指令名稱(可能含參數(shù))忽略大小寫。
nice :新執(zhí)行的指令即給予新的nice 值
nice [-n 數(shù)字] command
選項(xiàng)與參數(shù):
-n :后面接一個(gè)數(shù)值,數(shù)值的范圍 -20 ~ 19。
renice :已存在進(jìn)程的nice 重新調(diào)整
renice [number] PID
選項(xiàng)與參數(shù):
PID :某個(gè)進(jìn)程的 ID 啊!
系統(tǒng)資源的觀察
free :觀察內(nèi)存使用情況
free [-b|-k|-m|-g|-h] [-t] [-s N -c N]
選項(xiàng)與參數(shù):
-b :直接輸入 free 時(shí),顯示的單位是 Kbytes,我們可以使用 b(bytes),m(Mbytes)k(Kbytes), 及 g(Gbytes) 來顯示單位喔!也可以直接讓系統(tǒng)自己指定單位 (-h)
-t :在輸出的最終結(jié)果,顯示物理內(nèi)存與 swap 的總量。
-s :可以讓系統(tǒng)每幾秒鐘輸出一次,不間斷的一直輸出的意思!對(duì)于系統(tǒng)觀察挺有效!
-c :與 -s 同時(shí)處理~讓 free 列出幾次的意思~
uname:查閱系統(tǒng)與核心相關(guān)信息
uname [-asrmpi]
選項(xiàng)與參數(shù):
-a :所有系統(tǒng)相關(guān)的信息,包括底下的數(shù)據(jù)都會(huì)被列出來;
-s :系統(tǒng)核心名稱
-r :核心的版本
-m :本系統(tǒng)的硬件名稱,例如 i686 或 x86_64 等;
-p :CPU 的類型,與 -m 類似,只是顯示的是 CPU 的類型!
-i :硬件的平臺(tái) (ix86)
uptime:觀察系統(tǒng)啟動(dòng)時(shí)間與工作負(fù)載
fuser:藉由文件(或文件系統(tǒng))找出正在使用該文件的進(jìn)程
fuser [-umv] [-k [i] [-signal]] file/dir
選項(xiàng)與參數(shù):
-u :除了進(jìn)程的 PID 之外,同時(shí)列出該進(jìn)程的擁有者;
-m :后面接的那個(gè)檔名會(huì)主動(dòng)的上提到該文件系統(tǒng)的最頂層,對(duì) umount 不成功很有效!
-v :可以列出每個(gè)文件與進(jìn)程還有指令的完整相關(guān)性!
-k :找出使用該文件/目錄的 PID ,并試圖以 SIGKILL 這個(gè)訊號(hào)給予該 PID;
-i :必須與 -k 配合,在刪除 PID 之前會(huì)先詢問使用者意愿!
-signal:例如 -1 -15 等等,若不加的話,預(yù)設(shè)是 SIGKILL (-9) 啰!
lsof :列出被進(jìn)程所開啟的文件檔名
lsof [-aUu] [+d]
選項(xiàng)與參數(shù):
-a :多項(xiàng)數(shù)據(jù)需要『同時(shí)成立』才顯示出結(jié)果時(shí)!
-U :僅列出 Unix like 系統(tǒng)的 socket 文件類型;
-u :后面接 username,列出該使用者相關(guān)進(jìn)程所開啟的文件;
+d :后面接目錄,亦即找出某個(gè)目錄底下已經(jīng)被開啟的文件!
pidof :找出某支正在執(zhí)行的程序的PID
pidof [-sx] program_name
選項(xiàng)與參數(shù):
-s :僅列出一個(gè) PID 而不列出所有的 PID
-x :同時(shí)列出該 program name 可能的 PPID 那個(gè)進(jìn)程的 PID
名稱欄目:運(yùn)維大作戰(zhàn)之linux基礎(chǔ)命令大全
文章轉(zhuǎn)載:http://jinyejixie.com/article46/ggsghg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、App設(shè)計(jì)、電子商務(wù)、企業(yè)建站、Google、全網(wǎng)營(yíng)銷推廣
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)