軟件包安裝和管理:
庫文件: 軟件角度分爲 1.標準庫 或通用庫(glibc) 2.程序附帶的庫
軟件包:
安裝軟件方式: 1.源代碼需手動編譯安裝 2.二進制格式
組成: 1.配置文件 2.二進制程序 3.庫文件 4.幫助文件
軟件包的安裝路徑:
默認路徑文件保存路徑:
啓動要用到的 在" /" 下
1.usr 系統啓動後用到的
2. usr/local 第三方軟件
3.usr/local/APP 4.opt 指定的目錄
配置文件:/etc 二進制文件:/bin ;/sbin;/usr/bin;/usr/sbin 庫:/lib
幫助文件:/usr/share/man
定義庫文件路徑::
/etc/ld.so.conf 保存路徑
/etc/ld.so.conf.d/*.conf 保存文件路徑
man定義路徑:
/etc/man.config
MANPATH (路徑)
二進制格式安裝:
GPL 程序爲GPL 通常爲源代碼
manage ,軟件包管理器
1.redhat .rpm包
2.suse rpm 同redhat rpm不一樣
3.debian .dep包
Redhat軟件包管理器 RPM RPM is Package Manager
命名格式: package-version-release.arch.rpm
release redhat內部發行號 .el5 redhat企業版5
arch:標示平臺 noarch 跟平臺無關
[注:安裝光盤中通常保存有大多數軟件包]
rpm包管理:
rpm數據庫 : /var/lib/rpm
通常爲標準安裝 安裝至默認路徑下
從新導入RPM數據庫
rpm --rebuilddb 重建
rpm --initdb 原來要是有就不建node
rpm包的管理的經常使用命令 : 包存在依賴關係
一、查詢:rpm
-q PACKAGE_NAME 查詢軟件包是否安裝
-qa 查看全部安裝的軟件包
-ql packagename 列出來軟件包安裝都生成了那些文件
-qc packagename 查看軟件的配置文件
-qd packagename 顯示軟件包安裝完後生成的幫助文檔
-qf filepath 查詢文件是有哪一個軟件包生成的
-qi packagename 查詢軟件包的摘要信息
二、安裝:
rpm -i packagename 安裝
rpm -ivh packagename 顯示安裝進度
--nodeps 忽略依賴關係,可是裝的軟件包可能沒法使用
三、卸載:
rpm -e PACKAGENAME 卸載
--nodeps 忽略依賴關係
四、升級:
rpm -U /path/to/rpm_file
-Uvh 老版本沒裝,直接安裝新版本,有安裝和升級
rpm -F /path/to/rpm_file
-Fvh 僅能在原版本基礎上升級
--force 強行升級
[注:內核只能安裝,不能升級]
5. 校驗
rpm -V (包名) 能夠查看軟件包和安裝文件是否被修改
rpm -V -p filename 安裝前檢查軟件是否可靠
S表示大小變化 M 權限 5 校驗碼 D 設備號不起配 L U G 屬主 屬組 算法
簽名: 軟件包 操做系統發行商簽名使用公鑰加密算法和md5 校驗碼
檢查簽名: --checksig 只檢查簽名
rpm -V (完整包名) 安裝後檢查
rpm -K (完整包名) 安裝前檢查
rpm -V -p (完整包名) 同上
導入key (key文件位置: /etc/pki/rpm-gpg/*-release)
rpm --import (key文件)
數據庫:
重建: rpm --rebuilddb 徹底重建
rpm --initdb 沒有才建 有則不建數據庫
爲自動解決依賴關係而產生的軟件包管理工具:
Redhat
1.up2date
2.Yellow Dog
3.yum --> rpm :Yellowdog Updater Modified
yum: 1.支持全部rpm包 2. XML文件 記錄軟件依賴關係
yum獲取軟件包支持的協議1. ftp協議 2. http協議 3. file:/// 本地文件
yum倉庫: yum repository 軟件倉庫
yum客戶端配置文件 :/etc/yum.conf
倉庫配置文件 :/etc/yum.repos.d/*.repo
XML在哪兒 yum倉庫在哪兒 XML通常在倉庫父目錄
倉庫配置:
分類存放:
[id] 分爲四塊:
1.base
2.VT
3.Cluster 集羣
4.ClusterStorage 集羣存儲
每塊下配置內容格式:
name= 隨便起
baseurl=URL 具體yum庫地址 本地file:///yum.....找到repodata所在位置
gpgcheck=0 校驗 0 不檢查
enabled=1 /0 默認爲1 不啓用爲0緩存
yum客戶端管理軟件包yum不容許運行兩次 yum list all 查看全部可用yum包
格式:yum [option] [command] [package]
查看軟件包:
yum list ( all| installed | available )
查詢文件是由哪一個軟件包生成的
yum provides | whatprovides FILE
查詢yum包摘要信息:
yum info == rpm -qi
查看組:
yum grouplist
安裝組:
yum gruopinstall 1 安裝一個組 可跟多個組
安裝軟件包: -y 表示自動回答爲yes
yum install (包名,可不加版本號) p1 p2 p3
安裝本地文件:
yum --nogpgcheck localinstall RPM_FILE
--nogpgcheck 不檢測簽名信息
重裝軟件包
yum reinstall
降級安裝:
yum downgrad
升級:
yum update (包名)
若是升級的爲內核的話 將自動切換爲安裝
檢查是否有可升級的軟件包
yum check-update
卸載:
remove (包名)
清除緩存cache:
yum clean all 清除全部緩存
注:可能會遇到的問題
1. 啓動兩次
提示有一個yum正在運行 使用ps kill
2. 地址正確 但常常報錯
多是DNS配置錯誤
其餘軟件包:
一. 相似綠色軟件
二. 源碼安裝
C ,C++ , Perl
源碼文件: 編譯順序 makefile文件 根據makefile編譯
C,C++ 編寫的文件編譯安裝:
1. ./configure --prefix= (自定義安裝路徑)
2. make
3. make install
兩個文件: 1.configure 2. Makefile.in
1. 檢查預編譯環境 結合2. --> 生成makefile
Perl 編寫的文件編譯安裝:
1. Perl Makefile
2. make
3. make install
頭文件在 /etc/include/ 存放.沒有能夠連接過來
include 包含頭文件ide