Linux應(yīng)用程序管理與安裝方式
一.Linux應(yīng)用程序基礎(chǔ)
1.Linux應(yīng)用程序與命令的關(guān)系
兩者的用途區(qū)別:
- 系統(tǒng)命令:命令文件一般在安裝操作系統(tǒng)一起安裝,用于輔助操作系統(tǒng)本身的管理。
- 應(yīng)用程序:應(yīng)用程序一般需要在操作系統(tǒng)之外另行安裝,提供相對獨立操作系統(tǒng)的功能,有時候等同于“軟件“的概念。
2.Linux應(yīng)用程序的組成
安裝完一個軟件包以后,可能會向系統(tǒng)中復(fù)制大量的數(shù)據(jù)文件,并進行相關(guān)設(shè)置,在Linux操作系統(tǒng)中,典型的應(yīng)用程序通常由以下幾部分組成。
- 普通的可執(zhí)行程序文件:一般保存在/usr/bin目錄中,普通用戶即可執(zhí)行。
- 服務(wù)器程序,管理程序文件:一般保存在/usr/sbin目錄中,只有管理員能執(zhí)行。
- 配置文件:一般保存在/etc目錄中,配置文件較多時會建立相應(yīng)的子目錄。
- 日志文件:一般保存在/var/log 目錄中。
- 關(guān)于應(yīng)用程序的參考文檔等數(shù)據(jù):一般保存在/usr/share/doc/目錄中.
- 執(zhí)行文件及配置文件的man手冊頁:一般保存在/usr/share/man/目錄中.
3.軟件包的封裝類型
(1)RPM軟件包:
這種軟件包文件的擴展名為“.rpm”,只能在使用RPM機制的Linux操作系統(tǒng)中安裝,如RHEL、Fedora、CentOS等。RPM軟件包一般針對特定版本的操作系統(tǒng)量身定制,因此依賴性較強。安裝RPM軟件包需要使用操作系統(tǒng)中的rpm命令。
(2)DEB軟件包:
這種軟件包文件的擴展名為“.deb”,只能在使用DPKG機制的Linux操作系統(tǒng)中進行安裝,如Debian、Ubuntu等。安裝DEB軟件包需要使用操作系統(tǒng)中的dpkg命令。
(3)源代碼安裝包:
這種軟件包是程序員開發(fā)完成的原始代碼,一般被制作成“.tar.gz”或“.tar.bz2”等格式的壓縮包文件,因多數(shù)使用tar命令打包而成,所以經(jīng)常被稱為“TarBail”。安裝源代碼軟件包需要使用相應(yīng)的編譯工具,如Linux中的C語言編譯器gcc。因此,在安裝操作系統(tǒng)的時候盡量勾選“開發(fā)工具”一項來安裝基本的編譯環(huán)境。
(4)附帶安裝程序的軟件包:
這種軟件包的擴展名不一,但仍以TarBail格式的居多。軟件包中會提供用于安裝的可執(zhí)行程序或腳本文件,如install.sh、setup等,有時候會以“.bin”格式的單個安裝文件形式出現(xiàn)。安裝時只需運行安裝文件就可以根據(jù)向?qū)С绦虻奶崾就瓿砂惭b操作。
4.掛載
通式:
mount 設(shè)備 加文件夾路徑 (已存在且是空的文件夾,原來的數(shù)據(jù)將被隱藏)
掛載規(guī)則:
- 一個掛載點同一時間只能掛載一個設(shè)備
- 一個掛載點同一時間掛載了多個設(shè)備,只能看到最后一個掛載設(shè)備的數(shù)據(jù),其它設(shè)備上的數(shù)據(jù)將被隱藏
- 一個設(shè)備可以同時掛載到多個掛載點
- 通常掛載點一般是已存在空的目錄
二.rpm
1.概述
Red-Hat Package Manager
由Red Hat公司提出,被眾多Linux發(fā)行版所采用
- 建立統(tǒng)一的數(shù)據(jù)庫文件(一張對應(yīng)表將信息寫入)
- 詳細記錄軟件包安裝、卸載等變化信息
- 自動分析軟件包依賴關(guān)系
2.rpm命令的格式
RPM軟件可以實現(xiàn)幾乎所有的功能,新增,刪除,更新等
3.查詢已安裝的RPM軟件信息
格式:
rpm -q [子選項] 軟件名
選項:
?
4.查詢未安裝的RPM 軟件包文件中信息
格式:
rpm -qp[子選項] RPM 包文件
選項:
rpm -qpi 文件名 | 查詢指定軟件包的詳細信息 |
rpm -qpl 文件名 | 查詢指定軟件包的文件列表 |
rpm -qpc 文件名 | 查詢指定文件包的配置文件 |
rpm -qpd 文件名 | 查詢指定軟件包的軟件包文檔的位置 |
5.安裝,卸載,升級 RPM 軟件包
格式:
rpm [選項] RPM 包文件
rpm -ivh RPM 軟件包
選項:
-i | 安裝一個新的rpm軟件包 |
-v | 顯示軟件安裝過程中的詳細信息 |
-h | 在安裝或升級軟件過程中,以“#”號顯示安裝進度 |
-e | 卸載指定名稱的軟件包 |
-U | 升級某個軟件包,若未安裝過,則進行安裝 |
-F | 升級某個軟件包,若未安裝過,則放棄安裝 |
6.維護RPM數(shù)據(jù)庫
當RPM數(shù)據(jù)庫發(fā)生損壞,可通過 重建RPM數(shù)據(jù)庫 修復(fù)
rpm --rebuilddb 或 rpm --initdb
7.解決軟件包的依賴關(guān)系
1.安裝有依賴關(guān)系的多個軟件時
- 被依賴的軟件包需要先安裝
- 可同時指定多個.rpm 包文件進行安裝
2. 卸載有依賴關(guān)系的多個軟件時
- 依賴其他程序的軟件包需要先卸載
- 可同時指定多個軟件名進行卸載
3.忽略依賴關(guān)系
- 結(jié)合"-nodeps"選項,但可能導(dǎo)致軟件異常
四:yum
1.概述
- yum提供了查找、安裝、刪除某一個、一組甚至全部軟件包的命令,而且命令簡潔又好記。
- yum是RPM升級版本,解決rpm的弊端
2.格式
yum [可選項] [要進行的操作] [安裝包名...]
常用命令:
指令 | 用途 |
yum -y install 軟件名 | 安裝升級軟件包 |
yum -y remove 軟件名 | 卸載軟件包,可自動解決其依賴關(guān)系 |
yum -y update 軟件名 | 升級軟件包 |
3.本地yum倉庫編譯安裝
五.源碼編譯安裝
第一步
./configure
configure 文件是作者放在 源碼包中給我們使用,是一個腳本文件
安裝準備工作:
1.選擇安裝在哪里
2.檢測編譯環(huán)境
3.選擇安裝模塊,默認安裝,額外的一寫軟件功能
./configure -- help 看到可以安裝的模塊
第二步
make -j 2 -j 2 代表使用2核cpu編譯
將所有的源代碼翻譯成二進制,會形成一個綠色的可執(zhí)行文件
第三步
make install
將執(zhí)行文件,及相關(guān)的一些 依賴文件拷貝到之前指定的目錄中
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
阿里云ECS實例設(shè)置用戶root密碼和遠程連接的方法
這篇文章主要介紹了阿里云ECS實例設(shè)置用戶root密碼和遠程連接的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧2020-07-07Linux終端執(zhí)行shell腳本,提示權(quán)限不夠的問題及解決
這篇文章主要介紹了Linux終端執(zhí)行shell腳本,提示權(quán)限不夠的問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01詳解Linux 服務(wù)管理兩種方式service和systemctl
systemd是Linux系統(tǒng)最新的初始化系統(tǒng)(init),作用是提高系統(tǒng)的啟動速度,盡可能啟動較少的進程,盡可能更多進程并發(fā)啟動。這篇文章主要介紹了Linux 服務(wù)管理兩種方式service和systemctl,需要的朋友可以參考下2019-09-09linux下統(tǒng)計appche站點IP訪問量的shell腳本
這篇文章主要介紹了linux下統(tǒng)計appche站點IP訪問量的幾種shell腳本以及執(zhí)行結(jié)果2014-06-06centos8使用Apache httpd2.4.37安裝web服務(wù)器的步驟詳解
這篇文章主要介紹了centos8使用Apache httpd2.4.37安裝web服務(wù)器的步驟詳解,本文分步驟給大家介紹的非常詳細,對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-08-08