Linux下的軟件管理
1. 軟件安裝包格式類型
rpm:redhat linux(suse centos redhat)
deb:ub deb
tar: 綠色軟件
源碼編譯
2. rpm包名稱分析
<dhcp>-<4.2.5-68>.<el7_5.1>.<x86_64>.<rpm>
1 2 3 4 5
1.軟件名稱
2.軟件版本
3.軟件授權
4.軟件多少位
5.軟件包的類型
在管理rpm軟件包時用rpm命令
3. rpm命令
設定實驗環境
# mkdir /westos 新建一個目錄
# mount /dev/cdrom /westos 將鏡像掛載在目錄下
# ls /westos 查看目錄
命令演示
# rpm -qa | grep dhcp 查看dhcp是否安裝
# rpm -e dhcp-4.2.5-68.el7_5.1.x86_64.rpm 卸載dhcp
# rpm -ivh dhcp-4.2.5-68.el7_5.1.x86_64.rpm 安裝dhcp
# rpm -qa 查看所有安裝軟件
# rpm -ivh dhcp-4.2.5-68.el7_5.1.x86_64.rpm --force 強制安裝
# rpm -qp FluffyMcAwesome-A-6.4.0-11.r19335.x86_64.rpm --scripts 查看安裝或卸載執行的腳本
# rpm -qp FluffyMcAwesome--B-6.4.0-11.r19335.x86_64.rpm --scripts
4. yum軟件倉庫
軟件倉庫搭建的目的
rpm不能自動解決軟件的依賴關係
yum倉庫可以解決此問題
搭建軟件倉庫的步驟
1.得到與當前系統匹配的系統安裝景象文件
2.建立系統安裝景象掛載點
mkdir /softwaresource 建立目錄
3.掛載景象到景象掛載點
mount /dev/cdron /softwaresource 掛載目錄 取消掛載(umount /softwaresourece)
4.配置系統訪問軟件路徑(yum倉庫指向文件)
在rhel7中
在rhel8中
5.清空yum緩存識別新文件內容
rhel7:
# yum clean all 清空yum緩存識別文件內容
# yum repolist 列出倉庫信息
rhel8中
# dnf clean all 清空緩存
5.yum命令
# yum remove httpd 卸載httpd
# yum repolist 列出倉庫信息
# yum list httpd 列出httpd
# yum list installed 列出已經安裝的軟件
# yum list available | less 列出所有可以用yum安裝的軟件
#
6. 第三方軟件安裝
1.把所有rpm結尾的文件放在一個目錄中/software
2.
# createrepo -v /software 生成軟件數據庫存放軟件屬性
3.
# vim /etc/yum.repos.d/westos.repo 編輯文件
# yum clean all 清除緩存
安裝第三方軟件
# yum search kolourpaint 安裝第三方軟件
7.共享軟件倉庫
1.在含有軟件資源的主機中安裝共享軟件
# mount /dev/cdrom /softwaresource
# yum install vsftpd -y 在含有軟件資源的虛擬中安裝vsftpd
# systemctl start vsftpd 開啓vsfypd軟件
# systemctl enable vsftpd 設置爲開機啓動
2.關閉selinux和firewalld
# vim /etc/sysconfig/selinux
# reboot
# getenforce
# systemctl stop firewalld
3.建立共享目錄
# mkdir /var/ftp/software /var/ftp/rhel7.6 建立共享目錄
# cp /software/kolourpaint-* /var/ftp/software/ 將第三方軟件放入共享目錄
# createrepo -v 生成軟件數據庫
# mount /dev/cdrom /var/ftp/rhel7.6/ 掛載資源到指定路徑 (臨時)
永久掛載景象資源
# vim /etc/rc.d/rc.local 編輯文件
# chmod +x /etc/rc.d/rc.local 給文件權限
測試:
在克隆rhel7中
# vim /etc/yum.repos.d/westos.repo 編寫文件
# # yum repolist 列出軟件庫
利用共享資源安裝第三方軟件kolourpaint
# yum install kolourpaint.x86_64 -y 安裝軟件