什么是 i386, i586, i686, noarch, x86_64linux的軟件安裝分為源代碼編譯安裝和打包安裝。RPM是一種打包安裝方式,是由 Red Hat 這家公司開(kāi)發(fā)出來(lái)的,后來(lái)實(shí)在很好用,因此很多 distributions 就使用這個(gè)機(jī)制來(lái)作為軟件安裝的管理方式。包括 Fedora, CentOS, SuSE 等等知名的開(kāi)發(fā)商都是用這咚咚
RPM 默認(rèn)安裝的路徑這是個(gè)很好玩的地方,由於 RPM 可以適用在不同的操作平臺(tái)上,但是不同的平臺(tái)配置的參數(shù)還是有所差異性! 并且,我們可以針對(duì)比較高階的 CPU 來(lái)進(jìn)行最佳化參數(shù)的配置,這樣才能夠使用高階 CPU 所帶來(lái)的硬件加速功能。 所以就有所謂的 i386, i586, i686, x86_64 與 noarch 等的文件名稱出現(xiàn)了!
平臺(tái)名稱 適合平臺(tái)說(shuō)明 i386 幾乎適用於所有的 x86 平臺(tái),不論是舊的 pentum 或者是新的 Intel Core 2 與 K8 系列的 CPU 等等,都可以正常的工作!那個(gè) i 指的是 Intel 兼容的 CPU 的意思,至於 386 不用說(shuō),就是 CPU 的等級(jí)啦! i586 就是針對(duì) 586 等級(jí)的計(jì)算機(jī)進(jìn)行最佳化編譯。那是哪些 CPU 呢?包括 pentum 第一代 MMX CPU, AMD 的 K5, K6 系列 CPU (socket 7 插腳) 等等的 CPU 都算是這個(gè)等級(jí); i686 在 pentun II 以后的 Intel 系列 CPU ,及 K7 以后等級(jí)的 CPU 都屬於這個(gè) 686 等級(jí)! 由於目前市面上幾乎僅剩 P-II 以后等級(jí)的硬件平臺(tái),因此很多 distributions 都直接釋出這種等級(jí)的 RPM 文件。 x86_64 針對(duì) 64 位的 CPU 進(jìn)行最佳化編譯配置,包括 Intel 的 Core 2 以上等級(jí) CPU ,以及 AMD 的 Athlon64 以后等級(jí)的 CPU ,都屬於這一類型的硬件平臺(tái)。 noarch 就是沒(méi)有任何硬件等級(jí)上的限制。一般來(lái)說(shuō),這種類型的 RPM 文件,里面應(yīng)該沒(méi)有 binary PRogram 存在, 較常出現(xiàn)的就是屬於 shell script 方面的軟件。 根據(jù)上面的說(shuō)明,其實(shí)我們只要選擇 i386 版本來(lái)安裝在你的 x86 硬件上面就肯定沒(méi)問(wèn)題。但是如果強(qiáng)調(diào)效能的話, 還是選擇搭配你的硬件的 RPM 文件吧!畢竟該軟件才有針對(duì)你的 CPU 硬件平臺(tái)進(jìn)行過(guò)參數(shù)最佳化的編譯嘛!
x86_64版本不僅需要硬件cpu是64位,Linux也要是64位的才行。
RPM 安裝 (install)
/etc 一些配置檔放置的目錄,例如 /etc/crontab /usr/bin 一些可運(yùn)行文件 /usr/lib 些程序使用的動(dòng)態(tài)函式庫(kù) /usr/share/doc 一些基本的軟件使用手冊(cè)與說(shuō)明檔 /usr/share/man 一些 man page 文件
RPM 升級(jí)與升級(jí) (upgrade/freshen)因?yàn)榘惭b軟件是 root 的工作,因此你得要是 root 的身份才能夠操作 rpm 這命令的。 用 rpm 來(lái)安裝很簡(jiǎn)單啦!假設(shè)我要安裝一個(gè)檔名為 rp-pppoe-3.5-32.1.i386.rpm 的文件,那么我可以這樣:
[root@www ~]# rpm -i rp-pppoe-3.5-32.1.i386.rpm不過(guò),這樣的參數(shù)其實(shí)無(wú)法顯示安裝的進(jìn)度,所以,通常我們會(huì)這樣下達(dá)安裝命令:[root@www ~]# rpm -ivh package_name選項(xiàng)與參數(shù):-i :install 的意思-v :察看更細(xì)部的安裝資訊畫(huà)面-h :以安裝資訊列顯示安裝進(jìn)度范例一:安裝 rp-pppoe-3.5-32.1.i386.rpm[root@www ~]# rpm -ivh rp-pppoe-3.5-32.1.i386.rpmPreparing... ####################################### [100%] 1:rp-pppoe ####################################### [100%] 范例二、一口氣安裝兩個(gè)以上的軟件時(shí):[root@www ~]# rpm -ivh a.i386.rpm b.i386.rpm *.rpm# 后面直接接上許多的軟件文件!范例三、直接由網(wǎng)絡(luò)上面的某個(gè)文件安裝,以網(wǎng)址來(lái)安裝:[root@www ~]# rpm -ivh http://website.name/path/pkgname.rpm另外,如果我們?cè)诎惭b的過(guò)程當(dāng)中發(fā)現(xiàn)問(wèn)題,或者已經(jīng)知道會(huì)發(fā)生的問(wèn)題, 而還是『執(zhí)意』要安裝這個(gè)軟件時(shí),可以使用如下的參數(shù)『強(qiáng)制』安裝上去:
可下達(dá)的選項(xiàng) 代表意義 --nodeps 使用時(shí)機(jī):當(dāng)發(fā)生軟件屬性相依問(wèn)題而無(wú)法安裝,但你執(zhí)意安裝時(shí) 危險(xiǎn)性: 軟件會(huì)有相依性的原因是因?yàn)楸舜藭?huì)使用到對(duì)方的機(jī)制或功能,如果強(qiáng)制安裝而不考慮軟件的屬性相依, 則可能會(huì)造成該軟件的無(wú)法正常使用!
--replacefiles 使用時(shí)機(jī): 如果在安裝的過(guò)程當(dāng)中出現(xiàn)了『某個(gè)文件已經(jīng)被安裝在你的系統(tǒng)上面』的資訊,又或許出現(xiàn)版本不合的信息 (confilcting files) 時(shí),可以使用這個(gè)參數(shù)來(lái)直接覆蓋文件。 危險(xiǎn)性: 覆蓋的動(dòng)作是無(wú)法復(fù)原的!所以,你必須要很清楚的知道被覆蓋的文件是真的可以被覆蓋喔!否則會(huì)欲哭無(wú)淚!
--replacepkgs 使用時(shí)機(jī): 重新安裝某個(gè)已經(jīng)安裝過(guò)的軟件!如果你要安裝一堆 RPM 軟件文件時(shí),可以使用 rpm -ivh *.rpm ,但若某些軟件已經(jīng)安裝過(guò)了, 此時(shí)系統(tǒng)會(huì)出現(xiàn)『某軟件已安裝』的資訊,導(dǎo)致無(wú)法繼續(xù)安裝。此時(shí)可使用這個(gè)選項(xiàng)來(lái)重復(fù)安裝喔! --force 使用時(shí)機(jī):這個(gè)參數(shù)其實(shí)就是 --replacefiles 與 --replacepkgs 的綜合體!
--test 使用時(shí)機(jī): 想要測(cè)試一下該軟件是否可以被安裝到使用者的 Linux 環(huán)境當(dāng)中,可找出是否有屬性相依的問(wèn)題。范例為: rpm -ivh pkgname.i386.rpm --test
--justdb 使用時(shí)機(jī): 由於 RPM 數(shù)據(jù)庫(kù)破損或者是某些緣故產(chǎn)生錯(cuò)誤時(shí),可使用這個(gè)選項(xiàng)來(lái)升級(jí)軟件在數(shù)據(jù)庫(kù)內(nèi)的相關(guān)資訊。 --nosignature 使用時(shí)機(jī): 想要略過(guò)數(shù)碼簽章的檢查時(shí),可以使用這個(gè)選項(xiàng)。 --prefix 新路徑 使用時(shí)機(jī): 要將軟件安裝到其他非正規(guī)目錄時(shí)。舉例來(lái)說(shuō),你想要將某軟件安裝到 /usr/local 而非正規(guī)的 /bin, /etc 等目錄, 就可以使用『 --prefix /usr/local 』來(lái)處理了。 --noscripts 使用時(shí)機(jī):不想讓該軟件在安裝過(guò)程中自行運(yùn)行某些系統(tǒng)命令。 說(shuō)明: RPM 的優(yōu)點(diǎn)除了可以將文件放置到定位之外,還可以自動(dòng)運(yùn)行一些前置作業(yè)的命令,例如數(shù)據(jù)庫(kù)的初始化。 如果你不想要讓 RPM 幫你自動(dòng)運(yùn)行這一類型的命令,就加上他吧!
RPM 查詢 (query)使用 RPM 來(lái)升級(jí)真是太簡(jiǎn)單了!就以 -Uvh 或 -Fvh 來(lái)升級(jí)即可,而 -Uvh 與 -Fvh 可以用的選項(xiàng)與參數(shù),跟 install 是一樣的。不過(guò), -U 與 -F 的意義還是不太一樣的,基本的差別是這樣的:
-Uvh 后面接的軟件即使沒(méi)有安裝過(guò),則系統(tǒng)將予以直接安裝; 若后面接的軟件有安裝過(guò)舊版,則系統(tǒng)自動(dòng)升級(jí)至新版; -Fvh 如果后面接的軟件并未安裝到你的 Linux 系統(tǒng)上,則該軟件不會(huì)被安裝;亦即只有已安裝至你 Linux 系統(tǒng)內(nèi)的軟件會(huì)被『升級(jí)』!
RPM 反安裝與重建數(shù)據(jù)庫(kù) (erase/rebuilddb)RPM 在查詢的時(shí)候,其實(shí)查詢的地方是在 /var/lib/rpm/ 這個(gè)目錄下的數(shù)據(jù)庫(kù)文件啦!另外, RPM 也可以查詢未安裝的 RPM 文件內(nèi)的資訊喔!那如何去查詢呢? 我們先來(lái)談?wù)効捎玫倪x項(xiàng)有哪些?
[root@www ~]# rpm -qa <==已安裝軟件[root@www ~]# rpm -q[licdR] 已安裝的軟件名稱 <==已安裝軟件[root@www ~]# rpm -qf 存在於系統(tǒng)上面的某個(gè)檔名 <==已安裝軟件[root@www ~]# rpm -qp[licdR] 未安裝的某個(gè)文件名稱 <==查閱RPM文件選項(xiàng)與參數(shù):查詢已安裝軟件的資訊:-q :僅查詢,后面接的軟件名稱是否有安裝;-qa :列出所有的,已經(jīng)安裝在本機(jī) Linux 系統(tǒng)上面的所有軟件名稱;-qi :列出該軟件的詳細(xì)資訊 (information),包含開(kāi)發(fā)商、版本與說(shuō)明等;-ql :列出該軟件所有的文件與目錄所在完整檔名 (list);-qc :列出該軟件的所有配置檔 (找出在 /etc/ 底下的檔名而已)-qd :列出該軟件的所有說(shuō)明檔 (找出與 man 有關(guān)的文件而已)-qR :列出與該軟件有關(guān)的相依軟件所含的文件 (Required 的意思)-qf :由后面接的文件名稱,找出該文件屬於哪一個(gè)已安裝的軟件;查詢某個(gè) RPM 文件內(nèi)含有的資訊:-qp[icdlR]:注意 -qp 后面接的所有參數(shù)以上面的說(shuō)明一致。但用途僅在於找出 某個(gè) RPM 文件內(nèi)的資訊,而非已安裝的軟件資訊!注意!在查詢的部分,所有的參數(shù)之前都需要加上 -q 才是所謂的查詢!查詢主要分為兩部分, 一個(gè)是查已安裝到系統(tǒng)上面的的軟件資訊,這部份的資訊都是由 /var/lib/rpm/ 所提供。另一個(gè)則是查某個(gè) rpm 文件內(nèi)容, 等於是由 RPM 文件內(nèi)找出一些要寫(xiě)入數(shù)據(jù)庫(kù)內(nèi)的資訊就是了,這部份就得要使用 -qp (p 是 package 的意思)。 那就來(lái)看看幾個(gè)簡(jiǎn)單的范例吧!
范例一:找出你的 Linux 是否有安裝 logrotate 這個(gè)軟件?[root@www ~]# rpm -q logrotatelogrotate-3.7.4-8[root@www ~]# rpm -q logrotatingpackage logrotating is not installed# 注意到,系統(tǒng)會(huì)去找是否有安裝后面接的軟件名稱。注意,# 不必要加上版本喔!至於顯示的結(jié)果,一看就知道有沒(méi)有安裝啦!范例二:列出上題當(dāng)中,屬於該軟件所提供的所有目錄與文件:[root@www ~]# rpm -ql logrotate/etc/cron.daily/logrotate/etc/logrotate.conf....(以下省略)....# 可以看出該軟件到底提供了多少的文件與目錄,也可以追蹤軟件的數(shù)據(jù)。范例三:列出 logrotate 這個(gè)軟件的相關(guān)說(shuō)明數(shù)據(jù):[root@www ~]# rpm -qi logrotateName : logrotate Relocations: (not relocatable)Version : 3.7.4 Vendor: CentOSRelease : 8 Build Date: Sun 02 Dec 2007 08:38:06 AM CSTInstall Date: Sat 09 May 2009 11:59:05 PM CST Build Host: builder6Group : System Environment/Base Source RPM: logrotate-3.7.4-8.src.rpmSize : 53618 License: GPLSignature : DSA/SHA1, Sun 02 Dec 2007 09:10:01 AM CST, Key ID a8a447dce8562897Summary : Rotates, compresses, removes and mails system log files.Description :The logrotate utility is designed to simplify the administration oflog files on a system which generates a lot of log files. Logrotateallows for the automatic rotation compression, removal and mailing oflog files. Logrotate can be set to handle a log file daily, weekly,monthly or when the log file gets to a certain size. Normally,logrotate runs as a daily cron job.Install the logrotate package if you need a utility to deal with thelog files on your system.# 列出該軟件的 information (資訊),里面的資訊可多著呢,包括了軟件名稱、# 版本、開(kāi)發(fā)商、SRPM文件名稱、打包次數(shù)、簡(jiǎn)單說(shuō)明資訊、軟件打包者、# 安裝日期等等!如果想要詳細(xì)的知道該軟件的數(shù)據(jù),用這個(gè)參數(shù)來(lái)了解一下范例四:分別僅找出 logrotate 的配置檔與說(shuō)明檔[root@www ~]# rpm -qc logrotate[root@www ~]# rpm -qd logrotate范例五:若要成功安裝 logrotate ,他還需要什么文件的幫忙?[root@www ~]# rpm -qR logrotate/bin/shconfig(logrotate) = 3.7.4-8libc.so.6....(以下省略)....# 由這里看起來(lái),呵呵~還需要很多文件的支持才行喔!范例六:由上面的范例五,找出 /bin/sh 是那個(gè)軟件提供的?[root@www ~]# rpm -qf /bin/shbash-3.2-21.el5# 這個(gè)參數(shù)后面接的可是『文件』吶!不像前面都是接軟件喔!# 這個(gè)功能在查詢系統(tǒng)的某個(gè)文件屬於哪一個(gè)軟件所有的。范例七:假設(shè)我有下載一個(gè) RPM 文件,想要知道該文件的需求文件,該如何?[root@www ~]# rpm -qpR filename.i386.rpm# 加上 -qpR ,找出該文件需求的數(shù)據(jù)!
CentOS強(qiáng)烈建議使用yum來(lái)管理軟件,且只使用CentOS推薦的軟件,如果沒(méi)有太大的需要,建議使用yum來(lái)安裝軟件,這樣的安裝可以最大的保證系統(tǒng)的穩(wěn)定性。YUM 線上升級(jí)機(jī)制反安裝就是將軟件卸載啦!要注意的是,『解安裝的過(guò)程一定要由最上一級(jí)往下解除』,以 rp-pppoe 為例,這一個(gè)軟件主要是依據(jù) ppp 這個(gè)軟件來(lái)安裝的,所以當(dāng)你要解除 ppp 的時(shí)候,就必須要先解除 rp-pppoe 才行!否則就會(huì)發(fā)生結(jié)構(gòu)上的問(wèn)題啦!這個(gè)可以由建筑物來(lái)說(shuō)明, 如果你要拆除五、六樓,那么當(dāng)然要由六樓拆起,否則先拆的是第五樓時(shí),那么上面的樓層難道會(huì)懸空?
移除的選項(xiàng)很簡(jiǎn)單,就透過(guò) -e 即可移除。不過(guò),很常發(fā)生軟件屬性相依導(dǎo)致無(wú)法移除某些軟件的問(wèn)題! 我們以底下的例子來(lái)說(shuō)明:
# 1. 找出與 pam 有關(guān)的軟件名稱,并嘗試移除 pam 這個(gè)軟件:[root@www ~]# rpm -qa | grep pampam-devel-0.99.6.2-3.27.el5pam_passwdqc-1.0.2-1.2.2pam_pkcs11-0.5.3-23pam_smb-1.1.7-7.2.1pam-0.99.6.2-3.27.el5pam_ccreds-3-5pam_krb5-2.2.14-1[root@www ~]# rpm -e pamerror: Failed dependencies: <==這里提到的是相依性的問(wèn)題 libpam.so.0 is needed by (installed) coreutils-5.97-14.el5.i386 libpam.so.0 is needed by (installed) libuser-0.54.7-2.el5.5.i386....(以下省略)....# 2. 若僅移除 pam-devel 這個(gè)之前范例安裝上的軟件呢?[root@www ~]# rpm -e pam-devel <==不會(huì)出現(xiàn)任何信息![root@www ~]# rpm -q pam-develpackage pam-devel is not installed由於 RPM 文件常常會(huì)安裝/移除/升級(jí)等,某些動(dòng)作或許可能會(huì)導(dǎo)致 RPM 數(shù)據(jù)庫(kù) /var/lib/rpm/ 內(nèi)的文件破損。果真如此的話,那你該如何是好?別擔(dān)心,我們可以使用 --rebuilddb 這個(gè)選項(xiàng)來(lái)重建一下數(shù)據(jù)庫(kù)喔! 作法如下:[root@www ~]# rpm --rebuilddb <==重建數(shù)據(jù)庫(kù)
全系統(tǒng)自動(dòng)升級(jí)yum 是透過(guò)分析 RPM 的標(biāo)頭數(shù)據(jù)后, 根據(jù)各軟件的相關(guān)性制作出屬性相依時(shí)的解決方案,然后可以自動(dòng)處理軟件的相依屬性問(wèn)題,以解決軟件安裝或移除與升級(jí)的問(wèn)題。
由於 distribution 必須要先釋出軟件,然后將軟件放置於 yum 服務(wù)器上面,以提供用戶端來(lái)要求安裝與升級(jí)之用的。 因此我們想要使用 yum 的功能時(shí),必須要先找到適合的 yum server 才行啊!
實(shí)際上當(dāng)你第一次使用yum時(shí),CentOS6以上版本優(yōu)先安裝了 fastestmirror,用以選擇最快的yum服務(wù)器。
- 查詢功能:yum [list|info|search|provides|whatprovides] 參數(shù)
[root@www ~]# yum [option] [查詢工作項(xiàng)目] [相關(guān)參數(shù)]選項(xiàng)與參數(shù):[option]:主要的選項(xiàng),包括有: -y :當(dāng) yum 要等待使用者輸入時(shí),這個(gè)選項(xiàng)可以自動(dòng)提供 yes 的回應(yīng); --installroot=/some/path :將該軟件安裝在 /some/path 而不使用默認(rèn)路徑[查詢工作項(xiàng)目] [相關(guān)參數(shù)]:這方面的參數(shù)有: search :搜尋某個(gè)軟件名稱或者是描述 (description) 的重要關(guān)鍵字; list :列出目前 yum 所管理的所有的軟件名稱與版本,有點(diǎn)類似 rpm -qa; info :同上,不過(guò)有點(diǎn)類似 rpm -qai 的運(yùn)行結(jié)果; provides:從文件去搜尋軟件!類似 rpm -qf 的功能!范例一:搜尋磁盤(pán)陣列 (raid) 相關(guān)的軟件有哪些?[root@www ~]# yum search raid....(前面省略)....mdadm.i386 : mdadm controls Linux md devices (software RAID arrays)lvm2.i386 : Userland logical volume management tools....(后面省略)....# 在冒號(hào) (:) 左邊的是軟件名稱,右邊的則是在 RPM 內(nèi)的 name 配置 (軟件名)# 瞧!上面的結(jié)果,這不就是與 RAID 有關(guān)的軟件嗎?如果想了解 mdadm 的軟件內(nèi)容呢?范例二:找出 mdadm 這個(gè)軟件的功能為何[root@www ~]# yum info mdadmInstalled Packages <==這說(shuō)明該軟件是已經(jīng)安裝的了Name : mdadm <==這個(gè)軟件的名稱Arch : i386 <==這個(gè)軟件的編譯架構(gòu)Version: 2.6.4 <==此軟件的版本Release: 1.el5 <==釋出的版本Size : 1.7 M <==此軟件的文件總?cè)萘縍epo : installed <==容器回報(bào)說(shuō)已安裝的Summary: mdadm controls Linux md devices (software RAID arrays)Description: <==看到否?這就是 rpm -qi 嘛!mdadm is used to create, manage, and monitor Linux MD (software RAID)devices. As such, it provides similar functionality to the raidtoolspackage. However, mdadm is a single program, and it can performalmost all functions without a configuration file, though a configurationfile can be used to help with some common tasks.# 不要跟我說(shuō),上面說(shuō)些啥?自己找字典翻一翻吧!拜托拜托!范例三:列出 yum 服務(wù)器上面提供的所有軟件名稱[root@www ~]# yum listInstalled Packages <==已安裝軟件Deployment_Guide-en-US.noarch 5.2-9.el5.centos installedDeployment_Guide-zh-CN.noarch 5.2-9.el5.centos installedDeployment_Guide-zh-TW.noarch 5.2-9.el5.centos installed....(中間省略)....Available Packages <==還可以安裝的其他軟件Cluster_Administration-as-IN.noarch 5.2-1.el5.centos baseCluster_Administration-bn-IN.noarch 5.2-1.el5.centos base....(底下省略)....# 上面提供的意義為:『 軟件名稱 版本 在那個(gè)容器內(nèi) 』范例四:列出目前服務(wù)器上可供本機(jī)進(jìn)行升級(jí)的軟件有哪些?[root@www ~]# yum list updates <==一定要是 updates 喔!Updated PackagesDeployment_Guide-en-US.noarch 5.2-11.el5.centos baseDeployment_Guide-zh-CN.noarch 5.2-11.el5.centos baseDeployment_Guide-zh-TW.noarch 5.2-11.el5.centos base....(底下省略)....# 上面就列出在那個(gè)容器內(nèi)可以提供升級(jí)的軟件與版本!范例五:列出提供 passwd 這個(gè)文件的軟件有哪些[root@www ~]# yum provides passwdpasswd.i386 : The passwd utility for setting/changing passWords using PAMpasswd.i386 : The passwd utility for setting/changing passwords using PAM# 找到啦!就是上面的這個(gè)軟件提供了 passwd 這個(gè)程序!- 安裝/升級(jí)功能:yum [install|update] 軟件
[root@www ~]# yum [option] [查詢工作項(xiàng)目] [相關(guān)參數(shù)]選項(xiàng)與參數(shù): install :后面接要安裝的軟件! update :后面接要升級(jí)的軟件,若要整個(gè)系統(tǒng)都升級(jí),就直接 update 即可范例一:將前一個(gè)練習(xí)找到的未安裝的 pam-devel 安裝起來(lái)[root@www ~]# yum install pam-develSetting up Install ProcessParsing package install argumentsResolving Dependencies <==先檢查軟件的屬性相依問(wèn)題--> Running transaction check---> Package pam-devel.i386 0:0.99.6.2-4.el5 set to be updated--> Processing Dependency: pam = 0.99.6.2-4.el5 for package: pam-devel--> Running transaction check---> Package pam.i386 0:0.99.6.2-4.el5 set to be updatedfilelists.xml.gz 100% |=========================| 1.6 MB 00:05filelists.xml.gz 100% |=========================| 138 kB 00:00-> Finished Dependency ResolutionDependencies Resolved============================================================================= Package Arch Version Repository Size=============================================================================Installing: pam-devel i386 0.99.6.2-4.el5 base 186 kUpdating: pam i386 0.99.6.2-4.el5 base 965 kTransaction Summary=============================================================================Install 1 Package(s) <==結(jié)果發(fā)現(xiàn)要安裝此軟件需要升級(jí)另一個(gè)相依的軟件Update 1 Package(s)Remove 0 Package(s)Total download size: 1.1 MIs this ok [y/N]: y <==確定要安裝!Downloading Packages: <==先下載!(1/2): pam-0.99.6.2-4.el5 100% |=========================| 965 kB 00:05(2/2): pam-devel-0.99.6.2 100% |=========================| 186 kB 00:01Running rpm_check_debugRunning Transaction TestFinished Transaction TestTransaction Test SucceededRunning Transaction <==開(kāi)始安裝! Updating : pam ######################### [1/3] Installing: pam-devel ######################### [2/3] Cleanup : pam ######################### [3/3]Installed: pam-devel.i386 0:0.99.6.2-4.el5Updated: pam.i386 0:0.99.6.2-4.el5Complete!- 移除功能:yum [remove] 軟件
[root@www ~]# yum remove pam-develSetting up Remove ProcessResolving Dependencies <==同樣的,先解決屬性相依的問(wèn)題--> Running transaction check---> Package pam-devel.i386 0:0.99.6.2-4.el5 set to be erased--> Finished Dependency ResolutionDependencies Resolved============================================================================= Package Arch Version Repository Size=============================================================================Removing: pam-devel i386 0.99.6.2-4.el5 installed 495 kTransaction Summary=============================================================================Install 0 Package(s)Update 0 Package(s)Remove 1 Package(s) <==還好,并沒(méi)有屬性相依的問(wèn)題,單純移除一個(gè)軟件Is this ok [y/N]: yDownloading Packages:Running rpm_check_debugRunning Transaction TestFinished Transaction TestTransaction Test SucceededRunning Transaction Erasing : pam-devel ######################### [1/1]Removed: pam-devel.i386 0:0.99.6.2-4.el5Complete!
我們可以手動(dòng)選擇是否需要升級(jí),那能不能讓系統(tǒng)自動(dòng)升級(jí),讓我們的系統(tǒng)隨時(shí)保持在最新的狀態(tài)呢? 當(dāng)然可以啊!透過(guò)『 yum -y update 』來(lái)自動(dòng)升級(jí),那個(gè) -y 很重要,因?yàn)榭梢宰詣?dòng)回答 yes 來(lái)開(kāi)始下載與安裝! 然后再透過(guò) crontab 的功能來(lái)處理即可!假設(shè)我每天在臺(tái)灣時(shí)間 3:00am 網(wǎng)絡(luò)頻寬比較輕松的時(shí)候進(jìn)行升級(jí), 你可以這樣做的:
[root@www ~]# vim /etc/crontab....(前面省略并保留配置值)....0 3 * * * root /usr/bin/yum -y update從此你的系統(tǒng)就會(huì)自動(dòng)升級(jí)啦!很棒吧!此外,你還是得要分析登錄檔與收集 root 的信件的, 因?yàn)槿绻?jí)的是核心軟件 (kernel),那么你還是得要重新啟動(dòng)才會(huì)讓安裝的軟件順利運(yùn)行的! 所以還是得分析登錄檔,若有新核心安裝,就重新啟動(dòng),否則就讓系統(tǒng)自動(dòng)維持在最新較安全的環(huán)境吧! 真是輕松愉快的管理啊!
新聞熱點(diǎn)
疑難解答
圖片精選