cowbuilder - создают - распределение ясные сбои

Я пытаюсь создать среду сборки для Lucid и вызов cowbuilder --create --distribution lucid сбои с сообщениями ниже:

Get:1 http://us-east-1.ec2.archive.ubuntu.com lucid Release.gpg [189B]
Hit http://us-east-1.ec2.archive.ubuntu.com lucid Release
Hit http://us-east-1.ec2.archive.ubuntu.com lucid/main Packages
Fetched 189B in 0s (2376B/s)
Reading package lists...
I: Obtaining the cached apt archive contents
Reading package lists...
Building dependency tree...
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Reading package lists...
Building dependency tree...
apt is already the newest version.
Package cowdancer is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package cowdancer has no installation candidate
I: unmounting dev/pts filesystem
I: unmounting proc filesystem
pbuilder create failed
  forking: rm -rf /opt/cowbuilder 
5
задан 10 August 2012 в 23:09

2 ответа

Попробуйте добавить следующее к ~/.pbuilderrc:

COMPONENTS="main universe multiverse restricted"

или, как предложил SunSparc, введите команду следующим образом:

COMPONENTS="main universe multiverse restricted" cowbuilder --create --distribution lucid

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

Файл ~/.pbuilderrc можно настроить для установки множества параметров pbuilder, которые также используются для cowbuilder.

0
ответ дан 10 August 2012 в 23:09

Сообщение о критической ошибке (ниже) немного сбивало меня с толку, пока я не прошел точно то, что cowbuilder (и базовый инструмент pbuilder) пытаются сделать.

Package cowdancer is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

Это сбивающее с толку сообщение, потому что оно появляется только при выполнении cowbuilder --create. Другими словами, когда я вызываю эту команду, она жалуется на отсутствие пакета , который я уже установил . Странно.

Вот недостающее звено: cowbuilder - и, соответственно, pbuilder - пытаются создать чистую минимальную среду chroot, внутри которой не установлены дополнительные пакеты. Несмотря на то, что cowbuilder уже установлен вне chroot, он, похоже, хочет установить внутри chroot. Внутри и снаружи chroot совершенно разные миры. За пределами chroot (обычная среда) ваш файл /etc/apt/sources.list является королем. Но внутри это другой набор правил. Среда по умолчанию pbuilder включает в себя только самые важные и минимальные репозитории, необходимые для базовой / чистой установки.

В принятом ответе говорится о добавлении аргумента «КОМПОНЕНТЫ» и указании некоторых дополнительных репозиториев. Это не сработало для меня. Я попытался добавить значение COMPONENTS в файл /etc/pbuilderrc, мой локальный файл .pbuilderrc, а также сделать это в командной строке в качестве переменной среды. Неудачно. Я нашел несколько ссылок, в которых упоминалось, что аргумент COMPONENTS не поддерживается для cowbuilder.

Наконец, я наткнулся на пост в блоге , в котором говорилось о добавлении переменной с именем OTHERMIRROR в файл /etc/pbuilderrc. Для меня я просто добавил следующее:

OTHERMIRROR="deb http://archive.ubuntu.com/ubuntu saucy main restricted universe multiverse | deb http://archive.ubuntu.com/ubuntu saucy-backports main restricted universe multiverse | deb http://archive.ubuntu.com/ubuntu saucy-security main restricted universe multiverse | deb http://archive.ubuntu.com/ubuntu saucy-updates main restricted universe multiverse"

[Обратите внимание, что вы можете обновить / изменить saucy на то, что вы хотите (например, trusty, raring, precise или даже wheezy и sid, если у вас есть соответствующие зеркала Debian и т. Д.).

Затем я просто запустил следующее из командной строки, и все было успешно создано, и я смог продолжить:

sudo cowbuilder --create  # defaults to using current distribution

Очевидно, что вы можете изменить распределение, используя аргумент командной строки «--distribution» , Создание начальной среды занимает несколько минут, но после ее создания вы можете легко обновить пакеты и т. Д., Используя cowbuilder.

На странице cowbuilder на сайте Debian рассказывается о создании Ubuntu-специфичного cowbuilder. В нем упоминается, что cowdancer был перемещен в хранилище universe. Они ссылаются на выполнение следующей команды для создания среды Cowbuilder в Ubuntu:

DIST=trusty sudo cowbuilder --create --distribution trusty --components "main universe"

Флаг --components="main universe" является важной частью, обеспечивающей доступ процесса создания ко всем необходимым репозиториям. . [одна тысяча сто сорок-дв]

0
ответ дан 10 August 2012 в 23:09

Другие вопросы по тегам:

Похожие вопросы: