LINUX.ORG.RU

RHEL дистрибутивы и их репозитории.

 , ,


0

1

Привет, пытаюсь разобраться в том как взаимосвязаны между собой дистрибутивы Linux и их репозитории. Возникло несколько вопросов.

1) Можно ли использовать на RHEL 8 репозитории от Centos 8, будут ли они нормально работать?

1.1) В этой статье сказано что Centos является клоном RHEL. А дистрибутив-клон не использует те же бинарные пакеты. Почему тогда в RHEL 8 можно установить пакет собранный под Centos 8?

2.1b) Клоны (различия с оригиналом сводятся к ребрендингу, замене названия и художественного оформления - просто понадобится нарисовать свои «нескучные обои» со своим логотипом). Стоит заметить, что клоны построены на тех же пакетах с исходниками, что и оригинал, а не на тех же бинарных пакетах. Подобные проекты пользуются спросом, так как коммерческие дистрибутивы проводят процедуру сертификации на совместимость с различными другими коммерческими решениями, а также под данный дистрибутив имеется официальный пакет от производителя данного решения. В итоге всё будет корректно работать и на бесплатном дистрибутиве-клоне.

2) Можно ли подключить к RHEL 8 репозитории от Oracle Linux и устанавливать оттуда программы? Разработчики Oracle linux заявляли что их дистрибутив «бинарно совместим с RHEL» это значит что и пакеты должны подходить?

3) Сегодня прочитал про отличия fixed release и rolling release дистрибутивов Linux. Если RHEL, как дистрибутив с фиксированным релизом поддерживается 5 лет, то 5 лет пакеты с программами в его репозитории не будут обновляться из состояния на момент выпуска дистрибутива? Дистрибутив будет получать только обновления безопасности?

4) Является ли Fedora 35 fixed release дистрибутивом? Он имеет выпуск версии раз в пол-года, но после его установки там можно обновить ~300 пакетов.


  1. У меня на CentOS 8 скорее от RHEL 8 использованы EPEL и RPMFusion. Ну можно ещё elrepo и remi использовать. А какие от CentOS 8? Например?

  2. Теоретически можно, практически - надо проверять самому.

  3. Типа того. На 6 и 7 так было, если не считать, что в 7 стали обновлять Gnome, с каждым минорным дистрибутивом, перестали к 7.7, но там первый этап поддержки закончился, дальше только мелкие фиксы безопасности. Не думаю, что 8 будет отличаться, можно на англоязычной вике по RHEL 8 глянуть, там вроде даже табличка где-то была.

  4. Ну, теоретически да, но каждые пол года выходит новый релиз, а поддержка у предыдущего 13мес., ЕМНИП. Но fedora сама по себе тестовая ветка RHEL, хотя у неё тоже есть тестовая ветка Rawhide. Можно на сайте RHEL посмотреть, там даже вроде я видел типа графического изображения - что из чего, со стрелками и пояснениями, на английском.

anonymous ()

Я нихрена не понял, что нужно автору.

CentOS (старая) - это пересборка пакетов от RHEL без коммерческой части RHEL.

Совместима по ABI с соответствующим релизом RHEL, и даже баги будут идентичные.

CentOS (новая, которая Стрим) - это роллинг-тестинг RHEL, куда пакеты попадают прежде, чем будут доведены до релиза RHEL.

Oracle Linux - это еще одна вариация на тему «старой CentOS»: такая же пересборка пакетов + добавка собственных ништяков от Oracle + возможность купить у них поддержку.

Любые сторонние репы, которые пишут, что совместимы с RHEL, в теории (и на практике) должны быть совместимы также с CentOS и Oracle. Но гарантию никто не даст, ясно-понятно.

wandrien ()
Последнее исправление: wandrien (всего исправлений: 1)
Ответ на: комментарий от wandrien

Прошу прощения за долгий ответ - был занят. В общем, я наткнулся на FAQ от разработчиков CentOS, что разъяснило мне некоторые моменты.

Сейчас отвечу сам на свои вопросы, возможно кому-то будет интересно.

1) CentOS 8 собран из открытых исходников RHEL.

CentOS Linux собран из публично доступного, предоставленного Red Hat®, Inc. в рамках их проекта Red Hat® Enterprise Linux исходного кода, и собран на базе совершенно другой системы сборки, поддерживаемой проектом CentOS Project.

Так же пакеты для CentOS собираются из публичного опубликованных RedHat SRPM пакетов. Эти пакеты попадают в основной репозиторий (если не ошибаюсь, он называется Base)

