$ cd ~ $ gpg --gen-key $ gpg —export -a 'Name Surname (repo)' > RPM-GPG-KEY
2. Создаём файл ~/.rpmmacros следующего содержания:
%_signature gpg %_gpg_path ~/.gnupg %_gpg_name Name Surname (repo)
3. Создаём директорию repo, а в ней директории i386, i686 и x86_64. Переносим туда ключ RPM-GPG-KEY
$ mkdir -p repo repo/i386 repo/i686 repo/x86_64 $ mv ~/RPM-GPG-KEY /repo/RPM-GPG-KEY
4. Скачиваем и раскладываем по директориям пакеты для соответствующих архитектур. Для i386 и i686 в большинстве случаев будут идентичные пакеты. Для x86_64 может не существовать пакета (например, TeamViewer), в этом случае кладётся соответствующий пакет i686 и в большинстве случаев он в RHEL работает.
5. Кладём в директорию repo скрипт для подготовки репозитария.
6. Запускаем скрипт и отвечаем парольной фразой ключика на запрос.
$ chmod a+x $ ./repo_rhel.sh
7. Закачиваем на хостинг директорию repo и описываем репозитарий в /etc/yum.repos.d/nobody.repo
[nobody] name=nobody repo baseurl=http://repo/$basearch gpgkey=http://repo/RPM-GPG-KEY enabled=1 gpgcheck=1 priority=1
8. Проверяем работу репозитария
# yum clean all # yum list | grep nobody
$ cd ~ $ gpg --gen-key $ gpg —export -a 'Name Surname (repo)' > DEB-GPG-KEY
2. Создаём файл ~/.rpmmacros следующего содержания:
%_signature gpg %_gpg_path ~/.gnupg %_gpg_name Name Surname (repo)
3. Создаём директорию repo, а в ней директории dists и pool. В них уже будет система каталогов. Переносим туда ключ DEB-GPG-KEY
$ mkdir -p repo/dists/nobody/soft/binary-i386 $ mkdir -p repo/dists/nobody/soft/binary-x86_64 $ mkdir -p repo/pool/soft/binary-i386/t/teamviewer $ mkdir -p repo/pool/soft/binary-x86_64/t/teamviewer $ mv ~/DEB-GPG-KEY /repo/DEB-GPG-KEY
4. В директории dists у нас будут храниться данные о пакетах, а в директории pool — сами пакеты. Причём из имени /binary-i386/t/teamviewer уже видно, что пакеты раскладываются по архитектурам, затем по буквенным директориям и затем по директориям с именами происходящими от названия содержащегося в них ПО (в них может лежать десяток пакетов необходимых конкретному ПО по его зависимостям). Т.е. имеется заданная иерархия.
5. Кладём в директорию repo скрипт для подготовки репозитария.
6. Запускаем скрипт и ждём когда он отработает.
$ chmod a+x $ ./repo_debian.sh
7. Закачиваем на хостинг директорию repo и описываем репозитарий в /etc/apt/sources.list
deb http://repo nobody soft
8. Проверяем работу репозитария
$ wget http://repo/DEB-GPG-KEY $ sudo apt-key add DEB-GPG-KEY $ sudo apt-get clean $ sudo apt-get update
ссылка на оригинал статьи http://habrahabr.ru/post/168635/
Добавить комментарий