Rpm包的安装与yum的配置
?
RPM包管理器的常用命令和示例:
?
1、安裝程序包:
rpm [option]/path/to/package_file
–i:安裝程序包
–v:顯示安裝的過程
-h :顯示安裝進(jìn)度
-vv:顯示詳細(xì)信息
-vvv:顯示更更詳細(xì)信息
-ivh --nodeps: 強(qiáng)制安裝程序包(不解決依賴關(guān)系情況下強(qiáng)制安裝,將不能正常使用)
2、? 卸載程序包
rpm [option] package_name
??-e:卸載包
[root@localhost Packages]# rpm -ev zsh
???????? -e --nodeps:強(qiáng)制卸載(不解決依賴關(guān)系情況下強(qiáng)制卸載,將只能卸載主包,不能卸載子包)
?
注意:如果包的配置文件安裝后曾被改動(dòng)過,卸載時(shí),此文件將不會(huì)卸載,而是被重命名并保留,
??????????????????????????? 例如[root@localhost Packages]# rpm -ezsh
??????????????????????????????????????? warning:/etc/zlogout saved as /etc/zlogout.rpmsave
3、? 升級(jí)程序包:
????rpm [option] /pat/to/package_file
????(1).升級(jí)或安裝(有老版本就升級(jí),沒有就安裝)
????????? -Uvh
(2)、純升級(jí):(必須有老版本)
????? -Fvh
????? -Fvh –force:強(qiáng)制升級(jí) 但無(wú)法正常運(yùn)行
注意:不能對(duì)系統(tǒng)內(nèi)核執(zhí)行升級(jí)操作,而是重新安裝高版本系統(tǒng)(linux操作系統(tǒng)運(yùn)行多個(gè)系統(tǒng)內(nèi)核)
?
4、? 包的查詢命令
-q: 查詢包是否安裝了
-qa:查詢所有已經(jīng)安裝的包
-qi:查詢已經(jīng)安裝的包信息
-ql:查詢某包生成了那些文件
-qc:查新包生成了那些配置文件
-qd:查新生成了那些幫助信息
-q - –scripts: 查詢程序包的相關(guān)腳本
[root@localhost Packages]# rpm -ql zsh| less-----查新zsh包生成了那些文件
[root@localhost Packages]# rpm -qa |grep "zsh"---過濾所有zsh安裝過的包
?
查看zsh包的詳細(xì)信息
?
5、? 生成文件屬性校驗(yàn):
用于檢查包安裝生成的文件屬性是否發(fā)生變化
rpm –V
6、? 查程序是由那個(gè)包安裝成的
[root@localhost Packages]# rpm -qf /etc/fstab
setup-2.8.14-20.el6_4.1.noarch
7、對(duì)尚未安裝的包執(zhí)行查詢
???????????????????? rpm[option] 絕對(duì)包全名
???????????????????? -qpi查看包的信息
???????????????????? -qpl查看生成那些文件
???????????????????? -qpc查看生成那些配置文件
???????????????????? -qpd查看生成那些幫助信息
8、生成文件屬性校驗(yàn):
????????????? 用于檢查包安裝生成的文件屬性是否發(fā)生變化(屬性不變化顯示為點(diǎn))
???????????????????? rpm-V?
???????????????????? ?? S file Size differs 文件大小
???????????????????? ?? M Mode differs (includes permissions andfile type) 權(quán)限和文件類型
???????????????????? ?? 5 digest (formerly MD5 sum) differs? MD5加密
???????????????????? ? ?DDevice major/minor number mismatch 設(shè)備文件設(shè)備號(hào)
???????????????????? ?? L readLink(2) path mismatch? 路徑
???????????????????? ?? U User ownership differs 屬主
???????????????????? ?? G Group ownership differs屬組
???????????????????? ?? T mTime differs 時(shí)間
???????????????????? ?? P caPabilities differ能力
9、rpm 包來(lái)源的合法性
????????????? rpm–import /path/to/file_key------導(dǎo)入密鑰
???????????????????????????
????????????? rpm-qa??? ------顯示已經(jīng)導(dǎo)入的密鑰格式
????????????? #rpm -qa gpg-pubkey*
?????????????
????????????? rpm-qi ---------------顯示密鑰的詳細(xì)信息
????????????? #rpm -qi gpg-pubkey-NAME
????????????? ?
10、檢查包:安裝過程中會(huì)自動(dòng)執(zhí)行檢查(導(dǎo)入密鑰安裝過程將自動(dòng)檢測(cè))??? ?
手動(dòng)檢查:
?????????????????????????????????? rpm -K/path/to/package_file
?????????????????????????????????? rpm--checksig /path/to/package_file
?
未安裝的包檢查來(lái)源性和合法性:rpm -K? 包的名稱
?
不檢查包完整性,檢查包的來(lái)源合法性rpm –K - -nodigest 包的名稱
不檢查包來(lái)源合法性,檢查完整性rpm -K --nosignature 包的名稱
?
?
?
YUM:的安裝:
Yum(全稱為 Yellow dog Updater, Modified)是一個(gè)在Fedora和RedHat以及SUSE、CentOS中的Shell前端軟件包管理器。基于RPM包管理,能夠從指定的服務(wù)器自動(dòng)下載RPM包并且安裝,可以自動(dòng)處理依賴性關(guān)系,并且一次安裝所有依賴的軟件包,無(wú)須繁瑣地一次次下載、安裝
yum是C/S架構(gòu)
yum的配置的一種方法:/etc/yum.repos.d目錄下增加.repo文件。
1、? yum配置:
提供repo配置文件,指明倉(cāng)庫(kù)訪問路徑和各種屬性信息
中心配置文件:/etc/yum.conf
一個(gè)或者幾個(gè)相關(guān)倉(cāng)庫(kù)的配置信息可保存為一個(gè)文件,文件名都以.repo結(jié)尾:
?
?
在/etc/yum.repos.d/下自定義一個(gè)名字隨便后綴為.repo為結(jié)尾的格式如下:
用本地光盤配置yum客戶端:
(1)、首先掛載光盤
??? ?? [root@localhost ~]# mount /dev/cdrom/media/cdrom
????????mount: block device /dev/sr0 is write-protected, mountingread-only
(2)、在目錄/etc/yum.repos.d創(chuàng)建后綴名為.repo的文件格式如下:
????????????[root@localhost~]# vim ning.repo
?
????????????[ning1]?? #方括號(hào)里面的是軟件源的名稱,將被yum取得并識(shí)別
????????????name=CentOS-6.5-x86_64-bin-DVD1.isoon local cdrom? #定義倉(cāng)庫(kù)的內(nèi)容
????????????baseurl=file:///media/cdrom/?? # 定義倉(cāng)庫(kù)位置
????????????enabled=0?????????????? #0代表禁用?? 1代表啟用
????????????gpgcheck=1??????????? #1啟用校驗(yàn) 0禁用校驗(yàn)
????????????gpgkey=file:///media/cdrom/RPM-GPG-KEY-CentOS-6#校驗(yàn)密鑰的位置
配置擁有yum服務(wù)器的客戶端:
?????? 直接在目錄/etc/yum.repos.d下創(chuàng)建后綴名為.repo的文件即可,格式如下
????????????? 在這里我們引入兩個(gè)默認(rèn)宏:
????????????????????????????????????????? $releasever匹配主板本號(hào),不匹配次版本號(hào)
????????????????????????????????????????? $basearch匹配系統(tǒng)架構(gòu)
[root@localhost yum.repos.d]# vim centos6.5.repo
?
[base]
name=CentOS $releasever $basearch on local server 172.10.0.1
baseurl=http://172.16.0.1/cobbler/ks_mirror/centos-6.5-$basearch/
?????? ?? file:///media/cdrom/
?????? ?? gpgcheck=0
?
[extra]
name=CentOS $releasever $basearch extras
baseurl=http://172.16.0.1/centos/$releasever/extras/$basearch/
gpgcheck=0
?
[epel]
name=Fedora EPEL for CentOS$releasever $basearch on local server172.16.0.1
baseurl=http://172.16.0.1/fedora-epel/$releasever/$basearch/
gpgcheck=0
yum客戶端命令的使用:
?????? yumrepolist all #列出所有repo
????????????? yum list all#列出庫(kù)中的所有的rpm包
????????????? yum list installed#列出庫(kù)中的已經(jīng)安裝過的rpm包
????????????? yum list available#列出沒有安裝的rpm包
?
????????????? yum info 包名 #查詢包的信息
?
? ? ? ? yum install package_name 安裝程序包
????????????? [root@localhost yum.repos.d]# yuminstall zsh
? ? ? ? yum reinstall package_name重新安裝包
?????????? [root@localhostyum.repos.d]# yum reinstall zsh
??? ??yumcheck-update :檢查可升級(jí)的安裝
??????yum update x:更新安裝包
?????????? x-1.3.1,x-1.3.2,x-1.3.3
????yum update x-1.3.2 ---指定升級(jí)那個(gè)版本(如果不指定將升級(jí)最高版本)
? ? ? yumdowngrade package_name: 降級(jí)安裝包
? ? ? yumremove |erase 包名:卸載軟件包(自動(dòng)解決依賴關(guān)系)
?
??? yumgrouplist :列出包組
??? yumgroupinfo 組名:顯示包租信息。
? yum groupinstall 組名:直接安裝一個(gè)服務(wù)組的安裝包
? yum groupremove 組名:直接卸載一個(gè)服務(wù)組的安裝包
? ? yum clean all:清理所有緩存
?????? 緩存主要存在:/var/cache/yum/x86_64/base/packages/下有下載的剛安裝過系統(tǒng)包
創(chuàng)建yum服務(wù)器
自建提供yum的倉(cāng)庫(kù)的中心服務(wù)器:
1、? 以安裝httpd,并啟動(dòng)服務(wù)
、
2、? 在httpd的文檔根目錄/var/www/html;
? 創(chuàng)建子目錄,存放相關(guān)的所有rpm包
? 我們這里從光盤上拷貝到此目錄下:
? [root@localhost html]# cp -rp/media/cdrom .
3、? 為庫(kù)生成元數(shù)據(jù)文件,以使能夠?yàn)閭}(cāng)庫(kù)使用
? 先安裝createrepo
? #rpm –ivh createrpo
? [root@localhost html]# createrepo/var/www/html/cdrom/
??? 4、配置yum客戶端使用此倉(cāng)庫(kù)即可
2、[root@localhost yum.repos.d]# vimcentos6.5.repo
?
[base]
?name=172.16.3.1.base.repo
? baseurl=http://172.16.3.1/cdrom/
?gpgcheck=0
?
編譯源代碼軟件包
編譯原代碼的步驟:
1、#./configure
2、#make
3、#make install
?
實(shí)踐案例:nginx編譯
1、? 先解壓檢查編譯環(huán)境
2、? 編譯內(nèi)核
?
?
3、? 安裝拷貝生成的文件到目錄下
?
4、? 查看生成的文件
編譯完成
6、運(yùn)行nginx
#cd/usr/local/nginx/
#/sbin/nginx&
添加永久路徑
[root@localhostnginx]# vim /etc/profile.d/nginx.sh添加個(gè)文件,nginx.sh
?
?
exportPATH=$PATH:/usr/local/nginx/sbin
?
查看是否添加
[root@localhost~]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/nginx/sbin:/root/bin
???????
7、導(dǎo)出手冊(cè)頁(yè)?????
root@localhost~]# vim /etc/man.config
MANPATH /usr/local/nginx/man
轉(zhuǎn)載于:https://blog.51cto.com/wodemeng/1440465
總結(jié)
以上是生活随笔為你收集整理的Rpm包的安装与yum的配置的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Django配置数据库读写分离
- 下一篇: 再谈迭代器,生成器,yield,及和类的