Дистрибутив ASPLinux: Создание YUM-репозитария

Аватар пользователя rjaan

Дистрибутив ASPLinux: Создание YUM-репозитария

Версия 0.0.1


Автор: Ржавсков Андрей <rjaan@rambler.ru>
Оглавление

Авторские права и товарные знаки

Авторские права

Введение

Репозитарии RPM-пакетов

Чем создавать репозитарий

Создание репозитария BASE

Red Hat Package Manager

Создание дерева репозитария BASE

Создание дерева репозитария UPDATES

Файл yum.conf

Библиография


Авторские права и товарные
знаки

Товарные знаки

GNU/Linux является зарегистрированной торговой маркой Линуса Торвальдса.
UNIX является зарегистрированной торговой маркой фирмы The Open Group.
ASPLinux является зарегистрированной торговой маркой фирмы SWsoft Pte. Ltd
Red Hat является зарегистрированной торговой маркой Red Hat, Inc.
Windows и MS-DOS являются зарегистрированными торговыми марками Microsoft Corp.
YUM основные права Duke University, 2003 год . Совладельцы указаны в файле AUTHORS в корневой директории проекта с исходным кодом.
За лицензиями на упомянутые в статье продукты и товарные марки обращаться к авторам или их владельцам и совладельцам.


Авторские права

Авторские права принадлежат Ржавскову Андрею Юрьевичу © 2005-2006.

Этот документ может распространяться и изменяться в соответствии с требованиями
GNU General Public License (Общественной публичной лицензий), редакций 1,2.
Копия GPL доступна по адресу http://www.gnu.org/licenses/gpl.html
. На публикацию и изменение структуры документа, в печатных изданиях средств
массовой информации, требуется согласие автора. Кроме, Клуба
Любителей ASPLinux
. При публикации на страницах электронных средств массовой
информации, указывается постоянный адрес статьи на сайте Клуба
Любителей ASPLinux
.


Введение

YUM является сокращением от Yellow dog Updater, Modified
(если дословно желтая собака корректор, модификатор).

Этот проект являются частью Linux
@ DUCK Resource site
, который основан совместными усилиями администраторами
Кампуса университета ДЮК(Duke
University campus)
.

YUM был создан для удобства работы с rpm-пакетами для установки, удаления и
обновления программного обеспечения.

