• <tfoot id="ukgsw"><input id="ukgsw"></input></tfoot>
    
    • 久久精品精选,精品九九视频,www久久只有这里有精品,亚洲熟女乱色综合一区
      分享

      yum源的配置

       soulhiking 2010-09-30

      創建本地倉庫 createrepo
      #createrepo /shared/local

      yum常用命令
      yum –disable "*" –enable "rpmforge" list available
      yum install ooobasis3.1-zh-CN* –disablerepo \* –enablerepo c5-media –nogpgcheck

      [CentOS]Create Local Repos

      yum只下載rpm包而不自動安裝
      # yum install yum-downloadonly
      兩個命令參數,分別是:
          * –downloadonly
          * –downloaddir=/path/to/dir

      添加兩個倉庫
      RPM Fusion

      redhat-club repo (包含一些影音工具)
      rpm -ihv http://repo./redhat/5/i386/redhatclub-repository-release-5-3.el5.rhc.noarch.rpm

      使用 yum 工具更新系統
      yum 簡介
      為什么使用 yum
      Linux系統維護中令管理員很頭疼的就是軟件包之間的依賴性了,往往是你要安裝A軟件,但是編譯的時候告訴你X軟件安裝之前需要B軟件,而當你安裝Y軟 件的時候,又告訴你需要Z庫了,好不容易安裝好Z庫,發現版本還有問題等。由于歷史原因,RPM軟件包管理系統對軟件之間的依存關系沒有內部定義,造成安 裝RPM軟件時經常出現令人無法理解的軟件依賴問題。其實開源社區早就對這個問題嘗試進行解決了,不同的發行版推出了各自的工具,比如Yellow Dog的YUM(Yellow dog Updater, Modified),Debian的APT(Advanced Packaging Tool)等。開發這些工具的目的都是為了要解決安裝RPM時的依賴性問題,而不是額外再建立一套安裝模式。這些軟件也被開源軟件愛好者們逐漸移植到別的 發行版上。目前,APT和YUM都可以運行在Red Hat系統上。目前 yum 是Red Hat/Fedora系統上默認安裝的更新系統。

      什么是 yum
      yum(http://linux./projects/yum/),是 Yellow dog Updater, Modified 的簡稱,起初是由yellow dog 發行版的開發者 Terra Soft 研發,用 python 寫成,那時叫做 yup (yellow dog updater),后經杜克大學的 Linux@Duke 開發團隊進行改進,遂有此名。yum 的宗旨是自動化地升級,安裝/移除rpm包,收集rpm包的相關信息,檢查依賴性并自動提示用戶解決。yum 的關鍵之處是要有可靠的 repository,顧名思義,這是軟件的倉庫,它可以是 http 或 ftp 站點,也可以是本地軟件池,但必須包含 rpm 的 header,header 包括了rpm 包的各種信息,包括描述,功能,提供的文件,依賴性等.正是收集了這些 header并加以分析,才能自動化地完成余下的任務。

      yum 具有如下特點:

      自動解決包的倚賴性問題能更方便的添加/刪除/更新RPM包
      便于管理大量系統的更新問題
      可以同時配置多個資源庫(Repository)
      簡潔的配置文件(/etc/yum.conf)
      保持與RPM數據庫的一致性
      有一個比較詳細的log,可以查看何時升級安裝了什么軟件包等
      使用方便
      yum是CentOS/Fedora系統自帶的,因此它能使用CentOS官方的軟件源,完成各種官方發布的各種升級。對于第三方軟件源的支持,yum也 不差,大多數支持 apt 的 repository,也能支持 yum,比如說 freshrpms、fedora.us、livna、dag 等。
      CentOS 的鏡像和倉庫
      CentOS 的鏡像站點
      完整的 CentOS 軟件庫非常大。CentOS 的軟件包位于 CentOS 的鏡像站點 的目錄樹中,可通過 FTP 或 HTTP 訪問它們。

      http://mirror-status./可以看到各鏡像的狀態。
      http://www./modules/tinycontent/index.php?id=22可以看到如何進行鏡像的知識。
      鏡像站點的第一級目錄是發行版本號,如 3、4、5 等。下列目錄存在于任何 CentOS 鏡像站點的版本號為5的目錄下:

      addons/ : 本目錄包含 CentOS 的 addons 倉庫
      centosplus/ : 本目錄包含 CentOS 的 centosplus 倉庫
      extras/ : 本目錄包含 CentOS 的 extras 倉庫
      fasttrack/ : 本目錄包含 CentOS 的 fasttrack 倉庫
      isos-dvd/ : 本目錄包含發行版的 DVD iso 下載文件
      isos/ : 本目錄包含發行版的 CD isos 下載文件
      os/ : 本目錄包含發行版(distributions)的倉庫
      updates/ : 本目錄包含 CentOS 的 updates 倉庫
      CentOS 的倉庫
      倉庫(repository)是一個預備好的目錄,或是一個網站,包含了軟件包和索引文件。 yum 可以在倉庫中自動地定位并獲取正確的 RPM 軟件包。這樣,您就不必手動搜索和安裝新應用程序和升級補丁了。只用一個命令,您就可以更新系統中所有軟件,也可以根據指定搜索目標來查找安裝新軟件。

      鏡像服務器為每個版本的 CentOS 分別提供了一些倉庫。CentOS 5 中的軟件管理工具 yum 已經預先配置為使用下列四個倉庫:

      base : 構成 CentOS 發行版(distributions)的軟件包,和光盤上內容相同
      updates : base 倉庫中軟件包的更新版本
      addons : 已編譯的但不在發行版(distributions)中的軟件包
      extras : 一大批附加的軟件包
      還可以使用下面的倉庫,但在 CentOS 5 默認情況下未被啟用
      centosplus/ : 用于增強一些現有軟件包的功能
      CentOS 倉庫的目錄結構
      下面以 CentOS 5 的 updates 倉庫為例說明其在鏡像站點上的目錄結構(其他倉庫結構類似):

      updates/
      |– SRPMS                            # 源代碼目錄
      |   |– *.src.rpm                    # 源代碼包文件
      |   `– repodata/                    # 源代碼的索引文件
      |– i386                             # Intel 32位平臺目錄
      |   |– RPMS                         # Intel 32位平臺的RPMS目錄
      |   |   |– *.i386.rpm               # 在Intel 32位平臺上編譯的包文件
      |   |   `– *.centos.noarch.rpm      # 與平臺無關的已編譯的包文件
      |   `– repodata/                    # Intel 32位平臺的索引文件
      `– x86_64                           # 64位平臺目錄
          |– RPMS                         # 64位平臺的RPMS目錄
          |   |– *.x86_64.rpm             # 在64位平臺上編譯的包文件
          |   `– *.centos.noarch.rpm      # 與平臺無關的已編譯的包文件
          `– repodata/                    # 64位平臺的索引文件配置 yum 客戶的更新源
      yum 使用 reposdir (/etc/yum.repos.d) 目錄下的一系列 .repo 文件列出可獲得軟件包倉庫的鏡像站點地址。默認情況下有如下兩個文件:

      CentOS-Base.repo :用于設置遠程倉庫
      CentOS-Media.repo :用于設置本地倉庫
      在 .repo 文件中,配置語法是分段的,每一段配置一個軟件倉庫,配置語法如下:

      [repositoryid]
      name=Some name for this repository
      baseurl=url://server1/path/to/repository/
              url://server2/path/to/repository/
              url://server3/path/to/repository/
      mirrorlist=url://path/to/mirrorlist/repository/
      enabled=0/1
      gpgcheck=0/1
      gpgkey=A URL pointing to the ASCII-armoured GPG key file for the repository其中:

      repositoryid : 用于指定一個倉庫
      name : 用于指定易讀的倉庫名稱
      baseurl : 用于指定本倉庫的 URL,可以是如下的幾種類型:
      http — 用于指定遠程 HTTP 協議的源
      ftp — 用于指定遠程 FTP 協議的源
      file — 用于本地鏡像或 NFS 掛裝文件系統
      mirrorlist : 用于指定倉庫的鏡像站點
      enabled : 用于指定是否使用本倉庫,默認值為1,即可用
      gpgcheck : 用于指定是否檢查軟件包的 GPG 簽名
      gpgkey : 用于指定 GPG 簽名文件的 URL
      在 name baseurl 中經常使用如下的變量:

      $releasever — 當前系統的版本號
      $basearch — 當前系統的平臺架構

      文件中以“#”開頭的行是注釋行
      若指定 mirrorlist,系統將從 CentOS 的鏡像站點中選擇離您最近的倉庫
      并非所有的國內鏡像都在 CentOS 的鏡像站點列表中,所以我們可以直接使用 baseurl 直接指定離您最近的倉庫
      baseurl 可以指定多個 URL,系統會依次檢查您列出的倉庫,以便在某個服務器宕機時可以使用另外的服務器
      為了加快更新,在確保更新服務器及線路良好的情況下,在 baseurl 中只指定一個 URL 既可
      設置網絡更新源
      下面是一個 CentOS-Base.repo 文件的實例,在此文件中沒有設置 mirrorlist ,使用 baseurl 只指定了一個 URL。
      [base] name=CentOS-$releasever – Base
      baseurl=http://centos./$releasever/os/$basearch/
      gpgcheck=1
      gpgkey=http://mirror./centos/RPM-GPG-KEY-CentOS-5
      [updates]
      name=CentOS-$releasever – Updates
      baseurl=http://centos./$releasever/updates/$basearch/
      gpgcheck=1
      gpgkey=http://mirror./centos/RPM-GPG-KEY-CentOS-5
      [addons]
      name=CentOS-$releasever – Addons
      baseurl=http://centos./$releasever/addons/$basearch/
      gpgcheck=1
      gpgkey=http://mirror./centos/RPM-GPG-KEY-CentOS-5
      [extras]
      name=CentOS-$releasever – Extras
      baseurl=http://centos./$releasever/extras/$basearch/
      gpgcheck=1
      gpgkey=http://mirror./centos/RPM-GPG-KEY-CentOS-5
      [centosplus]
      name=CentOS-$releasever – Plus
      baseurl=http://centos./$releasever/centosplus/$basearch/
      gpgcheck=1
      enabled=0
      gpgkey=http://mirror./centos/RPM-GPG-KEY-CentOS-5

      設置本地更新源
      為了使用安裝光盤作為更新源,可以修改 CentOS-Media.repo 文件,下面是一個配置實例。

      [c5-media]
      name=CentOS-$releasever – Media
      baseurl=file:///media/CentOS/
              file:///media/cdrom/
              file:///media/cdrecorder/
      gpgcheck=1
      enabled=1
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-beta

      為了使用 c5-media 倉庫,需將 CentOS-Base.repo 文件中的 base 倉庫使用 enabled=0 設置成不可用。
      若本地磁盤空間有足夠空間,您也可以將安裝光盤復制到本地磁盤的一個目錄中
      設置非官方更新源
      設置使用 DAG 第三方倉庫
      下面以安裝 rpmforge 軟件包為例添加非官方更新源。

      http://dag./rpm/packages/rpmforge-release/查找適用于 RHEL5/CentOS5 的軟件包
      下載適用于 RHEL5/CentOS5 的軟件包
      # wget http://dag./rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
      # rpm -ivh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
      # rpm –import /etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-*安裝了 rpmforge-release 軟件包之后可以看到 /etc/yum.repos.d/rpmforge.repo 文件。以后使用 yum 就可以使用這個更新源了。

      您也可以使用如下的手工方法添加 DAG 的倉庫。
      建立 dag.repo,定義非官方庫:

      # vi /etc/yum.repos.d/dag.repo[dag]
      name=Dag RPM Repository for Red Hat Enterprise Linux
      baseurl=http://apt./redhat/el$releasever/en/$basearch/dag
      gpgcheck=1
      enabled=1
      gpgkey=http://dag./packages/RPM-GPG-KEY.dag.txt/etc/yum.repos.d/dag.repo

      設置使用 ATrpms 第三方倉庫
      # rpm –import http://ATrpms.net/RPM-GPG-KEY.atrpms

      # cd /etc/yum.repos.d/
      # vi ATrpms.repo

      [atrpms]
      name=CentOS-$releasever – $basearch – ATrpms
      baseurl=http://dl./el$releasever-$basearch/atrpms/stable
      gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms
      gpgcheck=1/etc/yum.repos.d/ATrpms.repo

      設置使用 EPEL 第三方倉庫
      Fedora project 提供了 Extra Packages for Enterprise Linux (EPEL) 。

      # rpm -Uvh http://download.fedora./pub/epel/5/i386/epel-release-5-3.noarch.rpm安 裝了 epel-release 軟件包之后可以看到 /etc/yum.repos.d/ 目錄下的 epel.repo 和 epel-testing.repo 文件。以后使用 yum 就可以使用這個更新源了。

      使用 yum 命令工具
      yum 命令工具簡介
      yum 完整語法參見其命令手冊,下面只列出較常見的用法。

      命令  功能 
      yum check-update  檢查可更新的所有軟件包 
      yum update  下載更新系統已安裝的所有軟件包 
      yum upgrade  大規模的版本升級,與yum update不同的是,連舊的淘汰的包也升級 
      yum install <packages>  安裝新軟件包 
      yum update <packages>  更新指定的軟件包 
      yum remove <packages>  卸載指定的軟件包 
      yum groupinstall <groupnames>  安裝指定軟件組中的軟件包 
      yum groupupdate <groupnames>  更新指定軟件組中的軟件包 
      yum groupremove <groupnames>  卸載指定軟件組中的軟件包 
      yum grouplist  查看系統中已經安裝的和可用的軟件組 
      yum list  列出資源庫中所有可以安裝或更新以及已經安裝的rpm包 
      yum list <regex>  列出資源庫中與正則表達式匹配的可以安裝或更新以及已經安裝的rpm包 
      yum list available  列出資源庫中所有可以安裝的rpm包 
      yum list available <regex>  列出資源庫中與正則表達式匹配的所有可以安裝的rpm包 
      yum list updates  列出資源庫中所有可以更新的rpm包 
      yum list updates <regex>  列出資源庫中與正則表達式匹配的所有可以更新的rpm包 
      yum list installed  列出資源庫中所有已經安裝的rpm包 
      yum list installed <regex>  列出資源庫中與正則表達式匹配的所有已經安裝的rpm包 
      yum list extras  列出已經安裝的但是不包含在資源庫中的rpm包 
      yum list extras <regex>  列出與正則表達式匹配的已經安裝的但是不包含在資源庫中的rpm包 
      yum list recent  列出最近被添加到資源庫中的軟件包 
      yum search <regex>  檢測所有可用的軟件的名稱、描述、概述和已列出的維護者,查找與正則表達式匹配的值 
      yum provides <regex>  檢測軟件包中包含的文件以及軟件提供的功能,查找與正則表達式匹配的值 
      yum clean headers  清除緩存中的rpm頭文件 
      yum clean packages  清除緩存中rpm包文件 
      yum clean all  清除緩存中的rpm頭文件和包文件 
      yum deplist <packages>  顯示軟件包的依賴信息 

      當第一次使用yum或yum資源庫有更新時,yum會自動下載所有所需的headers放置于 /var/cache/yum 目錄下,所需時間可能較長。
      還可以使用 yum info 命令列出包信息,yum info 可用的參數與 yum list 的相同。
      yum 命令還可以使用 -y 參數用于用 yes 回答命令運行時所提出的問題。
      yum 命令工具使用舉例
      1、升級系統
      # yum update

      2、安裝指定的軟件包
      # yum install w3m lync

      3、升級指定的軟件包
      # yum update w3m lync

      4、卸載指定的軟件包
      # yum remore w3m lync

      5、查看系統中已經安裝的和可用的軟件組
      # yum grouplist

      6、安裝指定軟件組中的軟件包
      # yum groupinstall "Virtualization"

      7、更新指定軟件組中的軟件包
      # yum groupupdate "Virtualization"

      8、卸載指定軟件組中的軟件包
      # yum groupremore "Virtualization"

      9、清除緩存中的rpm頭文件和包文件
      # yum clean all

      10、搜索相關的軟件包
      # yum search python

      11、顯示指定軟件包的信息
      # yum info python

      12、查詢指定軟件包的依賴信息
      # yum deplist python

      13、列出所有以 yum 開頭的軟件包
      # yum list yum\*

      14、列出已經安裝的但是不包含在資源庫中的rpm包
      # yum list extras

      如果您安裝了并非來自倉庫的軟件,當它有新版時,yum update 無法自動更新它。為保證您總是用著最新的軟件,可以訂閱一份電子郵件或 RSS 服務,這樣當有新版時可以得到通知。
      加速 yum 的下載
      使用全局代理
      要設置所有 yum 操作都使用代理服務器,可以在 /etc/yum.conf 中設置代理服務器的信息。例如:

      # 代理服務器:端口號
      proxy=http://mycache.:3128
      # 設置用于yum 連接的帳戶細節
      proxy_username=yum-user
      proxy_password=password為單個用戶配置代理服務器
      要為一個特定的用戶啟用代理訪問,只要將實例框中的文本行加入這個用戶的 shell 配置中。對于默認的 bash shell,配置是在 ~/.bash_profile 中。例如:

      # 當前用戶使用的匿名代理服務器
      http_proxy="http://mycache.:3128"
      export http_proxy


      # 當前用戶使用的代理服務器
      http_proxy="http://yum-user:password@mycache.:3128"
      export http_proxy使用 yum 的擴展插件 yum-fastestmirror
      當倉庫配置文件(*.repo)使用 mirrorlist 或在 baseurl 中指定多個URL 時,yum-fastestmirror 可以自動選擇最快的鏡像站點。要想使用 yum-fastestmirror 加快下載速度,使用如下命令安裝即可。

      # yum -y install yum-fastestmirroryum-fastestmirror 的配置文件是 /etc/yum/pluginconf.d/fastestmirror.conf,一般無需修改。

      系統自動更新
      yum-updatesd
      CentOS 系統默認安裝了 yum-updatesd 軟件包。

      $ rpm -ql yum-updatesd
      /etc/dbus-1/system.d/yum-updatesd.conf
      /etc/rc.d/init.d/yum-updatesd
      /etc/yum/yum-updatesd.conf
      /usr/sbin/yum-updatesd
      /usr/share/man/man5/yum-updatesd.conf.5.gz
      /usr/share/man/man8/yum-updatesd.8.gz由此可見,系統在啟動過程中運行了 yum-updatesd 守護進程。這個守護進程讀取 /etc/yum/yum-updatesd.conf 配置文件。

      [main]

      # 設置檢查更新的時間間隔 (單位為秒)
      run_interval = 3600
      # 為了避免過于頻繁的訪問更新服務器設置檢查更新的最小時間間隔 (單位為秒)
      updaterefresh = 600
      # 設置如何發送更新通知(有效值: dbus, email, syslog)
      emit_via = dbus
      # should we listen via dbus to give out update information/check for
      # new updates
      dbus_listener = yes
      # 配置是否自動安裝更新
      do_update = no
      # 配置是否自動下載更新
      do_download = no
      # 配置是否自動下載有依賴關系的更新
      do_download_deps = noyum-cron
      還可以使用 yum-cron 自動安排 cron 任務。要使用 yum-cron 需要使用如下命令安裝:
      # yum -y install yum-cron

      使用如下命令可知 yum-cron 包安裝的文件:
      $ rpm -ql yum-cron
      /etc/cron.daily/yum.cron # 每日更新腳本
      /etc/cron.weekly/yum.cron # 每周更新腳本
      /etc/rc.d/init.d/yum # 啟動腳本
      /etc/yum/yum-daily.yum
      /usr/share/doc/yum-cron-0.1
      /usr/share/doc/yum-cron-0.1/COPYING
      /usr/share/doc/yum-cron-0.1/README

      要激活自動更新,輸入如下命令:# chkconfig –level 345 yum on
      # service yum start

      ------------------------------------------
      List all installed packages, enter:
      # rpm -qa
      # yum list installed
      Find out if httpd package installed or not, enter:
      # rpm -qa | grep httpd*
      # yum list installed httpd
      Check for and update specified packages
      # yum update {package-name-1}
      Search httpd and all matching perl packages, enter:
      # yum list {package-name}
      # yum list {regex}
      # yum list httpd
      # yum list perl*
      # yum grouplist
      Install all 'Development Tools' group packages, enter:
      # yum groupinstall "Development Tools"
      Update all 'Development Tools' group packages, enter:
      # yum groupupdate "Development Tools"
      Remove all 'Development Tools' group packages, enter:
      # yum groupremove "Development Tools"
      If you are using 64 bit RHEL version it is possible to install 32 packages:
      # yum install {package-name}.{architecture}
      # yum install mysql.i386
      Display what package provides the file
      # yum whatprovides /etc/passwd
      You can use same command to list packages that satisfy dependencies:
      # yum whatprovides {dependency-1} {dependency-2}

      yum-complete-transaction
      a program which finds incomplete or aborted yum transactions on a system and attempts to complete them. It looks at the transaction-all*
      and transaction-done* files which can normally be found in /var/lib/yum if a yum transaction aborted in the middle of execution.
      If it finds more than one unfinished transaction it will attempt to complete the most recent one first. You can run it more than once to clean up all unfinished transactions.

        本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發現有害或侵權內容,請點擊一鍵舉報。
        轉藏 分享 獻花(0

        0條評論

        發表

        請遵守用戶 評論公約

        類似文章 更多

        主站蜘蛛池模板: 无码人妻一区二区三区四区AV| 强行无套内大学生初次| 成人无码潮喷在线观看| 52熟女露脸国语对白视频| 国产日产久久高清欧美一区| 偷拍专区一区二区三区| 欧美人与动人物牲交免费观看| 少妇被黑人到高潮喷出白浆| 9色国产深夜内射| 五月天婷婷激情无码专区| 久青草国产在视频在线观看| 亚洲中文字幕精品久久久久久动漫| 欧美成人精品三级在线观看| 国产亚洲欧美在线观看三区| 桃子视频在线播放WWW| 国产又黄又湿又刺激网站| 少妇xxxxx性开放| 免费播放一区二区三区| 综合偷自拍亚洲乱中文字幕| 国产一区二区三区日韩精品| 国产凹凸在线一区二区| 无码天堂亚洲国产AV| 午夜射精日本三级| 色橹橹欧美在线观看视频高清| 久久精品国产再热青青青| 精品人无码一区二区三区| 免费A级毛片免费观看视频| 国产精品第一二三区久久蜜芽| 高大丰满熟妇丰满的大白屁股 | 深夜国产成人福利在线观看| 国产精品视频亚洲二区| 人人妻人人做人人爽| 动漫AV纯肉无码AV电影网| 欧美丰满熟妇BBB久久久| 久久97人人超人人超碰超国产| gogogo高清在线观看视频中文| 五月丁香综合缴情六月小说| 国产亚洲精品VA片在线播放| 亚洲中文字幕无线无码毛片| 四虎成人免费视频在线播放| 国产片AV国语在线观看手机版 |