安裝及管理文件
源碼編譯安裝
優點:
- 契合系統兼容性強
- 如果你可以看懂源程式碼,修改新增功能
- 比較自由
缺點:
- 如果編譯出了問題,你看不懂源程式碼,無法解決
- 安裝過程複雜
- 沒有統一的管理人員
安裝過程
程式包編譯安裝:
源程式碼-->預處理-->編譯-->彙編-->鏈接-->執行
預處理:./configure 定義模組和路徑 (--prefix=PATH 指定路徑) //在文件夾內有configure
編譯:make
寫入硬碟:make install
tar解包
用途:
將下載的軟體包解壓並釋放源程式碼包到指定的目錄。
操作:
- 使用tar命令將軟體包解壓到指定目錄,一般選擇/usr/src/目錄(也可自建目錄)。
- 解包後的源程式碼文件位置:/usr/src/軟體名-版本號。
[root@localhost ~]# tar -jxf httpd-2.4.52.tar.bzp2 -C /usr/src/ //解壓源程式碼包,並指定釋放目錄
### ./configure配置
用途:
設置安裝目錄、安裝模組等選項。
操作:
使用源碼目錄中的configure腳本,執行 「./configure --help」 可查看幫助。
配置選項:
--prefix=軟體安裝目錄
示例:
[root@localhost ~]# cd /usr/src/httpd-2.4.25 //切換至源程式碼包釋放目錄
[root@localhost httpd-2.4.25]# ./configure --prefix=/usr/local/apache //運行configure腳本,檢測安裝環境,並指定安裝目
make編譯與安裝
用途:
- 生成可執行的二進位文件。
- 複製二進位的文件到系統,配置應用環境。
操作步驟:
- 編譯:執行make命令。
- 安裝:執行make install命令。
示例:
[root@localhost httpd-2.4.25]# make //編譯
[root@localhost httpd-2.4.25]# make install //安裝
yum install apr* gcc* pcre* -y //安裝依賴環境需要的 工具包
mkdir /app //建立文件夾
cd /data
tar xf httpd-2.4.29.tar.bz2 //解壓源碼包
cd httpd-2.4.29/
yum install apr* gcc* pcre* -y //安裝依賴環境需要的 工具包
./configure --prefix=/app //選擇安裝目錄
make -j2 //編譯 j2 代表使用2顆cpu編譯
make install //寫進硬碟
systemctl stop firewalld //關閉防火牆
setenforce 0
cd /app/
cd /app/bin
/app/bin/apachectl start //開啟服務
ss -ntap |grep 80 //有就沒問題
/app/bin/apachectl stop //停止服務
yum安裝
格式:
yum [option] [command] [package...]
常用命令:
1. yum install <package_name> //安裝指定的軟體包
2. yum remove <package_name> //刪除指定的軟體包
3. yum search <keywords> //搜索匹配特定字元的軟體包
4. yum list //列出yum倉庫中所有可安裝的軟體包清單
5. yum info //列出yum倉庫中所有可安裝的軟體包詳細資訊
5. yum update //更新所有軟體
6. yum update <package_name> //更新指定的軟體
7. yum repolist //查看當前可用yum源
8. 查看歷史事務
yum history //查看軟體改變歷史
yum history info <id> //列出某次事務的詳細資訊
yum history undo <id> //撤銷某次更改
9. 清理快取
yum clean packages //清除快取中的rpm包文件
yum clearn headers //清除快取中的rpm頭文件
yum clean oldheaders //清除快取中舊的rpm頭文件
yum clearn 或 yum clearn all //清除快取中rpm包文件和舊的rpm頭文件
配置本地yum源
掛載光碟
[root@localhost ~]mount /dev/sr0 /mnt/ //將光碟掛載到/mnt目錄下
注意:mount命令是一次性掛載,退出當前終端或重啟後就不存在了。永久掛載需要修改配置文件。
移動yum自帶的倉庫文件
[root@localhost ~]# cd /etc/yum.repos.d/ //切換至/etc/yum.repos.d/
[root@localhost ~]# mkdir bak //創建一個名為bak的新目錄
[root@localhost ~]# mv *.repo bak/ //將yum倉庫中以.repo結尾的文件移動到bak中
新建yum倉庫文件
[root@localhost yum.repos.d]# vim local.repo //新建yum倉庫文件
[local]
name=local //設置名稱
baseurl=file:///mnt //設置鏈接地址,file://是固定格式,掛載在/mnt
gpgcheck=0 //無需驗證公鑰
enabled=1 //開啟此yum源
:wq //保存退出
清理快取並安裝軟體
[root@localhost yum.repos.d]# yum clean all //清除快取
[root@localhost yum.repos.d]# yum makecache //重新建立元數據
[root@localhost yum.repos.d]# yum list //查看可安裝的軟體列表
[root@localhost yum.repos.d]# yum install httpd -y //安裝httpd測試是否成功
rpm 安裝
優點:
- 統一的安裝包格式
- 已經幫你編譯完成
- 使用簡單
缺點:
- 有依賴關係
查詢已安裝的 RPM 軟體資訊
rmp -q[子選項] [軟體名]
| 選項 | 功能 |
| -qa | 顯示當前系統中以 RPM 方式安裝的所有軟體列表 |
| -q | 查詢指定軟體是否已安裝 |
| -qi | 查看指定軟體包的名稱、版本、許可協議、用途描述等詳細資訊 |
| -ql | 顯示指定的軟體包在當前系統中安裝的所有目錄、文件列表 |
| -qc | 列出已安裝的指定軟體的配置文件 |
| -qd | 列出已安裝的指定軟體的軟體包文檔所在位置 |
| -qf | 查看指定的文件或目錄是由哪個軟體包所安裝的 |
查詢未安裝的RPM軟體包文件資訊
rmp -qp[子選項] RPM包文件
| 選項 | 功能效果 |
| -qp | 查詢未安裝的軟體包 |
| -qpd | 查詢未安裝的指定軟體包的文檔位置 |
| -qpi | 查詢未安裝的指定軟體包的完整名稱等詳細資訊 |
| -qpl | 查詢未安裝的指定軟體包的文件列表 |
| -qpc | 查詢未安裝的指定軟體包的配置文件位置 |
安裝、升級、卸載RPM軟體包
安裝
rpm -ivh tree-1.6.0-10.el7.x86_64.rpm
升級
rpm -U 軟體名 (要升級包)
| 選項 | 說明 |
| -h | 在安裝或升級軟體包的過程中,以「#」號顯示安裝進度。 |
| - -force | 強制安裝某個軟體包,比如要安裝版本更舊的軟體包。 |
| -v | 顯示軟體安裝過程中的詳細資訊 |
| --nodeps | 在安裝或升級、卸載一個軟體包時,不檢查與其他軟體包的依賴關係,強制安裝 |
卸載
rpm -e 軟體名 (縮寫)
總結
以上三種都是可以安裝軟體包的,具體用哪一種看具體情況。 因為PRM安裝軟體包時有依賴關係,所以一般使用YUM安裝和源碼編譯安裝
