學習筆記之yum的本地源配置和ATP簡介和使用

我本人開始也是學習的RHEL的系統,因爲Red Hat的教材實在是太多了,呵呵,所以對於Red Hat的一些命令、路徑及其他的比較熟悉,現在出來工作了,也接觸了其他幾類的linux衍生系統,不過都還不太熟,在這裏也就大概說一下他們所用的軟件包吧

首先說一下幾種linux版本
RHEL、Fedora、CentOS、Debian、Ubuntu、OpenSUSE、紅旗Linux

RHEL是Red Hat Enterprise Linux的縮寫,他是Red Hat的商業版本,這個版本是要收費的

Fedora是Red Hat公司贊助的社區版本,Fedora的前身是Red Hat桌面版,不過自從Red Hat9.0以後就不在發佈,把這個項目給開源社合作,然後就有了Fedora,有人說Fedora就是RHEL的實驗版本,當一些比較成熟的功能成熟後就運用到RHEL的發行版本中,當然Fedora的功能也是很強大的,但是我前一段裝了後遇到一些問題去Fedora的中文社區去提問,感覺Fedora的中文社區太沒有人氣了,所以昨天也就換了Ubuntu了,Fedora每年會有兩個發行版本,最新的爲Fedora 12,是在09年的12月份發生的。

CentOS這個版本其實是和RHEL是一模一樣的,區別就在於RHEL是收費的CentOS是免費的,不過前段看到好像CentOS現在也提供技術支持了,其實對於這個系統我還沒有安裝過,就是聽我們同學說很多人在用,可能就是因爲免費的吧,有空裝一個試下

Debian是一個完全免費的系統,如果你有需要所申請光盤也是免費的,這個很適合Linux自由、共享的宗旨。Debian也是一個很穩定的系統,但他和上面的幾個版本使用起來會有一些差別,他們的命令基本相同,路徑有很大的改變。但是Debian的缺點是更新太慢了。

Ubuntu是Linux發行版中的後起之秀,很適合新手去使用,而且還有很強大的中文社區。Ubuntu是Debian的一個分支。用過這個軟件的兩個版本,感覺確實很好用,而且新手會很容易上手,桌面做的也很漂亮、對硬件的支持也非常好。Ubuntu每年也更新兩次,在每年的4月份和10月份。

OpenSUSE是歐州很流行的Linux發行版本,對Linux也有很大的貢獻。現在OpenSUSE已經被Novell收購。這個版本的系統我在虛擬機中安裝過,感覺也非常的好用,但是感覺國內好像用的很少。

紅旗Linux,說一下我們國產的Linux吧,紅旗Linux的使用方法和Red Hat的使用方法是一樣的,有人說紅旗Linux就是使用的Red Hat的技術,不過紅旗Linux的桌面做的很好,感覺很像Windows。


接下來說我接觸的軟件安裝包吧,有rpm、deb、源碼包。rpm是Redhat Package Manager的縮寫,他是由Red Hat開發的一種包管理軟件,但現在有很多發行版本都在用他包括RHEL、Fedora、CentOS、OpenSUSE等。deb的安裝包是Debian的創始人開發的,在Debian和Ubuntu上使用。源碼包是最初的安裝包,用戶必須經過配置、編譯後才能安裝,對於新手來說不太方便。

幾種常用的包管理軟件:RPM、YUM、APT、YaST
RPM有很多的依賴關係,所以安裝會非常煩人,最後就被YUM所替代了,Yum就是爲了解決RPM的依賴問題而產生的,Yum的源可以是本地、http、ftp。Yum只支持對rpm安裝包的管理,現在RHEL、Fedora、CentOS都是在用Yum管理軟件包。
APT可以快速、實用、高效的方法來安裝、升級、刪除deb軟件包,當軟件包更新時,這個工具應該能自動管理關聯文件和維護已有配置文件。APT現在也支持對rpm包的管理。
YaST是SUSE自已開發的一種包管理工具,支持對rpm包的管理

如何安裝軟件包
rpm包
rpm包可以用命令來安裝它的參數有
-i:安裝軟件
-vh:顯示安裝進度;
-u:升級軟件包;
-e:刪除軟件包
-q:後面跟包名查詢是否安裝
-qa:查詢已安裝的所有軟件包
-qpl:列出RPM軟件包內的文件信息;
-qpi:列出RPM軟件包的描述信息;
-qf:查找指定文件屬於哪個RPM軟件包;
-Va:校驗所有的RPM軟件包,查找丟失的文件;

