系統管理相關命令:df、top、free、quota、at、lp、adduser、groupadd、kill、cromtab
系統安全相關命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo、ps、who
df
1.作用:用來檢查文件系統的磁盤空間佔用情況。
2.格式:df [options]
3.主要參數
-s:對每個Names參數只給出佔用的數據塊總數。
-a:遞歸地顯示指定目錄中各文件及子目錄中各文件佔用的數據塊數。若既不指定-s,也不指定-a,則只顯示Names中的每一個目錄及其中的各子目錄所佔的磁盤塊數。
-k:以1024字節爲單位列出磁盤空間使用情況。
-x:跳過在不同文件系統上的目錄不予統計。
-l:計算所有的文件大小,對硬鏈接文件則計算多次。
-i:顯示inode信息而非塊使用量。
-h:以容易理解的格式印出文件系統大小,例如136KB、254MB、21GB。
-P:使用POSIX輸出格式。
-T:顯示文件系統類型。
top
1.作用:顯示執行中的程序進程,使用權限是所有用戶
2.格式:top [-] [d delay] [q] [c] [S] [s] [i] [n]
3.主要參數
d:指定更新的間隔,以秒計算。
q:沒有任何延遲的更新。如果使用者有超級用戶,則top命令將會以最高的優先序執行。
c:顯示進程完整的路徑與名稱。
S:累積模式,會將己完成或消失的子行程的CPU時間累積起來。
s:安全模式。
i:不顯示任何閒置(Idle)或無用(Zombie)的行程。
n:顯示更新的次數,完成後將會退出top。
在終端按U,切換爲指定用戶進程運行界面。
free
1.作用:用來顯示內存的使用情況。
2.格式:free [-b|-k|-m] [-o] [-s delay] [-t] [-V]
3.主要參數
-b -k -m:分別以字節(KB、MB)爲單位顯示內存使用情況。
-s delay:顯示每隔多少秒數來顯示一次內存使用情況。
-t:顯示內存總和列。
-o:不顯示緩衝區調節列。
4.應用實例
free -b -5s :以kb爲單位,每5秒更新一次
quota
1.作用:顯示磁盤使用情況和限制情況。(超級用戶)
2.格式
quota [-g][-u][-v][-p] 用戶名
組名
3.主要參數
-g:顯示用戶所在組的磁盤使用限制。
-u:顯示用戶的磁盤使用限制。
-v:顯示沒有分配空間的文件系統的分配情況。
-p:顯示簡化信息。
at
1.作用:用來在指定時刻執行指定的命令序列。
2.格式
at [-V] [-q
x] [-f file] [-m] time
3.主要參數
-V:顯示標準錯誤輸出。
-q:許多隊列輸出。
-f:從文件中讀取作業。
-m:執行完作業後發送電子郵件到用戶。
time:設定作業執行的時間。time格式有嚴格的要求,由小時、分鐘、日期和時間的偏移量組成,其中日期的格式爲MM.DD.YY,MM是分鐘,DD是日期,YY是指年份。偏移量的格式爲時間+偏移量,單位是minutes、hours和days。
4.應用實例
#at –f data 15:30 +2 days
表示在兩天後的15:30,執行文件data中指明的作業。
lp
1.作用:打印文件的命令。
2.格式:lp
[-c][-d][-m][-number][-title][-p]
3.主要參數
-c:先拷貝文件再打印。
-d:打印隊列文件。
-m:打印結束後發送電子郵件到用戶。
-number:打印份數。
-title:打印標題。
-p:設定打印的優先級別,最高爲100。
4.應用實例
(1)使用lp命名打印多個文件
#lp 2 3 4
Request id is 11(3file(s))
其中 2 3 4是文件名,Requestid is 11(3file(s))表示這是第十一個打印命令,依次打印這三個文件
#lp lp -d LasterJet -p 90/etc/aliases
規定了優先級爲90.
useradd
1.作用:用來建立用戶帳號和創建用戶的起始目錄(超級用戶)。
2.格式:
useradd [-d
home] [-s shell] [-c comment] [-m [-ktemplate]]
[-finactive] [-eexpire ] [-ppasswd] [-r]
name
3.主要參數
-c:加上備註文字,備註文字保存在passwd的備註欄中。
-d:指定用戶登入時的啓始目錄。
-D:變更預設值。
-e:指定賬號的有效期限,缺省表示永久有效。
-f:指定在密碼過期後多少天即關閉該賬號。
-g:指定用戶所屬的羣組。
-G:指定用戶所屬的附加羣組。
-m:自動建立用戶的登入目錄。
-M:不要自動建立用戶的登入目錄。
-n:取消建立以用戶名稱爲名的羣組。
-r:建立系統賬號。
-s:指定用戶登入後所使用的shell。
-u:指定用戶ID號。
4.應用實例:
建立一個新用戶賬戶並設置ID:useradd cnojh -u 544
groupadd
1.作用:用於將新組加入系統。
2.格式:groupadd [-g gid] [-o] [-r] [-f]groupname
3.主要參數:
-g
:指定組ID號。
-o:允許組ID號,不必惟一。
-r:加入組ID號,低於499系統賬號。
-f:加入已經有的組時,發展程序退出。
4.應用實例
建立一個新組並設置組ID加入系統
#groupadd –g344 hjgh
此時在/etc/passwd文件中產生一個組ID爲344的項目
kill
1.作用
kill命令用來中止一個進程。
2.格式
kill [ -s
signal | -p ] [ -a ] pid
...
kill -l [ signal ]
3.參數
-s:指定發送的信號。
-p:模擬發送信號。
-l:指定信號的名稱列表。
pid:要中止進程的ID號。
Signal:表示信號。
4.應用實例:
kill -9 324 (-9:強行終止 324:進程號)
crontab
1.作用:可以修改crontab配置文件,然後該配置由cron公用程序在適當的時間執行,使用權限是所有用戶
2.格式:crontab
[ -u user ] 文件 crontab [ -u
user ] { -l | -r | -e
}
3.主要參數:
-e:執行文字編輯器來設定時程表,內定的文字編輯器是vi。
-r:刪除目前的時程表。
-l:列出目前的時程表。
crontab 文件的格式爲“M H D m d cmd”。其中,M代表分鐘(0~59),H代表小時(0~23),D代表天(1~31),m代表月(1~12),d代表一星期內的天(0~6,0爲星期天)。cmd表示要運行的程序,它被送入sh執行,這個Shell只有USER、HOME、SHELL三個環境變量。
4.應用實例:
在vi中輸入:35 17**5 wall "Tomorrow is saturday I will play CS"
這時在/var/spool/cron/目錄下會產生一個cao文件,每個星期五下午17.35分會彈出一個終端。
passwd
1.作用:修改賬戶的登陸密碼。
2.格式:passwd [選項] 賬戶名稱
3.主要參數
-l:鎖定已經命名的賬戶名稱,只有具備超級用戶權限的使用者方可使用。
-u:解開賬戶鎖定狀態,只有具備超級用戶權限的使用者方可使用。
-x, --maximum=DAYS:最大密碼使用時間(天),只有具備超級用戶權限的使用者方可使用。
-n, --minimum=DAYS:最小密碼使用時間(天),只有具備超級用戶權限的使用者方可使用。
-d:刪除使用者的密碼, 只有具備超級用戶權限的使用者方可使用。
-S:檢查指定使用者的密碼認證種類, 只有具備超級用戶權限的使用者方可使用。
su
1.作用
su 命令用來變更爲其它使用者的身份,超級用戶除外,需要鍵入該使用者的密碼。
2.格式
su [選項]...
[-][USER [ARG]...]
3.主要參數
-f :不必讀啓動文件(如 csh.cshrc等),僅用於csh或tcsh兩種Shell。
-l :加了這個參數之後,就好像是重新登陸爲該使用者一樣,大部分環境變量(例如HOME、SHELL和USER等)都是以該使用者(USER)爲主,並且工作目錄也會改變 。如果沒有指定USER,缺省情況是root。
-m, -p ,:執行su時不改變環境變數。
-c :變更賬號爲USER的使用者,並執行指令(command)後再變回原來使用者
USER:欲變更的使用者賬號,ARG傳入新的Shell參數。
4.應用實例
變更賬戶爲賬戶,並在執行df命令後還原使用者
su –c df root
umask
1.作用:
umask名利用來設置用戶文件和目錄的文件創建缺省屏蔽值,若將此命令放入profile文件,就可控制該用戶後續所建文件的存取許可。它告訴系統在創建文件時不給誰存取許可,使用權限是所有用戶
2.格式:umask [-p] [-S] [mode]
3.主要參數 :
-S:確定當前的umask設置。
-p:修改umask 設置。
[mode]:修改數值。
4。應用實例:
umask -p 177(只有讀寫權限)
chgrp
1.作用:修改一個或多個文件或目錄所屬的組(超級用戶)。
2.格式:chgrp [選項]... 組 文件...或 chgrp [選項]... --reference=參考文件 文件... 將每個<文件>的所屬組設定爲<組>。
3.主要參數
-c, --changes :像 --verbose,但只在有更改時才顯示結果。
-d:會影響符號鏈接所指示的對象,而非符號鏈接本身。
-h, --no-dereference:會影響符號鏈接本身,而非符號鏈接所指示的目的地(當系統支持更改符號鏈接的所有者,此選項纔有效)。
-f, --silent, --quiet:去除大部分的錯誤信息。
-r:使用<參考文件>的所屬組,而非指定的<組>。
-R, --recursive:遞歸處理所有的文件及子目錄。
-v, --verbose:處理任何文件都會顯示信息。
4.應用實例:
改變/opt/local/book/及其子目錄下的所有文件的屬組爲book
#chgrp -R book /opt/local/book
chmod
1.作用:chmod命令用於改變文件或目錄的訪問權限,用戶可以用它控制文件或目錄的訪問權限,使用權限是超級用戶。
2.格式:
(1)字符設定法
chmod [who] [+ | - | =] [mode] 文件名
操作對象who可以是下述字母中的任一個或它們的組合
u:表示用戶,即文件或目錄的所有者。
g:表示同組用戶,即與文件屬主有相同組ID的所有用戶。
o:表示其它用戶。
a:表示所有用戶,它是系統默認值。
操作符號
+:添加某個權限。
-:取消某個權限。
=:賦予給定權限,並取消其它所有權限(如果有的話)。
設置mode的權限可用下述字母的任意組合
r:可讀。
w:可寫。
x:可執行。
X:只有目標文件對某些用戶是可執行的或該目標文件是目錄時才追加x屬性。
s:文件執行時把進程的屬主或組ID置爲該文件的文件屬主。方式“u+s”設置文件的用戶ID位,“g+s”設置組ID位。
t:保存程序的文本到交換設備上。
u:與文件屬主擁有一樣的權限。
g:與和文件屬主同組的用戶擁有一樣的權限。
o:與其它用戶擁有一樣的權限。
文件名:以空格分開的要改變權限的文件列表,支持通配符。
一個命令行中可以給出多個權限方式,其間用逗號隔開。
(2) 數字設定法
數字設定法的一般形式爲: chmod [mode] 文件名
數字屬性的格式應爲3個0到7的八進制數,其順序是(u)(g)(o)文件名,以空格分開的要改變權限的文件列表,支持通配符。
數字表示的權限的含義如下:0001爲所有者的執行權限;0002爲所有者的寫權限;
0004爲所有者的讀權限;0010爲組的執行權限;0020爲組的寫權限;0040爲組的讀權限;
0100爲其他人的執行權限;0200爲其他人的寫權限;0400爲其他人的讀權限;1000爲粘貼位置位;2000表示假如這個文件是可執行文件,則爲組ID爲位置位,否則其中文件鎖定位置位 ;4000表示假如這個文件是可執行文件,則爲用戶ID爲位置位。
chown
1.作用:更改一個或多個文件或目錄的屬主和屬組(超級用戶)
2.格式:chown [選項] 用戶或組 文件
3.主要參數
--dereference:受影響的是符號鏈接所指示的對象,而非符號鏈接本身。
-h, :會影響符號鏈接本身,而非符號鏈接所指示的目的地(當系統支持更改符號鏈接的所有者,此選項纔有效)。
--from=目前所有者:目前組只當每個文件的所有者和組符合選項所指定的,纔會更改所有者和組。其中一個可以省略,這已省略的屬性就不需要符合原有的屬性。
-f, --silent, --quiet:去除大部分的錯誤信息。
-R, --recursive:遞歸處理所有的文件及子目錄。
-v, --verbose:處理任何文件都會顯示信息。
4.說明
chown將指定文件的擁有者改爲指定的用戶或組,用戶可以是用戶名或用戶ID:組可以是組名或組ID:文件是以空格分開的要改變的權限的文件列表,支持通配符。系統管理員經常用chown命令,將文件拷貝到另一個用戶的目錄下以後,讓用戶擁有使用該文件的權限
5.應用實例:
把目錄/hi及其下的所有文件和子目錄的屬主改成wan,屬組改成users
#chown -R wan.users /hi
chattr
1.作用:修改ext2和ext3文件系統屬性(超級用戶 )。
2.格式:chattr [-RV] [-+=AacDdijsSu] [-v version] 文件或目錄
3.主要參數:
-R:遞歸處理所有的文件及子目錄。
-V:詳細顯示修改內容,並打印輸出。
-:失效屬性。
+:激活屬性。
= :指定屬性。
A:Atime,告訴系統不要修改對這個文件的最後訪問時間。
S:Sync,一旦應用程序對這個文件執行了寫操作,使系統立刻把修改的結果寫到磁盤 。
a:Append Only,系統只允許在這個文件之後追加數據,不允許任何進程覆蓋或截斷這個文件。如果目錄具有這個屬性,系統將只允許在這個目錄下建立和修改文件,而不允許刪除任何文件。
i:Immutable,系統不允許對這個文件進行任何的修改。如果目錄具有這個屬性,那麼任何的進程只能修改目錄之下的文件,不允許建立和刪除文件。
D:檢查壓縮文件中的錯誤。
d:No dump,在進行文件系統備份時,dump程序將忽略這個文件。
C:Compress,系統以透明的方式壓縮這個文件。從這個文件讀取時,返回的是解壓之後的數據;而向這個文件中寫入數據時,數據首先被壓縮之後才寫入磁盤。
s:Secure Delete,讓系統在刪除這個文件時,使用0填充文件所在的區域。
u:Undelete,當一個應用程序請求刪除這個文件,系統會保留其數據塊以便以後能夠恢復刪除這個文件。
4.應用實例:
恢復/root目錄及其子目錄的所有文件
#chatter -R +u/root
防止系統中某個關鍵文件被修改
#chatter +i/etc/fstab
sudo
1.作用:sudo命令是一種以限制配置文件中的命令爲基礎,在有限時間內給用戶使用,並且記錄到日誌中的命令。
2.格式:sudo [-bhHpV] [-s <shell>] [-u <用戶>] [指令] sudo [-klv]
3.主要參數:
-b:在後臺執行命令。
-h:顯示幫助。
-H:將HOME環境變量設爲新身份的HOME環境變量。
-k:結束密碼的有效期,即下次將需要輸入密碼。
-l:列出當前用戶可以使用的命令。
-p:改變詢問密碼的提示符號。
-s <shell>:執行指定的Shell。
-u <用戶>:以指定的用戶爲新身份,不使用時默認爲root。
-v:延長密碼有效期5分鐘。
ps
1.作用:顯示瞬間進程 (process) 的動態,使用權限是所有使用者
2.格式:ps [options] [--help]
3.主要參數
-A:列出所有的進程。
-l:顯示長列表。
-m:顯示內存信息。
-w:顯示加寬可以顯示較多的信息。
-e:顯示所有進程。
a:顯示終端上的所有進程,包括其它用戶的進程。
-au:顯示較詳細的信息。
-aux:顯示所有包含其它使用者的進程。
4.應用實例:
查看內存:ps aux | sort +5n
who
1.作用:顯示系統中有哪些用戶登陸系統,顯示的資料包含了使用者ID、使用的登陸終端、上線時間、呆滯時間、CPU佔用,以及做了些什麼。
2.格式:who - [husfV] [user]
3.主要參數:
-h:不要顯示標題列。
-u:不要顯示使用者的動作/工作。
-s:使用簡短的格式來顯示。
-f:不要顯示使用者的上線位置。
-V:顯示程序版本。