Linux程序管理和軟體管理

2021-10-23 04:49:30 字數 3988 閱讀 8188

程序管理:

程序是已經啟動的可執行程式的執行例項,程序有以下組成部分:

已分配記憶體的位址空間;安全屬性;程式**的乙個或多個執行程序

多個執行緒可以構成乙個程序,多個程序構成乙個程式;程序狀態

程式:二進位制檔案,例如:/usr/sbin/httpd,

程序:程式執行的過程,是動態的,有生命週期及執行狀態

區別:程序不是程式,雖然它由程式產生,程式只是乙個靜態的命令集合

而程序是乙個隨時都能發生變化的,動態的,使用系統執行資源的

程式,而乙個程式可以啟動多個程序

檢視程序:

ps -aux //檢視所有程序

ps -aux | grep httpd //檢視制定的乙個程序,如:httpd

備註:-u //顯示程序的詳細資訊,包括cpu和記憶體的使用率

-a //顯示終端上的所有程序,包括其他使用者的程序

-x //顯示沒有控制終端的程序

user        	pid 	%cpu 		%mem    		vsz   		rss 		tty      		stat 	start   		time 	command

程序所有者 程序號 占用cpu使用率 占用的記憶體使用率 占用的虛擬記憶體大小 占用的記憶體大小 終端次裝置號碼 程序狀態 程序開始時間 執行時間 所執行的命令

備註:stat表示該程序狀態:

d //不可休眠狀態(通常表示該程序正在i/o動作)

r //正在執行中

s //休眠狀態

t //暫停狀態

z //不存在但暫時無法刪除

w //沒有足夠的記憶體分頁可分配

< //高優先順序的程序;

n //低優先順序的程序

l //有記憶體分頁分配並鎖在記憶體內

查詢到當前正在執行的程序並列出符合條件的程序id:

pgrep -u root sshd //檢視指定使用者指定程序sshd的pid號

pgrep sshd //指定程序為sshd

pidof sshd //指定程序為sshd

pstree //檢視程序樹

動態檢視程序top:

top -u user1 //檢視使用者user1的程序

top -b -n 2 > top.txt //將2次top資訊寫入到萬惡見

備註:-n 2表示兩次更新後退出,-b表示批量處理模式顯示程式資訊

linux中三大程序:

1.init

2.login

3.shell

訊號控制程序:

kill -l //列出所有支援訊號

語法:kill -n pid

選項:1 //掛起

2 //中斷

3 //退出訊號

9 //強制殺死

15 //kill預設終止訊號

17 //子程序終止或停止

例項: useradd u1

su -u1

su root

ps -aux //檢視u1程序(乙個是u1本身,乙個為bash程序,想刪除使用者必須把兩個程序殺死後才能刪除)

kill -9 pid

例項: useradd u1

su -u1

ps -aux //刪除乙個u1程序就可刪除

kill -9 pid

軟體包概述:

rpm包 //用rpm/yum安裝

二進位製包 //名字很長,解壓後可以使用,不用安裝

原始碼包 //原始碼格式僅僅就是乙個版本的tar包

原始碼包安裝步驟:

1.解壓 2. ./configure 3. make 4. make install

./configure //檢查環境變數及配置編譯選項

make //將原始碼編譯成二進位制檔案

make install //將編譯好的檔案安裝到指定位置

rpm包預設安裝路徑:

/etc/ //配置檔案安裝目錄

/usr/bin //可執行的命令安裝目錄

/usr/lib //程式所使用的函式庫儲存位置

/usr/share/doc/ //基本軟體使用手冊儲存位置

/usr/share/man/ //幫助檔案儲存位置

原始碼安裝在指定位置中:

/usr/local/軟體名/

掛載操作:

mount d

rpm包安裝:

rpm -ivh 軟體包名

軟體包公升級基本命令:

rpm -uvh 包檔名

引數說明:

-i //安裝軟體

-v //表示在安裝過程中顯示安裝的詳細資訊

-h //顯示水平進度條

-u //公升級安裝

-e //表示刪除

-a //顯示所有軟體包

--nomd5 //不檢驗軟體包的簽名

--force //強制安裝軟體包

--nodeps //忽略依賴關係

rpm軟體包的解除安裝:

rpm -e rpm軟體包名

例如:rpm -e mtfs-3g --nodeps

rpm軟體的查詢:

rpm -qa 包名

例項:rpm -qa | wc -l //統計軟體包的安裝個數

yum:

操作指令:

yum clean all //清空快取指令及其他檔案

yum makecache //清空快取

yum repolist //查詢可用的源

yum list mysql-server //查詢包是否安裝

yum info mysql //查詢包的資訊

yum search mysql //查詢包名和描述中帶有mysql的包

yum provides php //查詢指定的檔案屬於哪個包,沒有安裝也可以查詢

yum -y install mysql-server //安裝包

yum -y reinstall mysql-server //重新安裝

yum -y remove mysql-server //解除安裝包

自建yum源的步驟:

1.進入源的路徑

vim /etc/yum.repos.d/ //定義源的路徑

2.建立原始檔

vim /etc/yum.repos.d/centos7.repo //建立

3.編輯原始檔的內容

centos7.repo檔案內容如下:

name=centos7 //倉庫名,自定義

[centos7] //倉庫id,自定義

baseurl= //指向源的路經

baseurl=

baseurl=file:///cdrom/

備註:三個協議按照需求只能寫乙個!!!

enable=1 //等於1表示啟用,沒有寫也表示啟用;等於0代表禁用

gpgcheck=0 //是否檢查軟體包的簽名,1檢查,0不檢查

yum repolist //列出當前yum資源庫

yum clean all //清除yum源的快取

本地源(例如使用光碟):

掛載安裝光碟:

mkdir /cdrom

mount /dev/cdrom /cdrom //掛載光碟機

mount -o loop cenyos6u6.iso /cdrom //掛載

iso映象檔案:

vim /etc/yum.repos.d/cdrom.repo

[cdrom]

name=cdrom

baseurl=file://cdrom //使用file協議訪問,也就是使用本機電目錄訪問

enable=1

gpgcheck=0 //簽名檢查

yum拓展知識:

yum的配置檔案 /etc/yum.conf

快取資訊:

keepcache=1

儲存在/var/cache/yum

安裝包,測試快取:

yum -y install nginx

linux管理和程序(4)

selinux 由美國 局開發的,security enhanced linux的縮寫。傳統的檔案許可權與賬號關係 自主訪問控制 dac,就是一句程序的所有者與檔案資源的rwx許可權來決定有無訪問能力 這種dac的缺點 root具有最高許可權,可以在系統上進行任何資源的訪問 使用者可取得程序來更改檔...

Linux 程序管理動態程序管理 詳解

訊號種類 kill l列出所有支援的訊號 kill使用訊號控制程序kill 訊號名編號程序優先順序nice linux程序排程及多工 每個cpu在乙個時間點上只能處理乙個程序,通過時間片技術,來同時執行多個程式。pr 系統內定的優先順序值比ni大20 99 39 ni nice優先值可人為變動 20...

Linux 程序和使用者管理命令之程序管理命令

在說到程序管理命令時,我們都應該對程序有乙個認知。那什麼是程序呢?一 程序的定義 1 定義 我們都知道程序管理 記憶體管理和檔案管理是作業系統的三大核心。程序顧名思義就是進展中的程式或者說是執行中的程式。就是說乙個程序載入到記憶體中就會變成程序。2 與程式的區別 在知道這些之後,我們還應該了解到一下...