红帽Redhat—Linux软件管理
一、什么是軟件?
軟件:
Software是一系列按照特定順序組織的計(jì)算機(jī)數(shù)據(jù)和指令的集合。一般來講軟件被劃分為系統(tǒng)軟件、應(yīng)用軟件和介于這兩者之間的中間件。
不同的系統(tǒng)平臺(tái)指令不同,因此軟件也不同,所以在不同類別的系統(tǒng)中,軟件并不能通用,比如微軟系統(tǒng)中的exe安裝包,一般無法在linux系統(tǒng)中安裝。
在Linux界有兩大常見的軟件安裝方式:DPKG、RPM。
DPKG最早由debian linux社區(qū)開發(fā),B2D和ubuntu主要用這種安裝方式。
RPM最早是由red hat研發(fā),fedora、CentOS、SuSE等知名的開發(fā)商都是用該種方式。
RPM介紹:
RedHat Package Manager 是以一種數(shù)據(jù)庫記錄的方式來將所需要的軟件安裝到 Linux 系統(tǒng)的一套管理機(jī)制。
特性:
在通用平臺(tái)上將軟件編譯好,打包成為 RPM 機(jī)制的包 [安裝環(huán)境已定制化]。記錄并檢查軟件安裝的依賴包,安裝的時(shí)候就將該軟件的信息整個(gè)寫入 RPM 的數(shù)據(jù)庫中,供后續(xù)查詢、升級(jí)和卸載。
RPM軟件包文件采用的軟件名稱組合name--version--release.architecture的命名方式進(jìn)行命名。
httpd-2.4.6-88.el7.x86_64.rpm [軟件名-版本號(hào)-編譯次數(shù).發(fā)行商版本.處理器平臺(tái)]
name:描述其內(nèi)容的一個(gè)或多個(gè)單詞 (httpd)
version: 軟件的原始版本號(hào) (2.4.6)
release:在原始的發(fā)行版本號(hào)基礎(chǔ)上,被新的軟件開發(fā)商編譯的次數(shù)及新的命名(88.el7)
arch:該軟件可運(yùn)行的處理機(jī)器架構(gòu) (x86_64);"noarch"表示不限定架構(gòu)(目前常見的幾種處理器硬件架構(gòu):x86、arm、PowerPC)
二、虛擬機(jī)設(shè)置
1.點(diǎn)擊虛擬機(jī)->設(shè)置。
2.點(diǎn)擊CD/DVD(SATA)->使用IOS映像文件->已連接->瀏覽。
3.點(diǎn)擊rhel-8.3-x86_64-dvd.ios->打開。
4.點(diǎn)擊確定
5.查看右下角狀態(tài)
三、RPM使用
1.本地軟件包
RHEL7只有一個(gè)軟件倉庫。
[root@server ~]# mount /dev/sr0 /media/ //臨時(shí)掛載rhel7.8的鏡像文件 [root@server Packages]# cd /media/Packages/ [root@server Packages]# ls | wc -l //查看當(dāng)前文件夾文件數(shù)量 5232RHEL8有兩個(gè)軟件倉庫。
[root@server ~]# mount /dev/sr0 /media/ //臨時(shí)掛載rhel8.3的鏡像文件 [root@server ~]# cd /media/AppStream/Packages/ [root@server Packages]# ls | wc -l 5803 [root@server Packages]# cd /media/BaseOS/Packages/ [root@server Packages]# ls | wc -l //查看當(dāng)前文件夾文件數(shù)量 16972.網(wǎng)絡(luò)軟件包
軟件下載網(wǎng)站http://rpmfind.net/
1.在輸入框輸入cowsay回車
2.找到cowsay-3.04-16.el8.noarch.html Configurable speaking/thinking cow EPEL 8 for x86_64 cowsay-3.04-16.el8.noarch.rpm
3.拷貝鏈接
4.在SecurtCRT輸入wget 粘貼鏈接
5.下載軟件包
wget
3.安裝軟件包
1.軟件安裝
rpm --ivh package_name
可以同時(shí)安裝多個(gè)軟件,軟件包可以下載到本地,也可以是通過網(wǎng)絡(luò)安裝。
--i :安裝
--v:顯示指令的執(zhí)行過程
--h:顯示安裝進(jìn)度
----nodeps 忽略包依賴關(guān)系
----force 強(qiáng)制安裝,實(shí)現(xiàn)降級(jí)或重裝
----replacepkgs 替換原有安裝
rpm -ivh
2.使用軟件cowsay hello
[root@server ~]# cowsay hello_______ < hello >-------\ ^__^\ (oo)\_______(__)\ )\/\||----w ||| || [root@server ~]#3.查詢
rpm --q PACKGE_NAME 查詢包是否安裝
--qa 查詢所有已安裝的包
--qi查詢指定包的說明信息 (已安裝的包)
[root@server ~]# rpm -qi cowsay Name : cowsay [軟件名字] Version : 3.04 [軟件的原版本] Release : 16.el8 [發(fā)布的版本] Architecture: noarch [軟件的編譯架構(gòu)] Install Date: Wed 20 Jan 2021 10:09:14 AM CST [軟件安裝的時(shí)間] Group : Unspecified Size : 78642 [軟件的總大小] License : GPLv3+ [授權(quán)] Signature : RSA/SHA256, Fri 20 Nov 2020 05:47:34 AM CST, Key ID 21ea45ab2f86d6a1 Source RPM : cowsay-3.04-16.el8.src.rpm Build Date : Fri 20 Nov 2020 05:46:13 AM CST Build Host : buildvm-x86-13.iad2.fedoraproject.org Relocations : (not relocatable) Packager : Fedora Project Vendor : Fedora Project URL : https://github.com/tnalpgge/rank-amateur-cowsay Bug URL : https://bugz.fedoraproject.org/cowsay Summary : Configurable speaking/thinking cow Description : cowsay is a configurable talking cow, written in Perl. It operates much as the figlet program does, and it written in the same spirit of silliness. It generates ASCII pictures of a cow with a message. It can also generate pictures of other animals.--ql查詢指定包安裝后生成的文件列表
[root@server ~]# rpm -ql cowsay /usr/bin/animalsay /usr/bin/cowsay /usr/bin/cowthink /usr/share/bash-completion /usr/share/bash-completion/completions /usr/share/bash-completion/completions/cowsay.bashcomp ......--qc 查詢指定包安裝后的配置文件
[root@server ~]# rpm -qc httpd /etc/httpd/conf.d/autoindex.conf /etc/httpd/conf.d/userdir.conf /etc/httpd/conf.d/welcome.conf /etc/httpd/conf.modules.d/00-base.conf /etc/httpd/conf.modules.d/00-dav.conf /etc/httpd/conf.modules.d/00-lua.conf /etc/httpd/conf.modules.d/00-mpm.conf /etc/httpd/conf.modules.d/00-optional.conf /etc/httpd/conf.modules.d/00-proxy.conf /etc/httpd/conf.modules.d/00-systemd.conf /etc/httpd/conf.modules.d/01-cgi.conf /etc/httpd/conf/httpd.conf /etc/httpd/conf/magic /etc/logrotate.d/httpd /etc/sysconfig/htcacheclean--qd 查詢指定包安裝后的幫助文件
[root@server ~]# rpm -qd cowsay /usr/share/doc/cowsay/ChangeLog /usr/share/doc/cowsay/LICENSE /usr/share/doc/cowsay/README /usr/share/man/man1/cowsay.1.gz /usr/share/man/man1/cowthink.1.gz--qf 查詢指定的文件是由哪個(gè)包安裝產(chǎn)生的
[root@server ~]# rpm -qf /usr/share/doc/cowsay/ChangeLog cowsay-3.04-16.el8.noarch---qpi -查詢未安裝包的信息
[root@server ~]# rpm -qpi cowsay-3.04-16.el8.noarch.rpm warning: cowsay-3.04-16.el8.noarch.rpm: Header V4 RSA/SHA256 Signature, key ID 2f86d6a1: NOKEY Name : cowsay Version : 3.04 Release : 16.el8 Architecture: noarch Install Date: (not installed) Group : Unspecified Size : 78642 License : GPLv3+ Signature : RSA/SHA256, Fri 20 Nov 2020 05:47:34 AM CST, Key ID 21ea45ab2f86d6a1 Source RPM : cowsay-3.04-16.el8.src.rpm Build Date : Fri 20 Nov 2020 05:46:13 AM CST Build Host : buildvm-x86-13.iad2.fedoraproject.org Relocations : (not relocatable) Packager : Fedora Project Vendor : Fedora Project URL : https://github.com/tnalpgge/rank-amateur-cowsay Bug URL : https://bugz.fedoraproject.org/cowsay Summary : Configurable speaking/thinking cow Description : cowsay is a configurable talking cow, written in Perl. It operates much as the figlet program does, and it written in the same spirit of silliness. It generates ASCII pictures of a cow with a message. It can also generate pictures of other animals.--qpl 查詢未安裝包在安裝后生成的文件列表
[root@server ~]# rpm -qpl cowsay-3.04-16.el8.noarch.rpm warning: cowsay-3.04-16.el8.noarch.rpm: Header V4 RSA/SHA256 Signature, key ID 2f86d6a1: NOKEY /usr/bin/animalsay /usr/bin/cowsay /usr/bin/cowthink /usr/share/bash-completion /usr/share/bash-completion/completions /usr/share/bash-completion/completions/cowsay.bashcomp /usr/share/cowsay ......RPM默認(rèn)的文件安裝路徑:
/usr/bin 一些可執(zhí)行文件
/usr/lib 一些程序使用的動(dòng)態(tài)函數(shù)庫
/usr/share/doc 一些基本的軟件使用手冊(cè)與幫助文檔
/usr/share/man 一些man page文件
升級(jí)
rpm --Uvh 如果有舊版版則升級(jí),否則安裝。
rpm --Fvh 如果有舊版本則升級(jí),否則退出。
卸載
rpm -e PACKGE_NAME
重建rpm數(shù)據(jù)庫
[root@server ~]# rpm --rebuilddb //重建數(shù)據(jù)庫 [root@server ~]# rpm --initdb //初始化數(shù)據(jù)庫,沒有則建立如何查看當(dāng)前系統(tǒng)版本及升級(jí)系統(tǒng)版本
RHEL7.8:
RHEL8.0:
[root@server ~]# uname -a Linux server 4.18.0-240.el8.x86_64 #1 SMP Wed Sep 23 05:13:10 EDT 2020 x86_64 x86_64 x86_64 GNU/LinuxRHEL7.8:
[root@server ~]# more /etc/os-release NAME="Red Hat Enterprise Linux Server" VERSION="7.8 (Maipo)" ID="rhel" ID_LIKE="fedora" VARIANT="Server" VARIANT_ID="server" VERSION_ID="7.8" PRETTY_NAME="Red Hat Enterprise Linux Server 7.8 (Maipo)" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:redhat:enterprise_linux:7.8:GA:server" HOME_URL="https://www.redhat.com/" BUG_REPORT_URL="https://bugzilla.redhat.com/"REDHAT_BUGZILLA_PRODUCT="Red Hat Enterprise Linux 7" REDHAT_BUGZILLA_PRODUCT_VERSION=7.8 REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux" REDHAT_SUPPORT_PRODUCT_VERSION="7.8"RHEL8.3:
[root@server ~]# cat /etc/os-release NAME="Red Hat Enterprise Linux" VERSION="8.3 (Ootpa)" ID="rhel" ID_LIKE="fedora" VERSION_ID="8.3" PLATFORM_ID="platform:el8" PRETTY_NAME="Red Hat Enterprise Linux 8.3 (Ootpa)" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:redhat:enterprise_linux:8.3:GA" HOME_URL="https://www.redhat.com/" BUG_REPORT_URL="https://bugzilla.redhat.com/"REDHAT_BUGZILLA_PRODUCT="Red Hat Enterprise Linux 8" REDHAT_BUGZILLA_PRODUCT_VERSION=8.3 REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux" REDHAT_SUPPORT_PRODUCT_VERSION="8.3"RHEL7.8:
[root@server ~]# rpm -qa kernel kernel-3.10.0-1127.el7.x86_64RHEL8.3:
[root@server ~]# rpm -qa kernel kernel-4.18.0-240.el8.x86_64升級(jí)內(nèi)核:
[root@server ~]# rpm -ivh kernel-4.18.0-80.el8.x86_64.rpm
四、YUM介紹
Yellow dog Update Modified(yellow dog是Linux的一個(gè)發(fā)行版本)。
YUM是Fedora、RedHat、CentOS中的前端軟件包管理器,使用Python編寫。
1.YUM原理:
使用一個(gè)倉庫管理所有應(yīng)用程序,通過程序間關(guān)系計(jì)算出軟件的依賴關(guān)系進(jìn)行軟件安裝、升級(jí)、刪除、查詢等操作。
通過一個(gè)或多個(gè)配置文件來描述倉庫的網(wǎng)絡(luò)地址,通過http或ftp協(xié)議從倉庫獲得信息,下載相關(guān)軟件包。
RHEL7
yum基于3.0.x版本
RHEL8
包管理由DNF (YUMv4)完成。
yum4基于DNF技術(shù),yum4命令提供了與早期版本中使用的Yum v3的向后兼容性。yum命令只是到dnf的一個(gè)符號(hào)鏈接。
2.配置本地YUM源
配置文件/etc/yum.repos.d/*.repo該目錄下所有以.repo結(jié)尾的文件都是yum的有效配置文件。
配置文件主要參數(shù):
[rhel7]
倉庫id。
name=Packages
倉庫名稱--。
baseurl=file:///media
--倉庫地址 ,可以是本地目錄也可以是網(wǎng)絡(luò)上的路徑file表示使用本地路徑,http和ftp表示使用網(wǎng)絡(luò)路徑。
gpgcheck=0
是否校驗(yàn)倉庫內(nèi)軟件包,0不校驗(yàn),1校驗(yàn),如果校驗(yàn)需要指明校驗(yàn)密鑰。
enabled=1
是否啟用該yum倉庫,0不啟用,1啟用(只有一個(gè)倉庫可以不用設(shè)置)。
priority=1
--設(shè)置倉庫優(yōu)先級(jí),數(shù)字越小越優(yōu)。
RHEL7只有一個(gè)本地軟件倉庫。
[root@server ~]# vim /etc/yum.repos.d/rhel7.repo [Packages] name=Packages baseurl=file:///media gpgcheck=0 enabled=1RHEL8有兩個(gè)本地軟件倉庫。
[root@server ~]# vim /etc/yum.repos.d/rhel8.repo [BaseOS] name=BaseOS baseurl=file:///media/BaseOS gpgcheck=0 enable=1[AppStream] name=AppStream baseurl=file:///media/AppStream gpgcheck=0 enable=1 [root@server ~]# yum makecache //生成軟件倉庫緩存 Updating Subscription Management repositories. Unable to read consumer identityThis system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.BaseOS 94 MB/s | 2.3 MB 00:00 AppStream 74 MB/s | 6.3 MB 00:00 Last metadata expiration check: 0:00:01 ago on Thu 21 Jan 2021 08:39:18 AM CST. Metadata cache created. [root@server ~]# yum list //查看倉庫軟件列表3.配置網(wǎng)絡(luò)YUM源
本地yum源可能有局限性,當(dāng)本地的yum源無法滿足軟件安裝需求的時(shí)候,可以選擇網(wǎng)絡(luò)yum源,前提是主機(jī)必須能訪問外網(wǎng)。
阿里云官方鏡像站https://developer.aliyun.com/mirror/
1.找到epel
2.點(diǎn)擊復(fù)制命令粘貼到SecureCRT
還有RHEL7,RHEL6,RHEL5。
4.YUM代理
如果主機(jī)不方便訪問外部網(wǎng)絡(luò),可以通過內(nèi)部可上網(wǎng)的主機(jī)做代理。
proxy=https://www.XXXXX.com:8080 前面為代理地址或域名,后面為端口。
proxy_username=XXXXX 代理服務(wù)器的用戶名。
proxy_password=XXXXX 代理服務(wù)器的密碼。
5.YUM安裝軟件
yum --y install PACKGE_NAME
-y 自動(dòng)應(yīng)答yes
yum -y groupinstall PACKGE_GROUP_NAME
[root@server ~]# yum --y groupinstall “KDE Desktop”6.YUM查詢
yum list 列出yum倉庫中的軟件列表。
yum list installed 列出已安裝的。
yum info PACKGE_NAME 查看軟件包信息
[root@server ~]# yum info cowsay Updating Subscription Management repositories. Unable to read consumer identityThis system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.Last metadata expiration check: 2:24:00 ago on Thu 21 Jan 2021 11:56:26 AM CST. Installed Packages [該軟件是已經(jīng)安裝好的] Name : cowsay [軟件的名稱] Version : 3.04 [軟件的源版本] Release : 16.el8 [發(fā)布的版本] Architecture : noarch [軟件的編譯架構(gòu)] Size : 77 k [軟件的總大小] Source : cowsay-3.04-16.el8.src.rpm Repository : @System From repo : epel Summary : Configurable speaking/thinking cow URL : https://github.com/tnalpgge/rank-amateur-cowsay License : GPLv3+ [授權(quán)] Description : cowsay is a configurable talking cow, written in Perl. It operates: much as the figlet program does, and it written in the same spirit: of silliness.: It generates ASCII pictures of a cow with a message. It can also: generate pictures of other animals.7.YUM卸載軟件
yum remove | erase PACKGE_NAME
[root@server ~]# yum -y remove sl8.YUM升級(jí)軟件
[root@server ~]# yum update9.YUM緩存
[root@server ~]# yum makecache //生成緩存 [root@server ~]# yum clean all //清空緩存END
總結(jié)
以上是生活随笔為你收集整理的红帽Redhat—Linux软件管理的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 初次来到博客园进行交流学习还请大家多指教
- 下一篇: Maipo for Mac新浪微博客户端