Добавление Debian Sid в качестве репозитория пакетов?

20

У меня установлена ​​бета-версия 12.04 Precise (обновлена ​​с 11.10 Oneiric), и я добавил следующую строку в мой /etc/apt/source.list :

deb http://http.us.debian.org/debian unstable main contrib non-free

Чтобы получить более новую версию пакета (октава 3.6), который мне был нужен, но не был доступен в точном хранилище.

Это работало нормально, но теперь, когда я хочу обновить, есть большое количество пакетов, которые нужно обновить. Я предполагаю, что это потому, что sid имеет более новые версии многих пакетов, чем точные.

Я временно отключил репозиторий sid, и это прекрасно работает - однако мне любопытно узнать, что произойдет, если я разрешу пройти все эти обновления? Это сломало бы мою систему? Структуры репозиториев Ubuntu Precise и Debian Sid принципиально отличаются?

Андрей Томазос
источник

Ответы:

24

Вы смешиваете пакеты двух разных дистрибутивов. По разным причинам это плохая идея:

  • Безопасность.

  • Стабильность.

  • Противоречивые обновления, которые у вас есть прямо сейчас.

  • Если вы пропустите указанные выше обновления, вы столкнетесь с первыми двумя проблемами, а затем у вас возникнут серьезные проблемы, если, скажем, в качестве примера появится обновление ядра!

Кроме того, это делает получение точного отчета об ошибке или трассировки стека практически невозможным , если не совсем невозможным.

Короче говоря, если вам нужен Debian sid, запустите sid. В противном случае, запустите Ubuntu и просто добавьте новое программное обеспечение, к которому вы хотите, через PPA или backports .

Больше объяснений здесь:

JRG
источник
2
Хорошо использовать репозитории Debian для получения обновленного программного обеспечения. Иногда нет другого варианта, потому что PPA или backports не содержат версию, которую вы ищете. Иногда вам нужно получить последние версии драйверов для оборудования. Просто не используйте репозитории Debian в качестве стандартных репо, только в исключительных случаях.
ddeunagomez
9

Это может быть необходимо, если вам нужен пакет, который в данный момент недоступен в вашей версии Ubuntu.

Я предлагаю использовать apt-pin .

Я создал /etc/apt/preferences.d/unstableсо следующим содержанием

Package: *
Pin: release v=12.04, l=Ubuntu
Pin-Priority: 1000

Package: *
Pin: release a=unstable
Pin-Priority: 600

Это гарантирует, что базовое распределение всегда имеет приоритет. В случае , если пакет не доступен, нестабильная выбран.

koppor
источник
5

Если вы сделаете это, может показаться, что сработает изначально. Это означает, что вы получаете пакеты до того, как Ubuntu настроит / изменит вещи.

Использование части одного и части другого отнимает ОЧЕНЬ много возможностей для устранения проблем с обеих сторон. Пользователи Debian не смогут вам так сильно помочь, потому что большая часть вашего дистрибутива - Ubuntu. Пользователи Ubuntu не смогут вам так сильно помочь, потому что часть вашего дистрибутива - Debian.

Это здорово, если вы пытаетесь получить пакет в ppa / repo. Широкое распространение, на мой взгляд, это не очень хорошая идея.

RobotHumans
источник
2

Если вы хотите взять сторонние deb-пакеты, я предлагаю вам скачать их один за другим, а затем установить их один за другим с помощью gdebi(конечно, сначала вы должны установить gdebi).

Gdebi - отличный инструмент для ручной установки пакета deb. Гдеби расскажет вам цепочку зависимостей приложения, которое вы хотите, и вы можете установить их в безопасном месте. Если, в конце концов, вы не удовлетворили все зависимости, лучше и безопаснее установить его из исходного кода.

Алван Росиди
источник
Или вы можете просто использовать dpkg...
Strugee
1

Скорее всего, вещи могут сломаться. не рекомендуется

Разработка с Debian - долгое чтение - давайте просто скажем, что они работают вместе

Как работает Ubuntu

Самка луня
источник