一、工作管理
&//將命令丟到後台執行
tar -zpcf /tmp/etc.tar.bz2 /etc &
但執行過程中產生了
stdin
和stdout
,會直接輸出到螢幕上,因此需要重定向的方式使用
[ctrl]-z
//將目前的工作丟到後台中暫停
直接按jobs
//檢視目前的後台工作狀態
jobs [-lrs]
-l:除了列出
job number
和命令串之外,還列出
pid -r
:僅列出後台正在執行的命令
-s:僅列出後台暫停狀態的命令 fg
//將後台的工作拿到前台來處理
fg %jobnumber
bg//
讓工作在後台下變為執行狀態
bg %jobnumber
kill
//管理後台中的工作
kill -l
//列出目前
kill
能使用的
signal
訊號有哪些
kill -signal %jobnumber
或者kill -signal pid(
注意沒有
%) signal:
1:重新讀取一次引數的配置檔案
9:強制刪除乙個不正常的工作
15:正常步驟結束一項工作(預設)
主要用於刪除程序
killall
killall [-iie] -signal [
命令名稱
] -i
:互動方式
-i:忽略大小寫 見
p511
二、離線問題
[ctrl]-z
放到工作管理的後台,仍與終端機有關,離線後並不繼續工作
at 放到系統工作,與終端機無關
nohup
nohup [
命令與引數
] //
前台工作
nohup [
命令與引數
] & //
後台工作,離線後仍能執行
三、程序的檢視
ps -l
僅檢視自己
bash
的相關程序
詳細引數見
p516
ps aux
檢視系統的所有程序
詳細引數見
p517
top [-d
數字] [-bnp]
動態檢視程序狀態
-d:後接秒數,表示多少秒更新一次
-p:指定某個
pid進行檢視
pstree [-a|u] [-up]
程序樹,可以顯示出父子程序的關係
-a:以
ascii
碼顯示連線
-u:以
utf8
連線,不常用
-p:顯示出每個程序的
pid -u
:列出每個程序的所屬賬號名稱
四、關於程序的執行順序
priority
越小越先執行,使用者無法調整,由核心動態調整
nice
pri(new)=pri(old)+nice
注意:這裡只是約等於,還是要靠系統核心來調整
nice
為負,會降低
pri,優先處理
root
可隨意調整自己或他人程序,
-20~19
一般使用者只能調整
0~19
一般使用者只能越調越高,比如原來為
12,後面只能調為
13~19
nice [-n
數字] command
//新執行的命令即賦予
nice
值 renice [
數字] pid
//為程序重新賦予
nice值
見p524
五、系統資源的檢視
記憶體使用情況
free […]
見p525
核心相關資訊
uname […]
見p526
啟動時間與工作負載
uptime […]
見p526
追蹤網路
netstat […]
見p527
動態監測系統資源
vmstat
見p528
六、查詢正使用某檔案的程序和程序開啟的檔案
fuser
//查詢正使用某檔案的程序
fuser [-umv] [-k [i] [-signal]] file/dir
見p532
lsof
//列出比程序開啟的檔案
isof [-auu] [+d]
見p533
pidof
//找到某個正在執行的程序的
pid
pidof [-sx] program_name
見p534
七、selinux(security enhanced linux)
主要概念
主體:即是程序
目標:檔案資源
策略:通過規定安全上下文的規則,限制主體對目標的訪問
安全上下文:
身份識別:角色:型別
型別最為重要,主體和目標的型別相匹配,才能使用該資源
selinux
的啟動、開啟和檢視 1
、檢視selinux
的模式 getenforce
2、設定
selinux
的模式 setenforce[0|1]0:
permissive
寬容模式 1:
enforcing
強制模式
並不需要重啟
3、關閉
selinux
vi /etc/selinux/config
修改selinux
為disabled
然後重啟
4、開啟
selinux
vi /etc/selinux/config
修改selinux
為enforcing
在/boot/grub/menu.lst
中確認不存在
selinux=0
重啟修改檔案的安全上下文(主要是修改
type)
chcon [-r] [-t type] [-u user] [-r role]
檔案 -r
:連同該目錄下的子目錄一起修改
-t:後接安全上下文的型別字段
chcon [-r] --reference=
範例檔案
檔案 //
按照範例檔案修改檔案中安全上下文
restorecon [-rv]
檔案或目錄
//按預設情況重置安全上下文
查詢安全上下文
1、知道目標型別,檢視相應的主體型別
search -a -t
目標型別 2
、知道主體型別,檢視相應的目標型別
search -a -s
主體型別
預設的安全上下文的查詢與修改
semanage fcontext -l
//查詢
semanage fcontext - [-frst] file_spec
見p546
selinux
所需的服務
setroubleshoot
將錯誤資訊寫到
/var/log/messages 1
、檢視這項服務是否已經啟動
chkconfig --list setroubleshoot
2、將這項服務設為開機啟動
chkconfig setroubleshoot on
3、檢視由於
selinux
引起的訪問錯誤
cat /var/log/messages | grep setroubleshoot
auditd
將詳細的錯誤資訊寫入
/var/log/audit/audit.log
Linux程式管理
程式 通常以二進位制放置在儲存媒介中,以物理檔案的形式存在 程序 程式被觸發後,執行者的許可權與屬性 程式的 與所需資料都會被載入到記憶體中,作業系統並給與這個記憶體內的乙個單元識別符號 pid 程序就是正在執行中的程式 程序彼此之間具有相關性 觸發任何乙個事件時,系統都會將他定義成為乙個程序,並且...
linux程式管理和程序(1)
什麼是程序 乙個程式被載入到記憶體中執行,那麼在記憶體中的那個資料就被稱為程序,所有系統上面跑的資料都以程序的型別存在。在linux系統中,觸發任何乙個事件,系統都會定義為乙個程序,並且給予這個程序乙個id,稱為pid,同時觸發這個程序的使用者與相關屬性關係,給予這個pid一組有效的許可權設定。舉個...
linux學習筆記 程式管理
程序與程式 程式 通常為二進位制程式放置在儲存媒介中 如硬碟 光碟 軟盤 磁帶等 以物理檔案的形式存在。程序 程式被觸發後,執行者的許可權與屬性 程式的程式 與所需資料等都會被載入到記憶體中,作業系統並給與這個記憶體中的單元乙個識別符號,可以說,程序就是乙個正在執行的程式。子程序與父程序 fork ...