




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
Linux操作系統(tǒng)項目式教程目錄CONTENTS項目1初識Linux操作系統(tǒng)項目2Linux操作系統(tǒng)基礎(chǔ)項目3用戶組群和權(quán)限管理項目項目4配置和管理磁盤項目5安裝軟件項目6編寫Shell腳本統(tǒng)項目7配置和管理網(wǎng)絡(luò)系統(tǒng)項目8配置和管理Linux服務(wù)項目5安裝軟件任務(wù)1使用RPM安裝軟件任務(wù)2使用YUM管理軟件任務(wù)3源碼編譯安裝軟件5.1.1使用RPM查詢軟件紅帽包管理器(RedHatPackageManager)是由RedHat公司開發(fā)的軟件包安裝和管理程序,用戶可以使用RPM自行安裝和管理Linux上的應(yīng)用程序和系統(tǒng)工具。在安裝一個軟件之前,往往需要確認該軟件是否已經(jīng)安裝。查詢的時候RPM其實查詢的是/var/lin/rpm目錄下的數(shù)據(jù)庫文件,另外也可以查詢未安裝的RPM文件內(nèi)容的信息。RPM查詢軟件,其命令格式如下。rpm選項文件名rpm查詢軟件命令各選項及功能如下。l-q,--query:查詢已經(jīng)安裝的軟件包l-a:查詢所有安裝的軟件包l-c,--configfiles:顯示配置文件列表l-d:顯示文檔文件列表l-f:查詢屬于哪個軟件包l-i:顯示軟件包的概要信息l-l:顯示軟件包中的文件列表l-s:顯示軟件包中文件列表并顯示每個文件的狀態(tài)【實例1】使用rpm查詢系統(tǒng)是否安裝python軟件。[root@localhost~]#rpm-qpythonpython-2.7.5-76.el7.x86_64【實例2】查詢python軟件提供的所有目錄和軟件。[root@localhost~]#rpm-qlpython/usr/bin/pydoc/usr/bin/python/usr/bin/python2/usr/bin/python2.7/usr/libexec/platform-python/usr/share/doc/python-2.7.5/usr/share/doc/python-2.7.5/LICENSE/usr/share/doc/python-2.7.5/README/usr/share/man/man1/python.1.gz/usr/share/man/man1/python2.1.gz/usr/share/man/man1/python2.7.1.gz
[root@localhost~]#whichpython/usr/bin/python[root@localhost~]#ls-l/usr/bin/pythonlrwxrwxrwx.1rootroot77月162021/usr/bin/python->python25.1.1使用RPM查詢軟件【實例3】查詢python軟件的文檔文件列表。[root@localhost~]#rpm-qdpython/usr/share/doc/python-2.7.5/LICENSE/usr/share/doc/python-2.7.5/README/usr/share/man/man1/python.1.gz/usr/share/man/man1/python2.1.gz/usr/share/man/man1/python2.7.1.gz【實例4】查詢python軟件的相關(guān)概要信息。[root@localhost~]#rpm-qipythonName:pythonVersion:2.7.5Release:76.el7Architecture:x86_64InstallDate:2021年07月16日星期五09時44分37秒Group:Development/LanguagesSize:80907License:PythonSignature:RSA/SHA256,2018年11月12日星期一22時44分50秒,KeyID24c6a8a7f4a80eb5SourceRPM:python-2.7.5-76.el7.src.rpmBuildDate:2018年10月31日星期三08時13分09秒BuildHost:Relocations:(notrelocatable)Packager:CentOSBuildSystem<>Vendor:CentOSURL:/Summary:Aninterpreted,interactive,object-orientedprogramminglanguageDescription:Pythonisaninterpreted,interactive,object-orientedprogramminglanguageoftencomparedtoTcl,Perl,SchemeorJava.Pythonincludesmodules,classes,exceptions,veryhighleveldynamicdatatypesanddynamictyping.Pythonsupportsinterfacestomanysystemcallsandlibraries,aswellastovariouswindowingsystems(X11,Motif,Tk,MacandMFC).5.1.2.使用RPM安裝軟件RPM安裝軟件時,當前工作目錄下該軟件包必須存在,否則必須有軟件包的絕對路徑。rpm命令格式如下。rpm選項包文件名rpm安裝軟件命令各選項及功能如下。l-i,--install
:安裝軟件包l-v:顯示指令執(zhí)行過程,顯示附加信息l-h,--hash:包安裝的時候列出哈希標記(和-v一起使用效果更好)l--test:不真正安裝,只是判斷下是否能安裝l--percent:安裝軟件包時打印百分比l--allfiles:安裝全部文件,包含配置文件,否則配置文件會被跳過l--excludedocs:安裝程序文檔l--force:忽略軟件包及文件的沖突l--ignorearch:
不驗證軟件包架構(gòu)l--ignoreos:不驗證軟件包操作系統(tǒng)l--ignoresize:
在安裝前不檢查磁盤空間l--nodeps:不驗證軟件包依賴【實例5】使用rpm安裝bind軟件包。(1)在進行安裝bind軟件包之前要先進行光驅(qū)的掛載。將linux鏡像源連接到虛擬機上光驅(qū)上,然后將光驅(qū)掛載到linux的一個目錄上,這個目錄中的內(nèi)容就是鏡像源中的文件了在虛擬機CD/DVD設(shè)置中,使用ISO映像文件,選擇本地的Linux鏡像文件CentOS-7-x86_64-DVD-1810,如圖5-1所示,一定要選中“已連接”和“啟動時連接”復(fù)選框。圖5-1將鏡像文件連接到光驅(qū)5.1.2.使用RPM安裝軟件(2)使用mount命令將光驅(qū)文件(/dev/sr0)掛載到linux的/mnt/cdrom下,然后查看該目錄的內(nèi)容。[root@localhost~]#cd
/mnt[root@localhost~]#mkdir
/mnt/cdrom[root@localhost~]#mount/dev/sr0/mnt/cdrommount:/dev/sr0寫保護,將以只讀方式掛載[root@localhost~]#ls/mnt/cdromCentOS_BuildTagGPLLiveOSRPM-GPG-KEY-CentOS-7EFIimagesPackagesRPM-GPG-KEY-CentOS-Testing-7EULAisolinuxrepodataTRANS.TBL[root@localhostcdrom]#cdPackages/[root@localhostPackages]#ls389-ds-base--15.el7.x86_64.rpm389-ds-base-libs--15.el7.x86_64.rpmabattis-cantarell-fonts-0.0.25-1.el7.noarch.rpm……zsh-5.0.2-31.el7.x86_64.rpmzziplib-0.13.62-9.el7.x86_64.rpm從掛載的光盤中找到bind軟件包。[root@localhostPackages]#findbind*bind-9.9.4-72.el7.x86_64.rpmbind-chroot-9.9.4-72.el7.x86_64.rpmbind-dyndb-ldap-11.1-4.el7.x86_64.rpmbind-libs-9.9.4-72.el7.x86_64.rpmbind-libs-lite-9.9.4-72.el7.x86_64.rpmbind-license-9.9.4-72.el7.noarch.rpmbind-pkcs11-9.9.4-72.el7.x86_64.rpmbind-pkcs11-libs-9.9.4-72.el7.x86_64.rpmbind-pkcs11-utils-9.9.4-72.el7.x86_64.rpmbind-utils-9.9.4-72.el7.x86_64.rpm5.1.2.使用RPM安裝軟件(3)安裝bind軟件包??梢钥吹絩hel7的軟件包的后綴名都是以rpm結(jié)尾的,所以對于rhel系統(tǒng)來說安裝bind軟件包一般使用的都是rpm-ivh后面加相應(yīng)的bind軟件包的名字來進行安裝。[root@localhostPackages]#rpm-ivhbind-9.9.4-72.el7.x86_64.rpm警告:bind-9.9.4-72.el7.x86_64.rpm:頭V3RSA/SHA256Signature,密鑰IDf4a80eb5:NOKEY準備中...#################################[100%]正在升級/安裝...1:bind-32:9.9.4-72.el7#################################[100%]5.1.2.使用RPM安裝軟件【實例6】顯示安裝gcc這個軟件包的過程。[root@localhostPackages]#rpm-ivhgcc-4.8.5-36.el7.x86_64.rpm警告:gcc-4.8.5-36.el7.x86_64.rpm:頭V3RSA/SHA256Signature,密鑰IDf4a80eb5:NOKEY錯誤:依賴檢測失敗:
cpp=4.8.5-36.el7被gcc-4.8.5-36.el7.x86_64需要
glibc-devel>=2.2.90-12被gcc-4.8.5-36.el7.x86_64需要當安裝的時候出現(xiàn)一個警告(warning),提示管理員無法校驗軟件包的完整性,因為沒有密鑰。警告信息并不影響軟件包的安裝,但是后面的錯誤信息使得安裝進程無法繼續(xù)。它提示管理員gcc軟件包依賴于cpp與glibc-devel兩個軟件包,即需要安裝這兩個軟件包之后才能安裝gcc軟件包。[root@localhostPackages]#rpm-ivhcpp-4.8.5-36.el7.x86_64.rpm警告:cpp-4.8.5-36.el7.x86_64.rpm:頭V3RSA/SHA256Signature,密鑰IDf4a80eb5:NOKEY準備中...#################################[100%]正在升級/安裝...1:cpp-4.8.5-36.el7#################################[100%][root@localhostPackages]#rpm-ivhglibc-devel-2.17-260.el7.x86_64.rpm警告:glibc-devel-2.17-260.el7.x86_64.rpm:頭V3RSA/SHA256Signature,密鑰ID5.1.2.使用RPM安裝軟件f4a80eb5:NOKEY錯誤:依賴檢測失敗:
glibc-headers被glibc-devel-2.17-260.el7.x86_64需要
glibc-headers=2.17-260.el7被glibc-devel-2.17-260.el7.x86_64需要[root@localhostPackages]#rpm-ivhglibc-headers-2.17-260.el7.x86_64.rpm警告:glibc-headers-2.17-260.el7.x86_64.rpm:頭V3RSA/SHA256Signature,密鑰IDf4a80eb5:NOKEY錯誤:依賴檢測失?。?/p>
kernel-headers被glibc-headers-2.17-260.el7.x86_64需要
kernel-headers>=2.2.1被glibc-headers-2.17-260.el7.x86_64需要[root@localhostPackages]#rpm-ivhkernel-headers-3.10.0-957.el7.x86_64.rpm警告:kernel-headers-3.10.0-957.el7.x86_64.rpm:頭V3RSA/SHA256Signature,密鑰IDf4a80eb5:NOKEY準備中...#################################[100%]正在升級/安裝...1:kernel-headers-3.10.0-957.el7#################################[100%][root@localhostPackages]#rpm-ivhglibc-headers-2.17-260.el7.x86_64.rpm警告:glibc-headers-2.17-260.el7.x86_64.rpm:頭V3RSA/SHA256Signature,密鑰IDf4a80eb5:NOKEY準備中...#################################[100%]正在升級/安裝...1:glibc-headers-2.17-260.el7#################################[100%][root@localhostPackages]#rpm-ivhglibc-devel-2.17-260.el7.x86_64.rpm警告:glibc-devel-2.17-260.el7.x86_64.rpm:頭V3RSA/SHA256Signature,密鑰IDf4a80eb5:NOKEY5.1.2.使用RPM安裝軟件準備中...#################################[100%]正在升級/安裝...1:glibc-devel-2.17-260.el7#################################[100%][root@localhostPackages]#rpm-ivhgcc-4.8.5-36.el7.x86_64.rpm警告:gcc-4.8.5-36.el7.x86_64.rpm:頭V3RSA/SHA256Signature,密鑰IDf4a80eb5:NOKEY準備中...#################################[100%]正在升級/安裝...1:gcc-4.8.5-36.el7#################################[100%][root@localhostPackages]#rpm-qa|grepgccgcc-4.8.5-36.el7.x86_64libgcc-4.8.5-36.el7.x86_64在安裝glibc-devel軟件包時,系統(tǒng)又提示需要安裝glibc-headers軟件包,而glibc-headers軟件包又依賴于kernel-headers軟件包。在解決完所有依賴關(guān)系后,才能安裝gcc這個軟件包。很多軟件安裝時都需要依賴其它軟件,而rpm安裝方法是無法解決依賴問題的,所以在實際工作中,很少使用rpm方法安裝軟件。5.1.3.使用RPM刪除軟件刪除即卸載軟件,需要注意的是,卸載軟件的過程一定由最上層往下卸載,否則會發(fā)生結(jié)構(gòu)上的問題,RPM刪除軟件,其命令格式如下:rpm選項軟件名rpm刪除軟件命令各選項及功能如下。l-e,--erase:刪除(卸載)軟件包l--nodeps:不驗證軟件包依賴l--noscripts:不執(zhí)行軟件包腳本l--notriggers:不執(zhí)行本軟件包觸發(fā)的任何腳本l--test:只執(zhí)行刪除的測試l--vv:顯示調(diào)試信息【實例7】使用rpm刪除命令,刪除剛安裝的bind軟件。[root@localhostPackages]#rpm-qabindbind-9.9.4-72.el7.x86_64[root@localhostPackages]#rpm-ebind[root@localhostPackages]#rpm-qa|grepbind[root@localhost~]#注意:使用命令“rpm–e軟件名”,“軟件名”可以包含版本號等信息,但是不可以有后綴.rpm,例如卸載軟件包bind-9.9.4-72.el7.x86_64,可以使用rpm-ebind,但不可以使用rpm–eunrar-5.4.5-1.el7.x86_64.rpm。5.1.4.使用RPM升級軟件RPM升級十分方便,使用“rpm–Uvh包文件”即可,可以使用的參數(shù)和install是一樣的,RPM升級軟件,其命令格式如下。rpm選項包文件名rpm升級軟件命令各選項及功能如下。l-U,--upgrade:升級軟件包l-v:顯示指令執(zhí)行過程,顯示附加信息l-h,--hash:安裝的時候列出哈希標記(和-v一起使用效果更好)l--allfiles
安裝全部文件,包含配置文件,否則配置文件會被跳過l--force
忽略軟件包及文件的沖突l--vv
顯示調(diào)試信息【實例8】使用rpm升級命令,升級安裝bind軟件。[root@localhostPackages]#rpm-Uvhbind-9.9.4-72.el7.x86_64.rpm警告:bind-9.9.4-72.el7.x86_64.rpm:頭V3RSA/SHA256Signature,密鑰IDf4a80eb5:NOKEY準備中...#################################[100%]
軟件包
bind-32:9.9.4-72.el7.x86_64已經(jīng)安裝本任務(wù)注意點(1)使用rpm安裝軟件時,必須先安裝軟件的依賴軟件。(2)卸載時,最底層的軟件不能先移除,否則可能造成整個系統(tǒng)不能用。任務(wù)拓展訓(xùn)練(1)掛載本地光驅(qū)到/mnt目錄,使用rpm方式安裝lrzsz軟件包。(2)在windows上制作一個.zip壓縮包,文件名稱和內(nèi)容任意,利用安裝好的lrzsz軟件提供的rz命令上傳這個壓縮包到/root目錄下。(3)使用rpm方式安裝unzip軟件,解壓上題中上傳的/root目錄下的壓縮文件。(4)使用rpm方式安裝xinetd。(5)使用rpm方式更新xinetd。(6)使用rpm方式卸載xinetd。補充知識RPM簡介RPM是RedHatPackageManager的縮寫,是由RedHat公司開發(fā)的軟件包安裝和管理程序,用戶可以使用RPM自行安裝和管理Linux上的應(yīng)用程序和系統(tǒng)工具。RPM的功能類似于Windows里面的“添加/刪除程序”,但是功能又比“添加/刪除程序”強很多。RPM是RedHat公司開發(fā)的軟件安裝與管理程序,這一文件格式名稱雖然打上了RedHat的標志,但是其原始設(shè)計理念是開放式的,現(xiàn)在包括OpenLinux、SUSE以及TurboLinux等Linux的版本都有采用,已經(jīng)是公認的行業(yè)標準了。RPM是以數(shù)據(jù)庫記錄的方式來將需要的軟件安裝到Linux系統(tǒng)中的一套管理機制,其最大的特點就是將要安裝的軟件先編譯,并且打包成RPM機制的安裝包,通過軟件默認的數(shù)據(jù)庫記錄這個軟件安裝時的必須具備的依賴屬性軟件,在安裝時RPM會先檢查是否滿足安裝的依賴屬性軟件,滿足則安裝,反之則拒絕安裝。RPM包里面包含可執(zhí)行的二進制程序,這個程序和Windows的軟件包中的.exe文件類似是可執(zhí)行的;RPM包中還包括程序運行時所需要的文件,這也和Windows的軟件包類似,Windows的程序的運行,除了.exe文件以外,也有其它的文件。一個RPM包中的應(yīng)用程序,有時除了自身所帶的附加文件保證其正常以外,還需要其它特定版本文件,這就是軟件包的依賴關(guān)系;依賴關(guān)系并不是Linux特有的,Windows操作系統(tǒng)中也是同樣存在的;比如我們在Windows系統(tǒng)中運行3D游戲,在安裝的時候,他可能會提示,要安裝Direct9;Linux和Windows原理是差不多的。所以被打包的二進制應(yīng)用程序的組成部分除了二進制文件以外還包括庫文件、配置文件(可以實現(xiàn)軟件的一些設(shè)置)、幫助文件。RPM保留一個數(shù)據(jù)庫,這個數(shù)據(jù)庫中包含了所有的軟件包的資料,通過這個數(shù)據(jù)庫,用戶可以進行軟件包的查詢。補充知識RPM可以讓用戶直接以二進制方式安裝軟件包,并且可幫助用戶查詢是否已經(jīng)安裝了有關(guān)的庫文件,在用RPM刪除程序時,它會詢問用戶是否要刪除有關(guān)的程序,如果使用RPM來升級軟件,RPM會保留原先的配置文件,這樣用戶就不用重新配置新的軟件了,RPM保留了一個數(shù)據(jù)庫,這個數(shù)據(jù)庫中包含了所有的軟件包的資料,通過這個數(shù)據(jù)庫,用戶可以進行軟件包的查詢,安裝簡單,而卸載時也可以將軟件安裝在多處目錄中的文件刪除干凈,因此推薦初學(xué)者盡可能使用RPM形式的軟件包。RPM雖然是為Linux而設(shè)計的,但是它已經(jīng)移植到Solaris、AIX和Irix等其他UNIX操作系統(tǒng)上了,RPM遵循GPL版權(quán)協(xié)議,用戶可以在符合GPL協(xié)議的條件下自由使用及傳播RPM。1.RPM設(shè)計的功能(1)方便的升級功能??蓪蝹€軟件包進行升級,保留用戶原先的配置。(2)強大的查詢功能。可以針對整個軟件包的數(shù)據(jù)或是某個特定的文件進行查詢,也可以輕松的查出某個文件是屬于哪個軟件包或從哪里來的。(3)系統(tǒng)校驗。不小心刪除了某個重要文件,但不知道是哪個軟件包需要此文件時,可以使用RPM查詢已經(jīng)安裝的軟件包少了哪些文件,是否需要重新安裝,并且可以檢驗出安裝的軟件包是否已經(jīng)被別人修改過。2.RPM的優(yōu)點(1)已經(jīng)編譯且打包,安裝方便。(2)軟件信息記錄在RPM數(shù)據(jù)庫中,方便查詢、驗證與卸載。3.RPM的缺點(1)當前系統(tǒng)環(huán)境必須與原RPM包的編譯環(huán)境一致。(2)需要滿足依賴屬性要求。(3)卸載時注意,最底層的軟件不可以先移除,否則可能會造成整個系統(tǒng)的問題。5.2.1配置本地YUM源RPM命令只能安裝下載到本的.rpm格式的安裝包,但是RPM并不能處理軟件包之間的依賴關(guān)系,尤其是軟件由多個.rpm包組成時,這時可以使用YUM(YellowdogUpdaterModified)。YUM是一個在Fedora、RedHat和SUSE中的Shell前端軟件包管理器,可以很好地解決軟件安裝時的依賴問題,也是平時工作中使用最多的安裝方法。在使用YUM安裝時,最重要的一個前提就是配置YUM安裝的源。YUM源可以是本地源也可以是網(wǎng)絡(luò)源。1.掛載光驅(qū)首先把linux的鏡像文件掛載到了/mnt目錄下,使用yum安裝軟件時,可以把yum的源配置成/mnt/cdrom目錄,安裝某個軟件時,yum能在/mnt/cdrom的Packages目錄中自動搜索依賴文件,進行安裝,解決了rpm無法安裝依賴的問題。5.2.1配置本地YUM源2.配置本地源進入到/etc/yum.repos.d下,把之前系統(tǒng)提供的源刪除,因為這些源都比較慢。建立一個自己的源文件,命名為local.repo。[root@localhost~]#cd/etc/yum.repos.d/[root@localhostyum.repos.d]#lsCentOS-Base.repoCentOS-Debuginfo.repoCentOS-Media.repoCentOS-Vault.repoCentOS-CR.repoCentOS-fasttrack.repoCentOS-Sources.repo[root@localhostyum.repos.d]#rm-rf*[root@localhostyum.repos.d]#ls[root@localhostyum.repos.d]#touchlocal.repo使用vi打開這個文件,配置如下:[local]name=centos7baseurl=file:///mnt/cdromgpgcheck=0local是源的標示,name是源的名字,baseurl是本地源的路徑,這里注意要使用三個/,gpgcheck=0是不檢查軟件合法性,因為是來自本地。5.2.1配置本地YUM源【實例9】使用“yumrepolist”命令,可以查看yum源信息。[root@localhostyum.repos.d]#yumrepolist已加載插件:fastestmirror,langpacksLoadingmirrorspeedsfromcachedhostfile*base:*extras:*updates:源標識
源名稱
狀態(tài)base/7/x86_64
CentOS-7-Base10,072extras/7/x86_64
CentOS-7-Extras515updates/7/x86_64
CentOS-7-Updates
4,691repolist:15,278這里列出了多個源,如源標識為base/7/x86_64這個源,源名稱是CentOS-7-Base,這個源里有10072個可用軟件。指的就是在/mnt/cdrom/Packages目錄中,有10072個可用的安裝包。5.2.2使用YUM搜索、查詢軟件使用yum搜索、查詢軟件,其命令格式如下:yum選項查詢工作項目yum查詢軟件命令及功能如下。search<keyword>: 搜索匹配特定字符的rpm包list: 列出資源倉庫中所有可以安裝或更新的rpm包listupdates: 列出資源倉庫中所有可以更新的rpm包listinstalled: 列出所有已經(jīng)安裝的rpm包listextras: 列出所有已安裝但不在資源庫中的軟件包list<package_name> 列出所指定的軟件包info 列出資源倉庫中所有可以安裝或更新的rpm包的信息info<package_name> 使用YUM獲取軟件包信息infoupdates 列出資源倉庫中所有可以更新的rpm包的信息provides<package_name> 列出提供某文件的軟件包5.2.2使用YUM搜索、查詢軟件【實例10】使用yum查詢firefox軟件。[root@localhostyum.repos.d]#yumsearchfirefox已加載插件:fastestmirror,langpacksLoadingmirrorspeedsfromcachedhostfile*base:*extras:*updates:================================N/Smatched:firefox===================firefox.x86_64:MozillaFirefoxWebbrowserfirefox.i686:MozillaFirefoxWebbrowser
名稱和簡介匹配
only,使用“searchall”試試。5.2.2使用YUM搜索、查詢軟件【實例11】列出提供passwd的軟件包。[root@localhostyum.repos.d]#yumprovidespasswd已加載插件:fastestmirror,langpacksLoadingmirrorspeedsfromcachedhostfile*base:*extras:*updates:passwd-0.79-6.el7.x86_64:AnutilityforsettingorchangingpasswordsusingPAM源
:base
passwd-0.79-4.el7.x86_64:AnutilityforsettingorchangingpasswordsusingPAM源
:@anaconda5.2.3使用YUM安裝軟件使用yum安裝軟件,其命令格式如下。yuminstall選項yum安裝軟件命令及功能說明,如下所示。linstall<package_name>:安裝指定的軟件,會查詢repository,如果有這一軟件包,則檢查其依賴沖突關(guān)系,如果沒有依賴沖突,那么下載安裝;如果有,則會給出提示,詢問是否要同時安裝依賴,或刪除沖突的包llocalinstall<軟件名>:安裝一個本地已經(jīng)下載的軟件包lgroupinstall<組名>
如果倉庫為軟件包分了組,則可以通過安裝此組來完成這個組里面的所有軟件包l-yinstall<package_name>
安裝指定的軟件5.2.3使用YUM安裝軟件【實例12】使用YUM安裝passwd-0.79-6.el7.x86_64軟件。使用“yum-yinstallpasswd-0.79-6.el7.x86_64”安裝軟件,yum會自動處理依賴問題、安裝好依賴并且顯示出來,如果不加“-y”參數(shù),則會提示確認。[root@localhostyum.repos.d]#yum-yinstallpasswd已加載插件:fastestmirror,langpacksLoadingmirrorspeedsfromcachedhostfile*base:*extras:*updates:base|3.6kB00:00:00extras|2.9kB00:00:00updates|2.9kB00:00:00正在解決依賴關(guān)系-->正在檢查事務(wù)--->軟件包passwd.x86_9-4.el7將被升級--->軟件包passwd.x86_9-6.el7將被更新-->解決依賴關(guān)系完成
依賴關(guān)系解決5.2.3使用YUM安裝軟件===================================================================Package架構(gòu)版本源大小===================================================================正在更新:passwd
x86_640.79-6.el7base
106k
事務(wù)概要==================================================================升級
1軟件包總計:106kDownloadingpackages:警告:/var/cache/yum/x86_64/7/base/packages/passwd-0.79-6.el7.x86_64.rpm:頭V3RSA/SHA256Signature,密鑰IDf4a80eb5:NOKEY從
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7檢索密鑰導(dǎo)入
GPGkey0xF4A80EB5:
用戶ID:"CentOS-7Key(CentOS7OfficialSigningKey)<security@>"
指紋
:6341ab2753d78a78a7c27bb124c6a8a7f4a80eb5
軟件包
:centos-release-7-6.1810.2.el7.centos.x86_64(@anaconda)
來自
:/etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-75.2.3使用YUM安裝軟件RunningtransactioncheckRunningtransactiontestTransactiontestsucceededRunningtransaction警告:RPM數(shù)據(jù)庫已被非yum程序修改。正在更新:passwd-0.79-6.el7.x86_641/2清理
:passwd-0.79-4.el7.x86_642/2驗證中
:passwd-0.79-6.el7.x86_641/2驗證中
:passwd-0.79-4.el7.x86_642/2
更新完畢:passwd.x86_640:0.79-6.el7
完畢!
5.2.4使用YUM卸載軟件使用yum卸載軟件,其命令格式如下。yumremove選項yum卸載軟件命令及功能說明,如下所示。l-yremove<package_name>:刪除指定的軟件。lgroupremove<組名>:卸載組里所包括的軟件。【實例13】使用“yumremove”卸載軟件passwd。[root@localhostyum.repos.d]#yum-yremovepasswd已加載插件:fastestmirror,langpacks正在解決依賴關(guān)系-->正在檢查事務(wù)--->軟件包passwd.x86_9-6.el7將被刪除-->解決依賴關(guān)系完成
依賴關(guān)系解決
===================================================================
Package架構(gòu)版本源大小===================================================================正在刪除:passwd
x86_640.79-6.el7
@base
420k事務(wù)概要===================================================================5.2.4使用YUM卸載軟件移除
1軟件包
安裝大小:420kDownloadingpackages:RunningtransactioncheckRunningtransactiontestTransactiontestsucceededRunningtransaction正在刪除:passwd-0.79-6.el7.x86_641/1驗證中
:passwd-0.79-6.el7.x86_641/1
刪除:passwd.x86_640:0.79-6.el7
完畢!5.2.5使用YUM升級軟件使用yum升級軟件,其命令格式如下。yumremove選項yum升級軟件命令及功能說明,如下所示。lcheck-update:檢查可升級的rpm包lupdate:升級所有可以升級的rpm包l-yupdate:升級所有的可升級的軟件包,-y表示同意所有,不用一次次確認,避免回答一些問題lupdate<package_name>:僅升級指定的軟件lgroupupdate<組名>:升級組里面的軟件包
【實例14】使用“yum-yupdatefirefox”升級軟件。[root@localhostyum.repos.d]#yum-yupdatefirefox已加載插件:fastestmirror,langpacksLoadingmirrorspeedsfromcachedhostfile*base:*extras:*updates:正在解決依賴關(guān)系-->正在檢查事務(wù)--->軟件包firefox.x86_.2-1.el7.centos將被升級--->軟件包firefox.x86_.0-1.el7.centos將被更新5.2.5使用YUM升級軟件
……
驗證中
:nss-3.36.0-7.el7_5.x86_6415/16
驗證中
:nss-softokn-3.36.0-5.el7_5.x86_6416/16
更新完畢:firefox.x86_640:102.7.0-1.el7.centos
作為依賴被升級:nspr.x86_640:4.34.0-3.1.el7_9nss.x86_640:3.79.0-4.el7_9nss-softokn.x86_640:3.79.0-4.el7_9nss-softokn-freebl.x86_640:3.79.0-4.el7_9nss-sysinit.x86_640:3.79.0-4.el7_9nss-tools.x86_640:3.79.0-4.el7_9nss-util.x86_640:3.79.0-1.el7_9
完畢!
5.2.6YUM清除緩存yum會把下載的軟件包和header存儲在緩存中,而不是自動刪除,如果覺得它們占用了磁盤空間,可以對它們進行清除,其命令格式如下:yum選項軟件包yum清除緩存軟件命令及功能說明如下。lcleanpackages:清除緩存目錄(/var/cache/yum)下的rpm軟件包lcleanheaders:清除緩存目錄下的rpm頭文件lclean,cleanall:清除緩存目錄的rpm軟件包以及舊的rpm頭文件【實例15】使用“yumcleanall”清除緩存,以免造成后面的軟件更新發(fā)生異常,命令“yumrepolistall”可以查看當前的所有容器,只有啟用了的容器才生效。[root@localhostyum.repos.d]#yumcleanall已加載插件:fastestmirror,langpacks正在清理軟件源:
baseextrasupdatesCleaninguplistoffastestmirrors5.2.7配置網(wǎng)絡(luò)YUM源yum本地源的特點是安裝速度快,但有時候本地源里沒有相關(guān)的軟件時,就需要配置網(wǎng)絡(luò)yum源了,配置網(wǎng)絡(luò)yum源之后,就可以直接使用網(wǎng)上軟件資源進行線上安裝。使用比較多的網(wǎng)絡(luò)源有阿里云的yum源和163的yum源?!緦嵗?6】配置yum的網(wǎng)絡(luò)源為阿里云的yum源。(1)刪除以上自己配置的本地yum源local.repo[root@localhost~]#cd/etc/yum.repos.d[root@localhostyum.repos.d]#rm
local.repo(2)使用wget命令將阿里云的yum源地址寫入到CentOS-Base.repo文件中。[root@localhostyum.repos.d]#wget-O/etc/yum.repos.d/CentOS-Base.repo/repo/Centos-7.repo--2023-02-1701:05:54--/repo/Centos-7.repo正在解析主機
()...19,22,23,...正在連接
()|19|:443...已連接。已發(fā)出
HTTP請求,正在等待回應(yīng)...200OK長度:2523(2.5K)[application/octet-stream]正在保存至:“/etc/yum.repos.d/CentOS-Base.repo”
100%[===================================>]2,523--.-K/s用時0.009s
2023-02-1701:05:57(269KB/s)-已保存“/etc/yum.repos.d/CentOS-Base.repo”[2523/2523])5.2.7配置網(wǎng)絡(luò)YUM源(3)使用yumrepolist查看更新的源信息。[root@localhostyum.repos.d]#yumrepolist已加載插件:fastestmirror,langpacksLoadingmirrorspeedsfromcachedhostfile*base:*extras:*updates:源標識
源名稱
狀態(tài)base/7/x86_64CentOS-7-Base-10,072extras/7/x86_64CentOS-7-Extras-515updates/7/x86_64CentOS-7-Updates-4,691repolist:15,278可以看到,系統(tǒng)的yum源已經(jīng)變成了阿里云的源。5.2.8同步網(wǎng)絡(luò)源到本地同步網(wǎng)絡(luò)源就是將網(wǎng)絡(luò)源上的安裝包下載到本地,提高訪問速度,使用reposync工具進行同步?!緦嵗?7】使用reposync工具,將阿里云上的openstack源下載到本地。(1)安裝reposync[root@localhostyum.repos.d]#yuminstall-yyum-utils已加載插件:fastestmirror,langpacksLoadingmirrorspeedsfromcachedhostfile*base:*extras:*updates:正在解決依賴關(guān)系-->正在檢查事務(wù)--->軟件包yum-utils.noarch.1-50.el7將被升級--->軟件包yum-utils.noarch.1-54.el7_8將被更新-->解決依賴關(guān)系完成
依賴關(guān)系解決5.2.8同步網(wǎng)絡(luò)源到本地===================================================================Package架構(gòu)版本源大小===================================================================正在更新:yum-utils
noarch
1.1.31-54.el7_8
base122k
事務(wù)概要==================================================================升級
1軟件包
總下載量:122kDownloadingpackages:NoPrestometadataavailableforbaseyum-utils-1.1.31-54.el7_8.noarch.rpm|122kB00:00:01RunningtransactioncheckRunningtransactiontestTransactiontestsucceededRunningtransaction
正在更新
:yum-utils-1.1.31-54.el7_8.noarch1/2
清理
:yum-utils-1.1.31-50.el7.noarch2/2
驗證中
:yum-utils-1.1.31-54.el7_8.noarch1/2
驗證中
:yum-utils-1.1.31-50.el7.noarch2/25.2.8同步網(wǎng)絡(luò)源到本地更新完畢:yum-utils.noarch0:1.1.31-54.el7_8
完畢!注:reposync下載工具包含在yum-utils中,默認安裝在/usr/bin/reposync。(2)新建配置文件openstack.repo。[openstack]name=openstackbaseurl=/centos/7/cloud/x86_64/openstack-queens/gpgcheck=0配置完成,更新yum緩存。[root@localhostyum.repos.d]#yummakecache已加載插件:fastestmirror,langpacksLoadingmirrorspeedsfromcachedhostfile*base:*extras:*updates:base|3.6kB
00:00:00extras|2.9kB00:00:00openstack|3.0kB00:00:00updates|2.9kB00:00:00openstack/filelists_db|3.4MB00:00:40元數(shù)據(jù)緩存已建立5.2.8同步網(wǎng)絡(luò)源到本地(3)下載軟件源到本地目錄[root@localhostyum.repos.d]#reposync-ropenstack-p/home/openstack/選項-r用來指明同步到當前主機的哪個yum源,-p用來指明可以同步到哪個目錄下。(4)建立索引[root@localhostyum.repos.d]#cd/home/openstack[root@localhostopenstack]#createrepo.執(zhí)行完成后,/home/openstack目錄就可以作為本地源使用了。本任務(wù)注意點(1)yum安裝的前提是源配置,一定要熟練掌握本地和網(wǎng)絡(luò)源的配置。(2)掛載光驅(qū)永久生效的方法是在/etc/fstab文件中進行配置修改。任務(wù)拓展訓(xùn)練(1)掛載本地光驅(qū)到/mnt目錄,使用yum方式安裝lrzsz軟件包。(2)在windows上制作一個.zip壓縮包,文件名稱和內(nèi)容任意,利用安裝好的lrzsz軟件提供的rz命令上傳這個壓縮包到/root目錄下。(3)使用yum方式安裝unzip軟件,解壓上題中上傳的/root目錄下的壓縮文件。(4)使用yum方式安裝zip軟件,將/etc/yum.repos.d目錄中的內(nèi)容壓縮成yum.zip。(5)使用sz命令將yum.zip上傳到windows中保存。(6)卸載/mnt目錄,在/mnt目錄中創(chuàng)建子目錄centos和iaas。(7)將光驅(qū)掛載到/mnt/centos目錄中,上傳提供的iaas.iso文件到/root目錄下,然后將其掛載到/mnt/iaas目錄中。(8)制作本地源local.repo,其中包括2項源配置,一個源是/mnt/centos目錄,另一個是/mnt/iaas目錄。(9)使用yum安裝服務(wù)軟件httpd。(10)使用yum安裝服務(wù)軟件vsftpd。補充知識YUM簡介YUM(YellowdogUpdaterModified)是一個在Fedora、RedHat和SUSE中的Shell前端軟件包管理器?;赗PM包管理,能夠從指定的服務(wù)器自動下載RPM包并且安裝,可以處理依賴性關(guān)系,并且一次安裝所有依賴的軟件包,無須繁瑣地一次次下載、安裝。rpm命令只能安裝下載到本的.rpm格式的安裝包,但是rpm并不能處理軟件包之間的依賴關(guān)系,尤其是軟件由多個.rpm包組成時,這時可以使用yum。yum的主要是更方便的添加、刪除、更新RPM包,自動解決軟件包之間的依賴關(guān)系,方便系統(tǒng)更新及軟件管理。yum通過資源倉庫(repository)進行軟件的下載、安裝等,軟件倉庫可以是一個HTTP或FTP站點,也可以是一個本軟件池,資源倉庫也可以是多個,在/etc/yum.conf文件中進行相關(guān)配置即可。在yum的資源庫中,會包括rpm的頭信息(header),頭信息中包括了軟件的功能描述、依賴關(guān)系等。通過分析這些信息,yum計算出依賴關(guān)系并進行相關(guān)的升級、安裝、刪除等操作。1.認識YUM配置文件YUM的配置文件分為main和repository兩部分。(1)主體配置文件main。這個文件定義了全局配置選項,該文件只有一個,通常位于/etc/yum.conf。(2)yum倉庫源repository。定義了源服務(wù)器的具體配置,可能是一或多個,通常位于/etc/yum.repos.d/*.repo文件中,可以通過命令查看yum倉庫源的配置。補充知識2.認識yum主體配置文件(/etc/yum.conf)(1)使用“cat
/etc/yum.conf”命令查看yum主體配置文件,如圖5-1所示。
圖5-1查看默認yum主體配置文件(/etc/yum.conf)補充知識(2)對yum主體配置文件的全局性配置信息進行參數(shù)及功能說明,如下所示。lcachedir:緩存目錄,yum將下載的rpm軟件包存放在cachedir指定的目錄。lkeepcache:安裝完成后是否保留軟件包,0為不保留(默認為0),1為保留。ldebuglevel:Debug信息輸出等級,范圍為0-10,缺省為2。llogfile:yum日志文件位置,用戶通過該文件查詢做過的更新。lexactarch:是否只安裝和系統(tǒng)架構(gòu)匹配的軟件包??蛇x項為:1、0,默認1。設(shè)置為1時不會將i686的軟件包安裝在適合i386的系統(tǒng)中。lobsoletes:這是一個更新的參數(shù)設(shè)置,是否允許更新陳舊的RPM包。lgpgcheck:
是否進行
GPG(GNUPrivateGuard)校驗,以確定rpm包的來源是有效和安全。當在這個選項設(shè)置在[main]部分,則對每個repository都有效。lplugins:
是否啟用插件,默認1為允許,0表示不允許。linstallonly_limit:可同時安裝多少程序包。lbugtracker_url
Bug:追蹤路徑。ldistroverpkg:當前發(fā)行版版本號。補充知識2.認識yum倉庫源repository(/etc/yum.repos.d/*.repo)(1)使用命令“l(fā)s-l/etc/yum.repos.d/”查看當前目錄yum倉庫源信息。[root@localhost~]#ls-l/etc/yum.repos.d/總用量
36-rw-r--r--.1rootroot25238月42022CentOS-Base.repo-rw-r--r--.1rootroot130911月232018CentOS-CR.repo-rw-r--r--.1rootroot64911月232018CentOS-Debuginfo.repo-rw-r--r--.1rootroot31411月232018CentOS-fasttrack.repo-rw-r--r--.1rootroot63011月232018CentOS-Media.repo-rw-r--r--.1rootroot133111月232018CentOS-Sources.repo-rw-r--r--.1rootroot570111月232018CentOS-Vault.repo補充知識(2)以當前顯示“CentOS-Base.repo”文件為例,查看yum倉庫源信息,如圖5-2所示。圖5-2查看yum倉庫源信息補充知識(3)對yum倉庫源文件信息進行參數(shù)選項及功能說明,如下所示。l[<名稱>]:是用于區(qū)別各個不同的yum倉庫源repository,必須有一個獨一無二的名稱。lname:是對yum倉庫源repository的描述lbaseurl:指向yum倉庫源repository的父目錄(即repodata目錄),這是服務(wù)器設(shè)置中最重要的部分,只有設(shè)置正確才能獲取軟件包,URL支持http://、ftp://和file://三種協(xié)議格式。lenabled:為0表示禁止使用這個repository;為1表示允許使用這個repository;如果沒有使用enabled選項,默認為enabled=1。lgpgcheck:為0表示安裝前不對RPM包檢測;為1表示安裝前對RPM包檢測。lgpgkey:密鑰文件的位置。
4.2.1使用wget下載軟件本任務(wù)nginx軟件為例,講解源碼編譯安裝的過程,如果要進行編譯安裝,首先要下載軟件的源碼,這里使用wget軟件下載nginx軟件源碼到本地。首先切換到/usr/local/src目錄中,一般我們習(xí)慣把源碼文件放到這個目錄,當然放到其他目錄也是可以的,登錄/en/download.html網(wǎng)址,找到穩(wěn)定版nginx-1.22.1,復(fù)制鏈接地址,如圖5-3所示。圖5-3復(fù)制鏈接地址4.2.1使用wget下載軟件【實例18】使用wget命令下載nginx-1.22.1源文件,并解壓縮。[root@localhostsrc]#wget/download/nginx-1.22.1.tar.gz--2023-02-1702:53:11--/download/nginx-1.22.1.tar.gz正在解析主機
()...72,2,2a05:d014:edb:5702::6,...正在連接
()|72|:80...已連接。已發(fā)出
HTTP請求,正在等待回應(yīng)...200OK長度:1073948(1.0M)[application/octet-stream]正在保存至:“nginx-1.22.1.tar.gz”
100%[================================>]1,073,948661KB/s用時1.6s
2
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 5年級下冊英語書單詞表點讀
- 低空空中交通應(yīng)用場景
- 登山 法治宣傳活動
- 4年級觀察日記三則怎么寫
- 超聲波塑料焊接 - 副本 - 副本
- 2025年貴陽幼兒師范高等專科學(xué)校單招職業(yè)技能測試題庫帶答案
- 2025年云南商務(wù)職業(yè)學(xué)院單招職業(yè)傾向性測試題庫一套
- 2025年重慶市綿陽市單招職業(yè)傾向性測試題庫及參考答案
- 2025年天津公安警官職業(yè)學(xué)院單招職業(yè)技能測試題庫1套
- 2025年晉城職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫學(xué)生專用
- 谷物運輸機傳動裝置畢業(yè)設(shè)計
- GB/T 5778-1986膨脹合金氣密性試驗方法
- GB/T 5455-2014紡織品燃燒性能垂直方向損毀長度、陰燃和續(xù)燃時間的測定
- GB/T 5117-2012非合金鋼及細晶粒鋼焊條
- GB/T 3782-2006乙炔炭黑
- 大國醫(yī)魂:800年滋陰派與600年大德昌課件
- 真核生物的轉(zhuǎn)錄
- 《電商企業(yè)財務(wù)風(fēng)險管理-以蘇寧易購為例開題報告》
- 公司組織架構(gòu)圖(可編輯模版)
- 中小學(xué)綜合實踐活動課程指導(dǎo)綱要
- 清淤工程施工記錄表
評論
0/150
提交評論