1. 程式人生 > >軟件包安裝/rpm/yum/yum搭建本地倉庫

軟件包安裝/rpm/yum/yum搭建本地倉庫

光驅 vid 刪除 zenity etc 指定 red data pod

安裝軟件包的三種方法

rpm工具
yum工具
源碼包

源碼包的安裝相對復雜,yum工具是最簡單方便的工具,rpm相對來說繁瑣的多。



rpm包介紹

rpmRed Hat Package Manager的縮寫,有Red Hat公司開發,它是以一種數據庫記錄的方式將我們所需要的套件安裝到linux主機的一套管理程序。rpm的安裝非常快捷,但是它有一些缺點,例如包與包之間存在著相互依賴的情況,卸載包時需要先把依賴的包卸載。如果依賴的包是系統所必需的,就不能卸載這個包,否則系統崩潰。

在介紹rpm包格式的時候我們先做好準備工作,設置光驅連接,將光驅掛載到/mnt下;

[root@Ask-02 ~]# mount /dev/cdrom /mnt/

mount: /dev/sr0 寫保護,將以只讀方式掛載
[root@Ask-02 ~]# ls /mnt/
CentOS_BuildTag EULA images LiveOS repodata RPM-GPG-KEY-CentOS-Testing-7
EFI GPL isolinux Packages RPM-GPG-KEY-CentOS-7 TRANS.TBL

將光驅掛載在/mnt下後我們列出mnt下的目錄與文件,可以考到這些都是安裝centos系統的所需文件,我們cdPackages的文件下面看下,進入到該目錄下後ls查看,我們可以看到rpm

格式的安裝包

zenity-3.8.0-5.el7.x86_64.rpm
zip-3.0-11.el7.x86_64.rpm
zlib-1.2.7-17.el7.x86_64.rpm
zlib-devel-1.2.7-17.el7.x86_64.rpm
zsh-5.0.2-25.el7.x86_64.rpm
zziplib-0.13.62-5.el7.x86_64.rpm

這裏以zsh-5.0.2-25.el7.x86_64.rpm,做講解;
zsh=包名
5.0.2=版本號
25.el7=發布版本號
x86_64=平臺(表示系統是基於32位還是64位)
rpm=後綴名

這裏我使用的是centos7,centos7已經不區分64和32位了。

rpm工具用法

安裝rpm

[root@Ask-02 Packages]# rpm -ivh zsh-5.0.2-25.el7.x86_64.rpm //rpm命令後跟參數,最後跟“包文件”,由於我已經在文件的當前目錄下所以我實用輸入了相對路徑,如果不在包文件當前目錄下,需要打上完整的絕對路徑。

升級rpm;

[root@Ask-02 Packages]# rpm -uvh zsh-5.0.5-25.el7.x86_64.rpm //升級使用的參數為u,參數後面跟最新包文件,這裏我們地方是zsh的5.0.5版本。

卸載rpm;

[root@Ask-02 Packages]# rpm -e zsh //rpm卸載的時候更簡單,-e參數後直接跟包名即可

查詢安裝過的rpm包;

[root@Ask-02 Packages]# rpm -qa

查詢指定包是否已安裝;

[root@Ask-02 Packages]# rpm -q ppp //-q參數後跟包名

列出包安裝的文件;

[root@Ask-02 Packages]# rpm -ql //參數後跟包名

查看命令文件(絕對路徑)是那個rpm包的;

[root@Ask-02 Packages]# rpm -qf //參數後跟命令的絕對路徑

yum工具用法

yum工具最大優勢就在於可以聯網去下載所需要的rpm包,然後自動安裝,如果要安裝的rpm包有依賴性關系,yum工具會幫我們依次安裝所有相關的rpm包。

列出可用的rpm包;

[root@Ask-02 Packages]# yum list

yum倉庫配置文件查看;

[root@Ask-02 Packages]# ls /etc/yum.repos.d/

精準從yumlist裏走所包括命令的包

[root@Ask-02 Packages]# yum list |grep ‘vim‘ //這裏我們以vim為例子

yum安裝rpm包;

[root@Ask-02 Packages]# yum install -y zsh //這裏以zsh為例

列出可用安裝的組;

[root@Ask-02 Packages]# yum grouplist

安裝可用安裝組;

[root@Ask-02 Packages]# yum groupinstall ‘組對應的包名‘

卸載rpm包,同時依賴的包也卸載

[root@Ask-02 Packages]# yum remove -y zsh

升級rpm包;

[root@Ask-02 Packages]# yum undate 跟新的包名

搜索指定命令的相關報;

[root@Ask-02 ~]# yum provides "/*/zsh"

yum搭建本地倉庫

首先先掛載鏡像光驅到mnt目錄下

備份相關目錄和配置文件;

[root@Ask-02 ~]# cp -r /etc/yum.repos.d/ /etc/yum.repos.bak

進入到yum.repos.d目錄下;

[root@Ask-02 ~]# cd /etc/yum.repos.d

刪除當前目錄所有文件;

[root@Ask-02 yum.repos.d]# rm -rf ./*

創建dvd.repo配置文件,寫入配置;

[root@Ask-02 Packages]# vi dvd.repo
[dvd]
name=install dvd
baseurl=file:///mnt
enable=1
gpgcheck=0

清理軟件源(緩存);

[root@Ask-02 Packages]# yum clean all

軟件包安裝/rpm/yum/yum搭建本地倉庫