deb包
deb包的安裝使用dpkg使令,下面是一些參數

-l:在系統中查詢軟件內容信息

  -info:在系統中查詢軟件或查詢指定rpm包的內容信息

  -i:在系統中安裝/升級軟件

  -r:在系統中卸載軟件,不刪除配置文件

  -P:在系統中卸載軟件以及其配置文件

源碼包

源碼包一般都是tar的壓縮包,現在最常見的有.tar.gz和.tar.bz2兩種壓縮方式,而且還要把編譯環境設置好
對於下載後的安裝包首先要解壓
解壓.tar.gz的命令是 tar -zxvf 包名
解壓.tar.bz2的命令是 tar -jxvf 包名
解壓後使用./configure --prefix配置安裝路徑
然後用make編譯
編譯完成後用make install安裝


包管理工具的使用
Yum
Yum安裝必須要有一個軟件包池,這個可以是本地的,也可以是http、ftp上的。不管是什麼必須要有一個rpm的頭部文件,這個裏面包括了rpm包的各種信息。
這裏我們來配置一個本地的Ftp作爲Yum的軟件包池

1、我們先開始安裝vsftpd軟件
2、把光盤中的所有文件都複製到ftp的公共目錄/var/ftp/pub中(也可以是其他)
3、刪除/var/ftp/pub下所有的*.html文件和Servar/repodata/TRANS.TBL及VT/repodata/TRANS.TBL文件
4、安裝createrepo工具
5、用createrepo生成yum通用數據庫
createrepo -g /var/ftp/pub/Server/repodata/comps-rhel5-server-core.xml /var/ftp/pub/Server
createrepo -g /var/ftp/pub/VT/repodata/comps-rhel5-vt.xml /var/ftp/pub/VT
6、重啓FTP服務
7、修改yum配置文件
Yum的配置文件是/etc/yum.repos.d/rhel-debuginfo.repo
配置文件中:
[  ]  是池的名子
name   池的描述或名子
baseurl   池的位置
enable      是否啓用倉庫 1爲啓用 0不啓用
gpgcheck 是否檢查gpg簽名(驗證安裝包是不是Red Hat官方)
GPGKey  GPG簽名位置(需用rpm -import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release導入簽名才能用)
這裏我們可以視情況而修改

到這裏我們的yum配置就完成了

使用
yum install package        安裝指定軟件包
yum update             更新全部軟件包 
yum update package          更新指定軟件包
yum check-update         檢查可更新程序
yum info package          顯示安裝包信息
yum list              顯示所有已安裝軟件包
yum list package        顯示指定安裝包安裝情況
yum search keyword     查找軟件包
yum remov |erase package 刪除軟件包
yum會把下載的軟件包和header存儲在cache中,而不自動刪除,可用yum clean命令刪除
yum clean header刪除header yum clean package刪除下載的軟件包 yum clean all清除header與rpm包

yum還可以在配置文件中直接配置外網的池地址來直接下載安裝,目前國內的163支持,但要找到和你使用系統版本的池


對於APT一般Debian和Ubuntu會用到,我用的Ubuntu就是直接自帶的這個,不過這個我沒有配置過,所以這個就不寫配置的步驟了就直接寫如何使用吧。

使用APT很簡單,
apt-get update   更新軟件包信息庫。通過這個數據庫中可跟蹤你係統中已安裝、沒有安裝和現在可安裝的軟件包信息。 apt-get安裝軟件包時就是依靠這個數據庫來解決軟件包間的依賴關係,從而可自動安裝相關軟件。我們需定期運行該命令,從而保持數據庫的信息爲最新。
apt-get install packag       安裝軟件包。
apt-get --reinstall install package    重新安裝軟件包
apt-get -d install package          只是下載軟件,不解包和安裝
apt-get install package --dry-run         使apt-get在安裝軟件包前進行測試
apt-get remove package                  刪除軟件包
apt-get --purge remove package          刪除軟件包及配置文件
apt-get source package                     下載軟件包的的源碼版本
apt-get upgrade package                    軟件包升級
apt-get dist-upgrade                           更新整個系統。
apt-get clean                                     刪除下載了的軟件包
apt-get autoclean                               刪除已下載的舊版本的軟件包
apt-get check                                     檢查系統中已安裝軟件包的依賴性。

CentOS、Debian、ubuntu等的一些軟件池可以在網上搜索一下,會有一些國內的,軟件池的,用國內的相應的會下載的快一些。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章