Проект CentOS использует публично доступные пакеты SRPM, поставляемые Вендором ПО, и создаёт бинарные (установочные) пакеты, предоставляя их всем, кто пожелает.
CentOS прилагает существенные усилия для поддержания бинарной совместимости. CentOS так же предоставляет другие (опциональные) репозитории: extras, addons, contribs и centosplus, предлагающие дополнительный функционал.

Отсюда можно сделать вывод что скорее всего все пакеты из репозитория Base собранные под CentOS, должны заработать на RHEL. Пакеты из дополнительных репозиториев должны иметь меньшую вероятность нормальной работоспособности.

Прямого ответа на свой вопрос я не нашёл. И становится понятно почему. Подключение реп от CentOS для RHEL никогда не было актуальным. У тех, у кого не было денег на подписку RHEL, просто устанавливали себе fixed-release CentOS где гарантированно работали пакеты. В целом этот вопрос теряет свою актуальность с прекращением поддержки старой модели выпуска релизов центос.

1.1) Да, как действительно оказалось, пакеты имеют один исходный код, но под каждый дистрибутив собираются отдельно. Поэтому нельзя считать что это одни и те же пакеты на бинарном уровне. Тем более мейнтейнеры CentOS иногда вносят небольшие правки в эти пакеты. Нужда установить пакет собранный под CentOS на RHEL практически нигде не появляется, но по причинам из пункта 1, скорее всего это будет возможно.

2) Здесь появляется та же самая ситуация с репозиториями, описанная в первых пунктах. Надёжнее будет установить Oracle Linux и устанавливать на нём собранные под него же пакеты. Практической нужды нет, но скорее всего это будет возможно.

3) Оказалось что нет. Обновление обычного ПО тоже происходит. Как уже сказали в этой теме, нужно читать официальную документацию по обновлениям.

4) Скорее, это уже что-то среднее между fixed release и rolling release.

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

На ум сразу приходит:

  • Другая архитектура системы (x86, arm).
  • Может быть другой пакетный менеджер, который не позволит установить пакет этого формата.
  • Отсутствие каких либо нужных для пакета библиотек в ОС или в репозиториях.
Cau84 ()
Ответ на: комментарий от Cau84

Логично.

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

2 и 3 И тут полностью совместимы, поскольку отличий между апдейтами одной версии внутри одного дистра там больше, чем между разными клонами одной версии rhel.

  1. Пакет, может быть, есть да не той версии. Либо старый либо слишком обновился. Очень редкое явление, поскольку кодовая база исходников у них общая. Такая программа будет глючить и в «родном» дистре.

  2. Скрипты в пакете смотрят в /etc/os-release и не найдя знакомого названия сломаются. Очень редко, но бывает и вполне себе быстро чинится.

AVL2 ★★★★★ ()
Последнее исправление: AVL2 (всего исправлений: 1)
Ответ на: комментарий от Cau84

Автор просто молодец.

Разобрался, все верно написал.

Осталось только разобраться, зачем делать все эти клоны rhel в таком количестве если разницы между ними нет?

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

Чаще всего, это конечное проприетарное ПО, не затрагивающее вопросы совместимости между дистрами. Например, своя система разворачивания и поддержки конфигураций в организации. Но есть и корневые вмешательства, например, в оракл добавляют свое ядро и юзерспей для работы с ним. Вместе с тем, чтобы не сломать совместимость, там держат и стандартное ядро из rhel.

Поэтому иногда все же появляется необходимость поставить пакеты из одного клона в другой. И чаще всего это прекрасно работает.

Также я, например, ставил пакеты из центоса в rhel, когда заканчивалась родная подписка в rhel и его репы в данной системе закрывались. Тоже прекрасно работает.

  1. Высокая совместимость есть.

Ставить пакеты с приложениями, которых нет в этих дистрах, вот что надо. Rhel очень маленький дистр. Там буквально ничего нет. Просто сравни количесто пакетов в centos или rhel и fedora. Тысячи и тысячи отсутствующих пакетов.

Но есть epel. Реп с сотнями пакетов самого необходимого ПО. И он прекрасно подключается ко всем rhel/centos/oracle клонам. И работает. Тоже самое с репами rpmfusion, и пакетами для rhel, которые лежат на сайтах авторов программ. Эти пакеты прекрасно работают во всех клонах rhel. Ради них вся это бинарно-пакетная совместимость и поддерживается.

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

Типа того. На 6 и 7 так было, если не считать, что в 7 стали обновлять Gnome, с каждым минорным дистрибутивов… перестали к 7.7

Толсто. Глянь с каким Firefox RHEL 7 вышел и с каким Firefox RHEL 7 сейчас.

Даже в ещё молодой восьмёрке вон на четыре поддерживаемые минорные версии три разных мажорных версии NSS.

t184256 ★★★★★ ()
Последнее исправление: t184256 (всего исправлений: 1)