RedHat系列軟體管理(第二版) --二進位軟體包管理

來源:互聯網
上載者:User

標籤:linux   redhat   centos   yum   rpm   

RedHat系列軟體管理--二進位軟體包管理

Linux學習思想-Linux相對與Windows來非常透明,因此,無論是系統,還是軟體,都會有本身內建,或者是Man給提供的非常詳細的說明/協助文檔,只要我們利用好這些文檔,只要英文足夠好,不需要任何教科書,任何教學視頻,你都可以學好Linux!

 

RPM包管理

Linux軟體包命名形式

sudo-1.7.2p1-5.el5.i386.rpm 

#其中包括軟體名(sudo),版本號碼(1.7.2pl),發行號(5.el5),和硬體平台(i386)

 

卸載軟體包

rpm -e [soft-name]#如果其它軟體包有依賴關係,卸載時會產生提示資訊

rpm -e --nodeps [soft-name]#添加--nodeps,可強行卸載;但是不建議這樣卸載

安裝軟體包

rpm -ivh [軟體包名]【如:sudo-1.7.2p1-5.el5.i386.rpm】

v: 表示顯示詳細資料,可選

h:表示顯示安裝進度,可選

 

1、掛載光碟片:【最佳實務:將光碟片,隨身碟等掛載到/mnt目錄下】

mkdir /mnt/cdrom

mount /dev/cdrom /mnt/cdrom#現在開啟/mnt/cdrom就相當與訪問光碟片內容

2、查詢是否存在:ls | grep sudo

 

3、安裝:rpm -ivh  sudo-1.7.2p1-5.el5.i386.rpm

 

4、查看是否已安裝:rpm -q sudo

 

5、rpm -qa | grep samba#查詢所有與samba有關的軟體包

【-qa表示查詢安裝了的所有的軟體包】


rpm其他安裝選項

--excludedocs不安裝軟體的文檔

--prefix=PATH 將軟體包安裝到由PATH指定的路徑下

如:rpm -ivh –prefix=/usr/local sudo-1.7.2p1-5.el5.i386.rpm

【但是:大部分的rpm包都不允許改變安裝路徑】

--test只是進行測試,而不進行真正安裝,比如擷取依賴關係,該軟體包是否已經安裝

 

附-光碟片中所有的二進位軟體全部儲存在CentOS|Packages[新版centOS]目錄下

 

特殊情況

A.覆蓋安裝

--replacepkgs覆蓋軟體安裝包

B.安裝衝突

如果要安裝的軟體包中有一個檔案已在安裝其它軟體包時安裝,會出現以下錯誤資訊: 

rpm -ivh sudo-1.8.6p3-7.el6.i686.rpm warning: sudo-1.8.6p3-7.el6.i686.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEYPreparing...                ########################################### [100%]package sudo-1.8.6p3-7.el6.i686 is already installed

 使--replacefiles忽略改出錯資訊,覆蓋安裝

 

C.未解決依賴關係

該軟體包可能依賴於其它軟體包,在安裝了特定的軟體包之後才能安裝該軟體包。

rpm -ivh sudo-1.7.2p1-5.el5.i386.rpm failed dependencies: sudo is needed by bark-3.2-1l

使用--nodeps 選項,可以強制安裝此軟體包,十有八九運行不了。


升級軟體包

sudo -Uvh sudo-1.8.6p3-7.el6.i686.rpm  

 

查詢【重要】

-a 查詢所有已安裝的軟體包. 

-f 查詢檔案所屬軟體包 

-p 查詢軟體包,還沒安裝的軟體包 

-q 查詢軟體包是否安裝

-i 顯示軟體包資訊 

-l 顯示軟體包中的檔案清單及所在位置

-d 顯示被標註為文檔的檔案清單及所在位置

-c 顯示被標註為設定檔的檔案清單及所在位置

 

執行個體:

1、查詢檔案/命令隸屬的軟體包

rpm -qf /etc/services#設定檔

rpm -qf /bin/ls#命令

2、查詢軟體包資訊

rpm -qi samba//查詢一個已經安裝的軟體包

rpm -qip samba-3.6.9-151.el6.i686.rpm#可以查詢還沒有安裝的rpm包,全稱!

3、查詢安裝包的安裝檔案,及安裝檔案所在位置

rpm -ql sudo

rpm -qip vsftpd-2.2.2-11.el6_3.1.i686.rpm#沒有安裝,全稱!

4、查詢軟體包協助文檔及所在位置

rpm -qd sudo 

rpm -qdp vsftpd-2.2.2-11.el6_3.1.i686.rpm#沒有安裝,全稱!

5、查詢軟體包設定檔及所在位置

rpm -qc 

rpm -qcp//同上

RPM綜合運用執行個體

一、vncserver是幹什麼用的???

rpm -qf vncserver

然後rpm -qi vnc-server#得知仔細資訊

 

二、查詢vim的標準注釋

1.查詢系統中是否已經安裝某個安裝包用:rpm -qa | grep vim

而不是直接用:   rpm -a vim

查詢範例文件:rpm -qa vim | grep example

2.然後開啟並查看

vi /usr/share/vim/vim72/vimrc_example.vim

 

校正

#可用於協助我們判斷軟體包是否出現問題,以及出現的問題在哪裡

rpm -V name正常情況下不會有任何提示,他的任何檔案都沒與更改

【rpm在安裝一個軟體到系統中時,會自動產生一個rpm庫,校正時,會和這個庫比對】

 

5 檔案的md5校正值 

S 檔案大小 

L 連結檔案 

T 檔案的建立或最後修改時間 

D 裝置檔案 

U 檔案的使用者 

G 檔案的使用者組 

M 檔案的許可權

 

附-md5sum:通過md5演算法對檔案產生唯一的校正值,只要檔案的內容不變,則校正值就不會變,對該檔案內容做任何一個微小的改變,他的校正值都會改變

 

重要檔案修複

比如/etc/inittab檔案被刪除,可以將該檔案從原始的安裝光碟片中提取出來

1.定位該檔案隸屬於哪個軟體包

rpm -qf /etc/inittab 

 

2.解壓所有檔案到目前的目錄【不推薦】 

rpm2cpio initscripts-8.45.30-2.el5.centos.i386.rpm | cpio -idv 

   解壓指定檔案到目前的目錄【推薦】 

rpm2cpio /mnt/cdrom/initscripts-8.45.30-2.el5.centos.i386.rpm | cpio -idv ./etc/inittab 【注意:./etc/inittab只允許提取到目前的目錄下】

【在Linux Server系統的管理上,我們更傾向與穩定,而不是最新版】

 

YUM軟體包管理

應用YUM的好處

(1)自動解決軟體安裝包依賴關係

(2)方便軟體包的升級

(3)可信任,官方軟體包

 

1、安裝

yum install sudo

 

2、檢測升級

yum check-update sudo

yum check-update#檢測所有的軟體包的升級

3、升級【比較重要,常用的軟體包要經常升級一下】

yum update sudo

 

4、查詢軟體包資訊

yum list//會列出軟體源上的所有軟體包

最佳實務:yum list | less

yum list | grep samba

 

5、查詢軟體包資訊

yum info [軟體名]

yum info sudo

 

6、卸載軟體包

yum remove sudo

 

7、查看協助資訊

yum --help或者 man yum

【最佳實務:yum --help | less】



RedHat系列軟體管理(第二版) --二進位軟體包管理

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.