cowbuilder --создать --распределение lucid не удается
Я пытаюсь создать среду сборки для 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
2 ответа
Попробуйте добавить следующее к вашему ~/.pbuilderrc
:
COMPONENTS="main universe multiverse restricted"
или, как предложил SunSparc, введите команду следующим образом:
COMPONENTS="main universe multiverse restricted" cowbuilder --create --distribution lucid
cowbuilder
находится в компоненте вселенной для lucid. Я не вижу операции создания, пытающейся получить доступ к юниверсу в выводе, который вы включили в свой вопрос.
Файл ~/.pbuilderrc
можно настроить, чтобы установить много pbuilder
варианты, которые используются для cowbuilder
также.
Сообщение о критической ошибке (ниже) немного сбивало меня с толку, пока я не прошел точно то, что 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
, Другими словами, когда я вызываю эту команду, она жалуется на отсутствие пакета, который я уже установил. Weird.
Вот недостающая ссылка: cowbuilder
- и, соответственно, pbuilder
- пытаемся создать чистую минимальную среду chroot, внутри которой не установлены дополнительные пакеты. Даже если cowbuilder
уже установлен вне chroot, похоже, что он также должен быть установлен внутри chroot. Внутри и снаружи chroot совершенно разные миры. Вне chroot (обычная среда), ваш /etc/apt/sources.list
файл король. Но внутри это другой набор правил. По умолчанию pbuilder
Среда включает только самые важные и минимальные репозитории, необходимые для базовой / чистой установки.
В принятом ответе говорится о добавлении аргумента "КОМПОНЕНТЫ" и указании некоторых дополнительных репозиториев. Это не сработало для меня. Я попытался добавить значение КОМПОНЕНТОВ к /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
,
На странице, посвященной сборщикам коров на веб-сайте Debian, рассказывается о создании сборщиков коров для Ubuntu. Упоминается, что cowdancer
был перемещен в universe
репозиторий. Они ссылаются на выполнение следующей команды для создания среды разработки в Ubuntu:
DIST=trusty sudo cowbuilder --create --distribution trusty --components "main universe"
--components="main universe"
Флаг является важной частью, чтобы гарантировать, что процесс создания имеет доступ ко всем необходимым репозиториям.