LINUX.ORG.RU
решено ФорумAdmin

Создание локального репозитория с помощью reprepro

 


0

1

Всем доброго времени суток.

Пытаюсь создать локальный репозиторий для установки и обновления ПО. Но, при попытке добавить в него .deb вылезает ошибка No priority given for '<package name>', skipping..

$ tree
.
├── conf
│   └── distributions
├── db
│   ├── checksums.db
│   ├── contents.cache.db
│   ├── packages.db
│   ├── references.db
│   ├── release.caches.db
│   └── version
└── dists
    ├── custom -> enterprise
    └── enterprise
        ├── contrib
        │   ├── binary-amd64
        │   │   ├── Packages
        │   │   ├── Packages.gz
        │   │   └── Release
        │   ├── debian-installer
        │   │   └── binary-amd64
        │   │       ├── Packages
        │   │       └── Packages.gz
        │   └── source
        │       ├── Release
        │       └── Sources.gz
        ├── main
        │   ├── binary-amd64
        │   │   ├── Packages
        │   │   ├── Packages.gz
        │   │   └── Release
        │   ├── debian-installer
        │   │   └── binary-amd64
        │   │       ├── Packages
        │   │       └── Packages.gz
        │   └── source
        │       ├── Release
        │       └── Sources.gz
        └── Release
$ vi /conf/distributions
Origin: Kubuntu
Suite: custom
Codename: enterprise
Version: 8.3
Architectures: amd64 source
Components: main contrib
UDebComponents: main contrib
Description: Repository for 1C Enterprise

И, когда добавляю пакеты

$ reprepro -V -b /var/spool/apt-mirror/repo/1c-enterprise/ includedeb enterprise /tmp/for_install/*.deb                   
No priority given for '1c-enterprise83-client', skipping.
No priority given for '1c-enterprise83-client-nls', skipping.
No priority given for '1c-enterprise83-common', skipping.
No priority given for '1c-enterprise83-common-nls', skipping.
No priority given for '1c-enterprise83-server', skipping.
No priority given for '1c-enterprise83-server-nls', skipping.
No priority given for '1c-enterprise83-ws', skipping.
No priority given for '1c-enterprise83-ws-nls', skipping.
There have been errors!

Подскажите, в чем проблема?

Ответ на: комментарий от anonymous

Не, нужно было сделать

reprepro -P -V -b /var/spool/apt-mirror/repo/1c-enterprise/ includedeb enterprise /tmp/for_install/*.deb

А как сделать, чтобы он не искал файлы установки под х86? А то у меня только amd64 пакеты и другие собстна не нужны.

hanharr ()
Ответ на: комментарий от hanharr

Не

Что «не»? Пакеты кривые, как будто я их (от 1С) не перепаковывал с исправлением зависимостей. Поле Priority должно быть задано по стандарту.

А как сделать, чтобы он не искал файлы установки под х86

Архитектуру указать?

anonymous ()
Ответ на: комментарий от anonymous

Ошибка была такая

W: Не удалось получить http://s003/1c-enterprise/dists/enterprise/main/binary-i386/Packages  404  Not Found

Исправил добавив i386. Директория пустая, но зато не ругается. Почему apt-get update вообще ищет 32х битные пакеты тот еще вопрос.

Подскажите, а аутентифицируете пакеты? А то на серевере сгенерировал gpg:

$ gpg --gen-key
$ sudo gpg --armor --export > mylocalkey.asc
$ sudo apt-key add mylocalkey.asc

Так же этот .asc добавил добавил на клиентской машине. Но, при установке пакетов все-равно говорит, что не удалось аутентифицировать.

hanharr ()
Ответ на: комментарий от hanharr

W: Не удалось получить http://s003/1c-enterprise/dists/enterprise/main/binary-i386/Packages 404 Not Found

Это не ошибка. Чтобы не было, укажи в sources архитектуру:

deb [arch=amd64] http://s003/1c-enterprise enterprise main

Подскажите, а аутентифицируете пакеты?

К счастью, давно не нуждаюсь в reprepro :) Раньше подписывал, проблем не было. Проверяй, подписывает ли reprepro вообще что-нибудь.

apt-key add

Это для клиента, на сервере apt не участвует.

anonymous ()
Ответ на: комментарий от anonymous

Спасибо. Разобрался, с ключами. Нужно было не reprepro export выполнять, а reprepro --ask-passphrase -b . export. И, буду рад если подскажите: когда на клиенте выполняю sudo apt-get upgrade, то сообщает, что пакеты 1c-enterprise будут оставлены в неизменном виде. Вручную устанавливаются без проблем. Пакеты не залочены. В чем может быть проблема?

hanharr ()
Ответ на: комментарий от anonymous

По идее, он видит, что есть более новый пакет.

$ sudo apt-cache policy 1c-enterprise83-client
1c-enterprise83-client:
  Установлен: 8.3.11-3034
  Кандидат:   8.3.12-1616
  Таблица версий:
     8.3.12-1616 0
        500 http://s003/1c-enterprise/ enterprise/main amd64 Packages
 *** 8.3.11-3034 0
        100 /var/lib/dpkg/status

По команде sudo apt-get dist-upgrade все обновилось.

Спасибо, за помощь!

hanharr ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.