Установка, обновление и удаление (при необходимости) установленных программ - ключевые обязанности в повседневной жизни системного администратора. Когда машина подключена к Интернету, эти задачи могут быть легко выполнены с помощью системы управления пакетами, такой как способность (или apt-get), ням, или зиппер, в зависимости от выбранного вами дистрибутива, как описано в Часть 9 - Управление пакетами Linux из LFCE (Сертифицированный инженер Linux Foundation) ряд. Вы также можете скачать автономный .deb или .rpm файлы и установите их с помощью dpkg или об / мин, соответственно.
Однако, когда у машины нет доступа к всемирной паутине, необходимы другие методы. Зачем кому-то это нужно? Причины варьируются от экономии полосы пропускания Интернета (что позволяет избежать нескольких одновременных подключений к внешней стороне) до защиты пакетов, скомпилированных из исходного кода локально, и включая возможность предоставления пакетов, которые по юридическим причинам (например, программное обеспечение, ограниченное в некоторых странах) не могут быть включены в официальные репозитории.
Именно здесь в игру вступают сетевые репозитории, что является центральной темой этой статьи.
Сетевой сервер репозитория: CentOS 7 [enp0s3: 192.168.0.17] - dev1. Клиентская машина: CentOS 6.6 [eth0: 192.168.0.18] - dev2.
В качестве первого шага мы займемся установкой и настройкой CentOS 7 ящик в качестве сервера репозитория [IP-адрес 192.168.0.17] и CentOS 6.6 машина как клиент. Настройка openSUSE практически идентична.
Для CentOS 7 следуйте приведенным ниже статьям, в которых объясняются пошаговые инструкции по установке CentOS 7 и настройке статического IP-адреса.
Что касается Ubuntu, на этом сайте есть отличная статья, в которой шаг за шагом объясняется, как создать собственный частный репозиторий.
Нашим первым выбором будет способ доступа клиентов к серверу репозитория - FTP и HTTP используются наиболее часто. Мы выберем последний как Apache установка была покрыта Часть 1 - Установка Apache этой серии LFCE. Это также позволит нам отображать список пакетов с помощью веб-браузера.
Далее нам нужно создать каталоги для хранения .rpm пакеты. Мы создадим подкаталоги внутри /var/www/html/repos соответственно. Для нашего удобства мы также можем создать другие подкаталоги для размещения пакетов для разных версий каждый дистрибутив (конечно, мы все еще можем добавить столько каталогов, сколько потребуется позже) и даже разные архитектуры.
При настройке собственного репозитория важно учитывать то, что вам потребуется значительный объем доступного дискового пространства (~ 20 ГБ). Если вы этого не сделаете, измените размер файловой системы, в которой вы планируете хранить содержимое репозитория, или, что еще лучше, добавьте дополнительное выделенное устройство хранения для размещения репозитория.
При этом мы начнем с создания каталогов, которые нам понадобятся для размещения репозитория:
# mkdir -p / var / www / html / repos / centos / 6/6.
После того, как мы создали структуру каталогов для нашего сервера репозитория, мы инициализируем его в /var/www/html/repos/centos/6/6 база данных, которая отслеживает пакеты и их соответствующие зависимости, используя createrepo.
Установить createrepo если вы еще этого не сделали:
# yum update && yum install createrepo.
Затем инициализируйте базу данных,
# createrepo / var / www / html / repos / centos / 6/6.
Предполагая, что сервер репозитория имеет доступ к Интернету, мы извлечем онлайн-репозиторий, чтобы получить последние обновления пакетов. Если это не так, вы все равно можете скопировать все содержимое каталога Packages из CentOS 6.6 установочный DVD.
В этом уроке мы рассмотрим первый случай. Чтобы оптимизировать скорость загрузки, мы выберем CentOS 6.6 зеркало из ближайшего к нам места. Перейти к Зеркало загрузки CentOSи выберите тот, который ближе к вам (в моем случае Аргентина):
Затем перейдите к Операционные системы каталог внутри выделенной ссылки, а затем выберите подходящую архитектуру. Оказавшись там, скопируйте ссылку в адресную строку и загрузите содержимое в специальный каталог на сервере репозитория:
# rsync -avz rsync: //centos.ar.host-engine.com/6.6/os/x86_64/ / var / www / html / repos / centos / 6/6 /
В случае, если выбранный репозиторий по какой-то причине оказался не в сети, вернитесь и выберите другой. Ничего страшного.
Сейчас самое время, когда вы можете захотеть расслабиться и, возможно, посмотреть эпизод вашего любимого телешоу, потому что зеркалирование онлайн-репозитория может занять довольно много времени.
После завершения загрузки вы можете проверить использование дискового пространства с помощью:
# дю -sch / var / www / html / repos / centos / 6/6 / *
Наконец, обновите базу данных репозитория.
# createrepo --update / var / www / html / repos / centos / 6/6.
Вы также можете запустить свой веб-браузер и перейти к репо / centos / 6/6 каталог, чтобы убедиться, что вы видите его содержимое:
И все готово - теперь пора настроить клиента.