软件包管理(rpmyum)
一、rpm包管理器
rpm是一個(gè)功能強(qiáng)大的包管理工具,可用于構(gòu)建,安裝,查詢,驗(yàn)證,更新和卸載軟件包。
用法:
rpm [OPTION...]
配置文件:
/var/lib/rpm/ 已安裝rpm包的元數(shù)據(jù)
選項(xiàng):
- -i:安裝
- --test:測試安裝
- --nodeps:忽略依賴關(guān)系
- --replacepkgs | replacefiles 重裝
- --nosignature:不檢查來源合法性
- --nodigest:不檢查包完整性
- --noscript:不執(zhí)行程序包腳本
- --nopre:不執(zhí)行安裝前腳本
- --nopost:不執(zhí)行安裝后腳本
- --nopreun:不執(zhí)行卸載前腳本
- --nopostun:不執(zhí)行卸載后腳本
- -v|-vv:顯示過程
- -h:顯示進(jìn)度條
- --force:強(qiáng)制
- -e:卸載
- --allmatches:卸載包的所有版本
- -U:升級(jí)安裝
- -F:升級(jí)
- --oldpackage:降級(jí)
- -q:查詢
- -a:顯示所有包
- -f:查詢文件是由哪個(gè)包生成的
- -p:查詢未安裝的文件名
- -c:只看配置文件
- -d:顯示文檔
- -i:包的說明信息
- -l:查看程序包提供了哪些文件
- --scripts:查詢包的腳本信息
- -R:查詢包所依賴的“能力”
- --whatprovides CAPABILITY:查詢指定的”能力“由哪個(gè)包所提供
- --whatrequires CAPABILITY:查詢指定的“能力”被哪個(gè)包所依賴
- --changelog:查詢r(jià)pm包的更新日志
- --provides:列出包提供的“能力”
- -V:校驗(yàn)包屬性是否發(fā)生變化,以下為變化的信息
- S file Size differs
- M Mode differs (includes permissions and file type)
- 5 digest (formerly MD5 sum) differs
- D Device major/minor number mismatch
- L readLink(2) path mismatch
- U User ownership differs
- G Group ownership differs
- T mTime differs
- P capabilities differ
- -K:檢查包的簽名和完整性
- --import /etc/pki/rpm-gpg/KEY導(dǎo)入公鑰
- --root=/path/ 安裝到指定“/”下
- --initdb:初始化rpm數(shù)據(jù)庫
- --rebuilddb:重建rpm數(shù)據(jù)庫
相關(guān)命令:
ldconfig -p 查看系統(tǒng)中所有的庫
rpm2cpio FILE.rpm |cpio -tv 預(yù)覽包內(nèi)文件
rpm2cpio FILE.rpm |cpio -idv /path/file 解壓rpm包指定文件
二、yum包管理器
yum(Yellowdog Update Modifier)是一個(gè)基于rpm的交互式軟件包管理器。
用法:
yum [options] [command] [package ...]
配置文件:
/etc/yum.conf 配置文件
- cachedir 緩存目錄
- keepcache=0|1 安裝時(shí)是否保留緩存的rpm包
- logfile 日志文件
- gpgcheck=0|1 檢查簽名和完整性
/var/log/yum.log 日志
/etc/yum.repos.d/FILE.repo??yum源文件
[base]
name=base #描述信息
baseurl=http|ftp|file #yum倉庫,路徑指向repodata的父目錄
enabled=0|1
gpgcheck=0|1
gpgkey=/etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
failovermethod={roundrobin|priority}#roundrobin:意為隨機(jī)挑選,為默認(rèn)值#priority:按順序訪問
cost= #優(yōu)先級(jí),默認(rèn)1000,值越小越優(yōu)先
mirror=http|ftp|file #指向repo地址的文件 ?
/var/cache/yum/x86_64/6 緩存路徑
# yum-config-manager --add-repo=https://mirrors.aliyun.com/centos/6/os/x86_64/
# yum-config-manager --disable “倉庫名" 禁用倉庫
# yum-config-manager --enable “倉庫名” 啟用倉庫
# createrepo /rpmdir 創(chuàng)建元數(shù)據(jù)
選項(xiàng):
- -y 安裝或卸載是直接回答yes,不進(jìn)入交互式
- -q 靜默模式
- --disablerepo=repoidglob:臨時(shí)禁用此處指定的repo
- --enablerepo=repoidglob:臨時(shí)啟用此處指定的repo
- --noplugins:禁用所有插件
子命令:
- list 列出repo源包含的所有軟件包
- installed 列出所有已安裝的包
- install 安裝
- reinstall 重新安裝
- repolist [all|disabled] 列出當(dāng)前生效的repo源[所有|已關(guān)閉的]
- clean all 清除緩存
- update [package1...] 升級(jí)軟件包
- downgrade [package1...] 降級(jí)軟件包
- check-update 檢查可升級(jí)的包
- remove 卸載軟件包
- info 查看包的詳細(xì)信息
- provides 查找命令由哪些包提供
- makecheck 手動(dòng)生成緩存
- search 模糊搜索包信息
- deplist 檢查依賴包
- history 安裝卸載的歷史
- list # 列出指定的操作
- info # 列出指定操作的詳細(xì)信息
- undo # 撤銷指定id的操作
- redo # 重新執(zhí)行
- groupinstall 安裝包組
- groupupdate 升級(jí)包組
- grouplist 列出所有包組
- groupremove 移除包組
- groupinfo 查看包組的詳細(xì)信息
示例1:搭建一個(gè)本地yum源(CentOS6.9)
1、先將系統(tǒng)自帶的repo文件移動(dòng)到其他地方
[root@web1 ~]# cd /etc/yum.repos.d/ [root@web1 yum.repos.d]# ls CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo epel-testing.repo CentOS-Debuginfo.repo CentOS-Media.repo epel.repo [root@web1 yum.repos.d]# mv ./* ~ [root@web1 yum.repos.d]# ls
2、將本地cdrom掛載到指定目錄并設(shè)置開機(jī)掛載
[root@web1 ~]# mkdir /media/cdrom [root@web1 ~]# mount -r /dev/sr0 /media/cdrom [root@web1 ~]# ls /media/cdrom CentOS_BuildTag isolinux RPM-GPG-KEY-CentOS-Debug-6 EFI Packages RPM-GPG-KEY-CentOS-Security-6 EULA RELEASE-NOTES-en-US.html RPM-GPG-KEY-CentOS-Testing-6 GPL repodata TRANS.TBL images RPM-GPG-KEY-CentOS-6
[root@web1 ~]# vim /etc/fstab /dev/sr0 /media/cdrom iso9660 defaults 0 0 #加入開機(jī)自動(dòng)掛載
3、配置yum源并測試
# vim /etc/yum.repos.d/base.repo
[base] name=cdrom baseurl=file:///media/cdrom/ gpgcheck=1 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
[root@web1 ~]# yum repolist Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile base | 4.0 kB 00:00 ... base/primary_db | 4.7 MB 00:00 ... repo id repo name status base cdrom 6,706 repolist: 6,706
測試OK!
示例2:配置網(wǎng)絡(luò)源(epel源)
以阿里源為例,下載repo文件到指定目錄,測試OK!
[root@web1 ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo [root@web1 ~]# cat /etc/yum.repos.d/epel.repo [epel] name=Extra Packages for Enterprise Linux 6 - $basearch baseurl=http://mirrors.aliyun.com/epel/6/$basearchhttp://mirrors.aliyuncs.com/epel/6/$basearch #mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch failovermethod=priority enabled=1 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6[epel-debuginfo] name=Extra Packages for Enterprise Linux 6 - $basearch - Debug baseurl=http://mirrors.aliyun.com/epel/6/$basearch/debughttp://mirrors.aliyuncs.com/epel/6/$basearch/debug #mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-6&arch=$basearch failovermethod=priority enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 gpgcheck=0[epel-source] name=Extra Packages for Enterprise Linux 6 - $basearch - Source baseurl=http://mirrors.aliyun.com/epel/6/SRPMShttp://mirrors.aliyuncs.com/epel/6/SRPMS #mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-source-6&arch=$basearch failovermethod=priority enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 gpgcheck=0[root@web1 ~]# yum repolist Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile* epel: mirrors.aliyun.com repo id repo name status base cdrom 6,706 epel Extra Packages for Enterprise Linux 6 - x86_64 12,497
# rpm -ivh https://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpm #CentOS7安裝repo源
?
?
?記錄于2018.04.19 20:41
轉(zhuǎn)載于:https://www.cnblogs.com/L-dongf/p/8886117.html
總結(jié)
以上是生活随笔為你收集整理的软件包管理(rpmyum)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 废电缆线多少钱一斤?
- 下一篇: HDU1402(FFT入门)