Он позволяет:

  • автоматически рассчитывать зависимости и вычислять, что должно произойти при
    установке или инсталляции rpm-пакетов, т.е. выполнять постфиксные и префиксные
    операции, устанавливать другие rpm-пакеты для удовлетворения зависимостей
  • производить автоматическое обновление группы машин, а не каждую в отдельности,
    используя утилиту rpm, т.е. производить операции update, install,
    remove с файл-сервера групп rpm-пакетов на клиентских станциях локальной
    сети
  • поддерживает больше репозитариев, т.е. не ограничен количеством и размером
    rpm-пакетов
  • имеет единственный конфигурационный файл, для удобства реализовано подключение
    модульных конфигурационных файлов репозитариев, полное имя которого /etc/yum.conf
  • производит корректное вычисление зависимостей, реализована оптимизация
    деинсталятора
  • отвечает требованиям поведения rpm-пакетов и имеет обратную совместимость
  • входит в стандартную поставку дистрибутивов ASPLinux 9.2 и ASPLinux 10, далее
    по тексту v.9.2 и v.10 соответственно, и рекомендуется разработчиками дистрибутива
    для использования по установки, обновлению и удалению программного обеспечения
    дистрибутивов ASPLinux.
  • В этой статье сделан основной акцент на создание и настройки локальных репозитариев
    дистрибутива ASPlinux, которые у многих пользователей вызывают многочисленные
    вопросы.

    Что можно сказать по работе с удаленными репозитариями, которые находятся на
    зеркалах ASPlinux, то эти вопросы у пользователей не должны возникать, потому
    что YUM для работы с этими репозитариями уже настроен по умолчанию.
    При возникновении вопросов по тому или иному применению YUM, которое не было
    раскрыто в этой статье, автор советует обращаться за помощью к службе технической
    поддержки Компании ASPlinux
    или спрашивать на Форуме
    сообщества ASPlinux
    и в первую очередь конечно же у членов Клуба
    Любителей ASPlinux
    .
    Помните, автор этой статьи не несет ответственности
    за ваши действия, которые повлекли потерю данных или выхода из строя оборудования
    вашего ПК.

    Все ниже следующие операции представлены как есть и не могут быть интерпретированы
    иначе.


    Репозитарии RPM-пакетов
    Репозитарием является набор файлов, состоящий из rpm-пакетов,
    объединенных в один или нескольких директорий.

    Несколько репозитариев образуют так называемый repotrack. Его идея состоит
    в том что все репозитарии объединяются в один многоуровневый репозитарий.
    В этой статье будет создано два репозитария BASE и UPDATES,
    но у Вас может быть еще например PROPRIETORY, где будут хранится RPM-пакеты
    проприетарного программного обеспечения.
    Где размещать свой репозитарий? Его можно хранить везде, ограничения
    могут быть только в дисковом пространстве. Единственно, что можно посоветовать,
    скрыть свой репозитарий от вездесущих пользователей в директории суперпользователя,
    именуемого далее ROOT.


    Чем создавать репозитарий

    Для работы и обслуживания вашего локального репозитария вам потребуются следующие
    утилиты: yum, yum-arch или createrepo.

    Для создания репозитария в ASPlinux v.9.2 нам будет необходимо убедится, что
    у нас установлен yum-arch, а в ASPlinux v.10 утилита createrepo.

    Обе утилиты создают базу данных репозитария - одна в виде подкаталога с заголовочными
    файлами для каждого пакета, а другая - каталог метаданных, состоящий из нескольких
    файлов в XML-формате.
    Утилита yum-arch, полное имя /usr/bin/yum-arch, входит в состав
    RPM-пакета yum-2.1.11-3asp.noarch.rpm для v.10 и yum-2.1.0cvs-5.1asp.noarch.rpm
    для v.9.2.

    Утилита createrepo входит в состав RPM-пакета createrepo-0.4.1-1.noarch.rpm
    . Этот пакет не устанавливается во время инсталляции дистрибутива, поэтому его
    необходимо доставить руками.

    Код:

    # rpm -Uvh createrepo-0.4.1-1.noarch.rpm

    Подготовка... ########################################### [100%]

    1:createrepo ########################################### [100%]

    #

    Соответственно, в случае если сам YUM не был установлен
    во время инсталляции дистрибутива, то его необходимо будет установить.

    Код:

    # rpm -Uvh yum-2.1.11-3asp.noarch.rpm

    Подготовка... ########################################### [100%]

    1:yum-2.1.11-3asp ########################################### [100%]

    #

    Если у Вас дистрибутив v.9.2, то устанавливать пакет createrepo необязательно.

    После всех необходимых установок можно приступить к созданию репозитария.


    Создание репозитария BASE
    Первым должен быть создан репозитарий BASE с пакетами дистрибутива,
    которой вы установили на свой персональный компьютер. Зачем он нужен? В будущем
    может оказаться, что Вам необходимо доустановить один или несколько пакетов.
    В т оже время, позволит разрешать зависимости при обновлении системы в будущем
    из репозитария UPDATES, взятого с одного из зеркал ASPlinux или созданного
    с помощью CD-R диска обновлений к Дистрибутиву.
    Как упоминалось выше, создаем директорию repos в root-директории.
    Полный путь директории репозитария будет /root/repos, далее по тексту
    корневая директория репозитария (или сокр. корень репозитария).
    Внутри корня репозитария создаем директорию base (полный путь /root/repos/base).

    Код:

    # mkdir ~/repos

    В будущем полный путь к этой директории будет корнем репозитария
    BASE, а сейчас рассмотрим кратко, что такое rpm-пакет.


    Red Hat Package Manager

    Аббревиатура RPM расшифровывается как Red Hat Package
    Manager – пакетный менеджер компании Red Hat. Он позволяет производить
    установку, удаление программного обеспечения входящего в состав дистрибутива
    и отдельные пакеты не вошедшие по тем или иным причинам в него.

    Кроме бинарных сборок, RPM позволяет производить установку пользовательских
    или системных приложений в исходном коде вместе с его сборкой в бинарный вид.
    Распространяется под лицензией GNU GPL.

    RPM-пакет представляет собой несжатый файл cpio-архива в формате SVR4
    c CRC контрольной суммой. Для имен файлов RPM-пакетов существует следующее соглашение:

    name-version-release.architecture[i].rpm

    где

  • [i]name является кратким названием программного обеспечения.
  • version является версией программного обеспечения.(Обычно пропускается)
  • release является законченной версией программного обеспечения rpm-пакета.
  • architecture является кратким обозначением типа архитектуры вашего
    компьютера. Для бинарных сборок обычно указывается семейство процессора для
    которого они были оптимизированы.
  • В случае архитектурно-независимых rpm-пакетов, таких как наборы скриптов, тестовых
    файлов и т.п., указывается noarch.

    Для rpm-пакетов исходных кодов указывается src

    В этой статье в репозитарии будут использоваться бинарные rpm-пакеты только
    для IBM PC x86-совместимых машин с оптимизацией семейств процессоров
    i386/i586/i686/Athlon. Соответственно i386, i586 и i686 сокращения к
    процессорам Компании Intel, а Athlon к процессором компании AMD.
    Конечным форматом для бинарных пакетов дистрибутива ASPlinux и его обновлений
    будет иметь вид:

    name-<release>asp.architecture.rpm

    где, как видно из формата записи, к законченной версии добавляется суффикс
    asp, что означает пакет был собран командой разработчиков ASPlinux.


    Создание дерева репозитария
    BASE

    После небольшого отступления возвращаемся к созданию репозитария BASE.

    В принципе, все пакеты с установочных CD-R дисков можно свалить в одну кучу,
    как это сделано на зеркалах ASPlinux к дистрибутивам v.9.2, ftp://ftp.asplinux.ru/pub/i386/RPMS.9.2
    и v.10

    ftp://ftp.asplinux.ru/pub/i386/RPMS.10

    что сокращает количество операций для создания репозитария, но в будущем
    может иметь некоторые неудобства для работы с ним.

    Для YUM не является препятствием расположение rpm-пакетов по директориям внутри
    репозитария, поэтому создаем директории по принятым именам архитектуры rpm-пакетов:
    Athlon, i386, i586,i686, в том числе SRMPS для src и noarch
    для наборов скриптов, документации и приложений в машинно-независимых кодах.

    Код:

    # mkdir ~/repos/base/athlon

    # mkdir ~/repos/base/i386

    # mkdir ~/repos/base/i586

    # mkdir ~/repos/base/i686

    # mkdir ~/repos/base/SRMPS

    # mkdir ~/repos/base/noarch

    Далее производим монтирование установочных CD-R дисков с 1-го по 4-й и раскладываем
    пакеты с них по директориям внутри репозитария.
    Пример
    Сортировка rpm-пакетов 1-го установочного диска ASPlinux v.10:

    Код:

    #mount /media/cdrecorder

    . . .

    #cp -v /media/cdrecorder/ASPLinux/RPMS/*asp.i386.rpm ~/repos/base/i386

    . . .

    #cp -v /media/cdrecorder/ASPLinux/RPMS/*asp.i586.rpm ~/repos/base/i586

    . . .

    #cp -v /media/cdrecorder/ASPLinux/RPMS/*asp.i686.rpm ~/repos/base/i686

    . . .

    #cp -v /media/cdrecorder/ASPLinux/RPMS/*asp.athlon.rpm ~/repos/base/athlon

    . . .

    #cp -v /media/cdrecorder/ASPLinux/RPMS/*asp.noarch.rpm ~/repos/base/noarch

    . . .

    #eject

    Для заполнения директории ~/repos/base/SRMPS вам необходимо иметь
    5, 6, 7 диски с исходным кодом или скачать из соответствующего репозитария
    на зеркалах ASPlinux.
    Для ASPlinux v.9.2 src-пакеты можно взять отсюда:

    ftp://ftp.asplinux.ru/pub/sources/SRPMS.9.2/SRPMS

    А для v.10 отсюда

    ftp://ftp.asplinux.ru/pub/sources/SRPMS.10

    Пример
    Сортировка srpm-пакетов c 5-го установочного диска ASPlinux v.10

    Код:

    #mount /media/cdrecorder

    . . .

    #cp /media/cdrecorder/ASPLinux/SRPMS/*asp.src.rpm ~/repos/base/SRMPS

    . . .

    #eject

    После чего можно переходить к созданию метаданных репозитария BASE.
    Как упоминалось выше, для разных версиях дистрибутива необходимо применять
    разные утилиты для создания метаданных репозитария.

    Пример

    Создание метаданных репозитария с помощью yum-arch

    Код:

    #yum-arch -vv ~/repos/base

    Digesting rpm - 4Suite-1.0-1.0.a3.1.i386.rpm - 1/2013

    Digesting rpm - a2ps-4.13b-37.i386.rpm - 2/2013

    Digesting rpm - acl-2.2.23-0.10.0asp.i386.rpm - 3/2013

    Digesting rpm - acpid-1.0.2-6.i386.rpm - 4/2013

    Digesting rpm - adjtimex-1.13-12.i386.rpm - 5/2013

    . . .

    Digesting rpm - webmin-1.170-1asp.noarch.rpm - 2003/2013

    Digesting rpm - wl-xemacs-2.10.1-2.noarch.rpm - 2004/2013

    Digesting rpm - xchat-osd-1.1-1asp.noarch.rpm - 2005/2013

    Digesting rpm - xemacs-sumo-20040202-4.noarch.rpm - 2006/2013

    Digesting rpm - xemacs-sumo-el-20040202-4.noarch.rpm - 2007/2013

    Digesting rpm - xemacs-sumo-info-20040202-4.noarch.rpm - 2008/2013

    Digesting rpm - xfce4-themes-4.0.6-0.10.0asp.noarch.rpm - 2009/2013

    Digesting rpm - xfwm4-themes-4.0.6-0.10.0asp.noarch.rpm - 2010/2013

    Digesting rpm - xhtml1-dtds-1.0-6.noarch.rpm - 2011/2013

    Digesting rpm - xmltex-20020625-2.noarch.rpm - 2012/2013

    Digesting rpm - xpenguins_themes-1.0-2asp.noarch.rpm - 2013/2013

    Total: 2013

    Used: 2013

    Src: 0

    Writing header.info file

    В командной строке с правами пользователя ROOT вызываем yum-arch
    с опцией -v, которая выводит на поток стандартного устройства ввода/вывода
    обработанный пакет и номер из общего количества пакетов в дереве с возвратом
    корретки. По умолчанию, в тоже самом формате, но в той же самой позиции.

    Кроме того, утилита yum-arch разбирает следующие аргументы и опции в командной
    строке:
    Опция -d производит проверку зависимостей и на конфликты
    в дереве относительно корневой директории, которая указывается в качестве
    аргумента в командной строке. Лучше не использовать, вместо нормального завершения,
    интерпретатор python'а завершает с ошибками.

    Опция -vv тоже самая -v, но без каких видимых увлечений
    количества сообщений.

    Опция -n указывает yum-arch не генерировать заголовочные
    файлы. Можно использовать в качестве теста.

    Опция -s производит создание заголовочных файлов для очень
    больших rpm-пакетов c исходным кодом.

    Опция -q минимизирует вывод на поток стандартного устройства
    ввода/вывода.

    Опция -c производит проверку контрольных сумм пакетов двух
    типов gpg и md5. Не может быть использована одновременно с опцией
    -n.

    Опция -z говорит, что производить сжатие заголовков rpm-пакетов
    gzip ( по умолчанию, не используется).

    Опция -l учитывает пакеты, указанные символическими ссылками(
    по умолчанию, они игнорируются).
    Для создания метаданных в версиях ASPlinux 10 и выше используется скрипт
    createrepo.
    Пример

    Создание метаданных репозитария с помощью createrepo:

    Код:

    [root@rjaan repos]# createrepo -v -p -s md5 ~/repos/base

    1/2013 - i386/4Suite-1.0-1.0.a3.1.i386.rpm

    2/2013 - i386/a2ps-4.13b-37.i386.rpm

    3/2013 - i386/acl-2.2.23-0.10.0asp.i386.rpm

    4/2013 - i386/acpid-1.0.2-6.i386.rpm

    5/2013 - i386/adjtimex-1.13-12.i386.rpm

    6/2013 - i386/alchemist-1.0.33-1.i386.rpm

    7/2013 - i386/alsa-lib-1.0.3a-2.i386.rpm

    8/2013 - i386/alsa-utils-1.0.3-1.i386.rpm

    9/2013 - i386/anacron-2.3-30asp.i386.rpm

    . . .

    2009/2013 - noarch/xfce4-themes-4.0.6-0.10.0asp.noarch.rpm

    2010/2013 - noarch/xfwm4-themes-4.0.6-0.10.0asp.noarch.rpm

    2011/2013 - noarch/xhtml1-dtds-1.0-6.noarch.rpm

    2012/2013 - noarch/xmltex-20020625-2.noarch.rpm

    2013/2013 - noarch/xpenguins_themes-1.0-2asp.noarch.rpm

    Saving Primary metadata

    Saving file lists metadata

    Saving other metadata

    В командной строке с правами пользователя ROOT вызываем createrepo
    с опциями: -v, -p и -s с аргументом md5.

    Последним указываем аргумент с полным путем корневой директории ~/repos/base
    репозитария BASE.
    Опция -q запрещает вывод на стандартный поток ввода/вывода
    сообщений. Может быть использован в скриптах для автоматического обновления
    репозитария.

    Опция -v, --verbose разрешает вывод более подробных сообщений,
    как и в yum-arch, каждый обработанный пакет печатается отдельной строкой с
    возвратом каретки. В то время, как по умолчанию, печатается в той же позиции,
    без возврата каретки в формате: номер пакета из общего количества и путь относительно
    корня репозитария.

    Опция -s, --checksum обязательные аргументы md5
    или sha. Устанавливает тип используемой контрольной суммы ( по умолчанию
    sha).

    Опция -p, –pretty создание xml файлов в pretty формате.
    Еще пожалуй будут интересны для пользователя опции -h , --help и
    -V, --version, соответственно, вывод на поток стандартного устройство
    ввода/вывода краткой справки и текущей версии.
    Пример

    Получение текущей версии createrepo

    Код:

    [root@home ~]# createrepo -V

    0.4.1

    [root@home ~]#

    После создания метаданных репозитария BASE остается его прописать
    в конфигурационном файле /etc/yum.conf . После чего, можно будет считать
    наш репозитарий BASE готов к работе.


    Создание дерева репозитария
    UPDATES

    Дерево репозитария UPDATES создается, таким же образом, как ранее для
    BASE, в случае получения обновлений с CD-ROM или как иного носителя,
    где rpm-пакеты записаны одной кучей.

    При закачке rpm-пакетов для обновления с зеркал ASPlinux вам необходимо обновить
    базу данных репозитария.

    Ддля этого необходимо удалить директории headers и repodata, а
    лучше их вообще не брать с интернет-ресурса.
    Зеркала для обновления ASPlinux v.10. и v.9.2 находятся по следующим URL-адресам:

    ftp://ftp1.asplinux.ru/pub/i386/updates/

    ftp://ftp2.asplinux.ru/pub/i386/updates/

    ftp://ftp.chg.ru/pub/Linux/ASPLinux/i386/updates/
    Следующие НTTP и FTP-сервера Московского Государственного Индустриального
    университета – являются неофициальными и, поэтому установка rpm-пакетов с них,
    пользователем производится на свой страх и риск.
    Главная страница:

    http://updates.msiu.ru/
    FTP-сервер:

    ftp://ftp1.msiu.ru/pub/
    При использовании этого зеркала в качестве или закачки обновлений с него вам
    будет необходимо импортировать GPG-ключ, который можно взять по этому URL-адресу:

    http://updates.msiu.ru/me/GPG-KEY
    Если же Вы не смогли разобраться сами, то можете задать вопрос на форуме сайта:

    http://updates.msiu.ru/phorum/
    постарайтесь продублировать этот вопрос на других сайтах:

    http://community.asplinux.ru/forum/

    http://asplinux.net/


    Файл yum.conf

    Файл yum.conf является основным и единственным конфигурационным файлом
    скрипта YUM.

    По умолчанию корневой директорией является /etc.

    Пример

    Использование опции .

    Код:

    [root@home ~]# yum -c /etc/yum.conf

    You need to give some command

    Usage: yum [options] < update | install | info | remove | list |

    clean | provides | search | check-update | groupinstall |

    groupupdate | grouplist | groupinfo | groupremove | generate-rss |

    makecache | localinstall >

    Options:

    -c [config file] - specify the config file to use

    -e [error level] - set the error logging level

    -d [debug level] - set the debugging level

    -y - answer yes to all questions

    -R [time in minutes] - set the max amount of time to randomly run in

    -C run from cache only - do not update the cache

    --installroot=[path] - set the install root (default '/')

    --version - output the version of yum

    --rss-filename=[path/filename] - set the filename to generate rss to

    --exclude=package to exclude

    --disablerepo=repository id to disable (overrides config file)

    --enablerepo=repository id to enable (overrides config file)

    -h, --help - this screen

    [root@home ~]#

    Пользователь может указывать с помощью опции полное имя конфигурационного
    файла в качестве ее аргумента.

    В случае неправильного пути файла или нарушения прав доступа к файлу YUM выдаст
    на стандартный поток устройства ввода/вывода сообщение об ошибке.
    Пример

    Неправильное указание пути или прав доступа к конфигурационному файлу:

    Код:

    [root@home ~]# yum -c /usr/etc/yum.conf

    Config Error: Error accessing file for config file:///usr/etc/yum.conf

    [root@home ~]#

    При использовании иной конфигурации для YUM, каждый раз придется указывать
    путь к ней через опцию и следом команду.
    Пример

    Использование конфигурации /root/etc/yum.conf для поиска установленных
    пакетов для KDE:

    Код:

    [root@home ~]# yum -c /root/etc/yum.conf search kde
    | grep installed

    lockdev.i386 1.0.1-2.3.1 installed

    kdeadmin.i386 7:3.3.1-1asp installed

    openoffice.org-kde.i386 1.1.2-11.5.1.am installed

    . . .

    xorg-x11.i386 6.8.1-12.FC3.1 installed

    kdeaddons.i386 3.3.1-1asp installed

    koffice.i386 4:1.3-6 installed

    kdesdk.i386 3.3.1-1asp installed

    [root@home ~]#

    Конфигурационный файл должен состоять из двух частей: главной и служебная(ые)
    секции(ий).

    Главная определяет все общие настройки, а служебная(ые) определяет данные
    настроек только внутри секции(ий).

    Секция начинается с указания ее имени в квадратных скобках.

    Первой принято указывать главную – main секцию, а за ней служебную(ые)
    со своим уникальным именем.

    Пример

    Файл конфигурации /etc/yum.conf

    Код:

    1 [main]

    2 cachedir=/var/cache/yum

    3 debuglevel=2

    4 logfile=/var/log/yum.log

    5 pkgpolicy=newest

    6 distroverpkg=asplinux-release

    7 tolerant=1

    8 exactarch=1

    9 retries=20

    10 obsoletes=1

    11 gpgcheck=1

    12

    13 # PUT YOUR REPOS HERE OR IN separate files named file.repo

    14 # in /etc/yum.repos.d

    15

    Опции секции main

    Ниже приводятся краткое описание и назначение опций этой секции из примера
    файла конфигурации. Ниже приведенные опции могут быть использованы в служебных
    секциях и будут иметь действие только внутри указанной секции.
    Опция cachedir

    Директория, где распалогается файлов баз данных и кэша.
    Опция debuglevel

    Уровень отладочных сообщений. Допустимый диапазон с 0 по10. По умолчанию 2.
    Опция logfile

    Полное имя расположения файла или директория куда будут писаться лог-сообщения.

    Опция distroverpkg

    Имя пакета используемый предоставляющий предоставляющие файлы конфигурации
    YUM директории /etc, которые содержат имя, версию дистрибутива,
    файлы конфигурации, местоположение репозитариев и т.п.

    По умолчанию asplinux-release, что соответствует пакету http://asplinux.net/
    Опция tolerant

    Одно из двух значений 0 или 1. При установленной 1 YUM
    будет толерантным к ошибкам пользователя в командной строке, соответствует
    опции -t
    Опция exactarch

    Одно из двух значений 0 или 1. При установленной 1 YUM
    будет производить обновление пакетов только установленной архитектуры, т.е.
    в случае ASPlinux будет обновлять только пакеты собранные для архитектуры
    i386. По умолчанию, установлена 1.

    Например, если Вы захотите установить rpm-пакеты Open Office Org Вам будет
    необходимо изменить значение этой опции на 0, т.к. они собраны для
    архитектуры i586.
    Опция retries

    Устанавливает время попыток повторной попытки открытия и поиска файла до тех
    пор пока YUM не завершится с ошибкой.
    Опция obsoletes

    При установленной 1 управляет логикой удаления rpm-пакетов, признанных
    "устаревшими" при смене версии дистрибутива
    Опция gpgcheck

    При установленой 1 проверяет GPG-ключ пакетов репозитария. Нередко
    при использовании пакетов с ftp://ftp.msiu.ru/pub/
    необходимо импортировать GPG-ключ с помощью опции gpgkey[b], который находится
    по URL-адресу: http://updates.msiu.ru/me/GPG-KEY.

    Код:

    [b]1 [main]

    . . .

    11 gpgcheck=1

    12 gpgkey= http://updates.msiu.ru/me/GPG-KEY

    . . .

    Опции служебной секции

    В файле /etc/yum.conf в стандартной поставке v.10 секции с местоположением
    репозитария явно не указаны. Об этом свидетельствует комментарий в 13-й строке
    файла конфигурации /etc/yum.conf, который говорит, что укажите ваш
    репозитарий здесь или в файле репозитария в /etc/yum.repos.d

    Файл репозитария после имени должен иметь расширение <reponame>.repo.
    В этом файле указывается физическое местоположение носителя на котором находится
    репозитарий.

    Само расположение репозитария может быть указано как на локальной
    машине, так и на файловом сервере локальной сети или глобальной сети интернет
    указывается опцией baseurl

    Для файл сервера локальной или глобальной ,соответственно http:// или
    ftp://, указывается на основе HTTP или FTP протоколов стека TCP/IP.

    Для указания ресурса на локальной машине указывать через file://.

    Пример

    Перечень ресурсов для репозитория BASE (файл /etc/yum.repos.d/asplinux-base.repo)

    Код:

    [base]

    name=ASPLinux $releasever - $basearch - Base

    #local machine

    baseurl=file:///root/Repos/base

    # Moscow

    #baseurl=http://download.asplinux.ru/$basearch/RPMS.$releasever/

    # Moscow2

    #baseurl=http://download2.asplinux.ru/install/ftp/$basearch/RPMS.$releasever/

    # UA-IX only

    #baseurl=ftp://ftp.asp-linux.com.ua/pub/$basearch/RPMS.$releasever/

    В стандартной поставке v.10 в указанной директории уже существуют два файла:
    первый с указанием расположения BASE и UPDATES репозитариев
    на удаленных серверах:

    http://download.asplinux.ru/

    http://download2.asplinux.ru/

    ftp://ftp.asp-linux.com.ua/pub/
    Для тех, у кого канал доступа к глобальной сети интернет ограничен по скорости,
    рекомендую за комментировать знаком решетки # в начале строки все ресурсы
    FTP и HTTP серверов.
    Для указания месторасположение локального ресурса репозитария UPDATES
    необходимо в файл /etc/yum.repos.d/asplinux-updates.repo добавить строчку
    наподобие как в файле /etc/yum.repos.d/asplinux-base.repo

    Код:

    [updates]

    name=ASPLinux $releasever - $basearch - Updates

    #local machine

    baseurl=file:///root/Repos/updates

    # Moscow

    #baseurl=http://download.asplinux.ru/$basearch/updates/$releasever/

    # Moscow2

    #baseurl=http://download2.asplinux.ru/install/ftp/$basearch/updates/$releasever/

    # UA-IX only

    #baseurl=ftp://ftp.asp-linux.com.ua/pub/$basearch/updates/$releasever/

    Для того чтобы YUM не обращался к ресурсам на FTP и HTTP серверов – их закомментировать.


    Библиография
    1.Edward
    C. Bailey, Maximum RPM, © 2000 by Red Hat, Inc.

    2.Character
    9. 9 Package Management with RPM

    3.RPM.
    Управление пакетами программ в Linux от Red Hat

    Москва, 2005-2006 год.

    Your rating: Нет Average: 6.8 (26 votes)
    RSS-материал