Установка apt-get на redhat


9

Можно ли установить apt-getна redhat? У меня такое впечатление, что ты не можешь, но я просто хотел быть уверен. Если это возможно, жизнь будет намного проще при установке различных программ, особенно потому, что на yumсамом деле не так много доступных программ, как кажется.

Вот что я попробовал (только для записи):

Я пытался установить apt-get, следуя этим инструкциям, но у redhat нет dpkg, поэтому я вернулся к квадрату 1.

Я задаю этот вопрос, потому что мне трудно установить плагин для pidgin (pidgin-sipe), потому что yum install libglib2.0-devон терпит неудачу, что является для меня доказательством того, что наличие apt-get может быть полезным вложением.

Какие-либо предложения?


3
Для дальнейшего использования я также обнаружил, что это yum install pidgin-sipeработает. Оказывается, я не нуждался в ручной установке в конце концов, но в любом случае это был большой опыт обучения.
ajsmart

Ответы:


10

Вам не нужно заменять свой инструмент управления пакетами только потому, что пакет, кажется, отсутствует.

Каждый инструмент управления пакетами тесно интегрирован со своим дистрибутивом, и это не отличается от CentOS. aptхорошо интегрирован с Debian и его производными, и даже если они (Debian, Ubuntu, Mint, Knoppix ...) используют один и тот же инструмент для управления пакетами, их пакеты связаны и настроены с определенными версиями пакетов, которые в некоторых случаях будут работать только с конкретными зависимостями, которые имеет этот дистрибутив.

Что вам нужно, это установить пакет dev, glibспецифичный для redhat-подобных ОС:

yum install glib2-devel.x86_64

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

Как я узнал, что это было имя:

[root@ftp ~]# yum search glib2| grep dev
glib2-devel.i686 : A library of handy utility functions
glib2-devel.x86_64 : A library of handy utility functions
spice-glib-devel.i686 : Development files to build Glib2 applications with
spice-glib-devel.x86_64 : Development files to build Glib2 applications with

И показывая информацию о пакете, вы можете видеть, что это, похоже, тот же пакет для библиотеки dev:

[root@ftp ~]# yum info glib2-devel.x86_64
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.brisanet.com.br
 * extras: centos.brisanet.com.br
 * rpmforge-extras: apt.sw.be
 * updates: centos.brisanet.com.br
Available Packages
Name        : glib2-devel
Arch        : x86_64
Version     : 2.28.8
Release     : 9.el6
Size        : 300 k
Repo        : base
Summary     : A library of handy utility functions
URL         : http://www.gtk.org
License     : LGPLv2+
Description : The glib2-devel package includes the header files for the GLib library.

Кроме того, если вы не знакомы с поиском пакетов, этот онлайн-инструмент может помочь вам найти пакеты в наиболее распространенных дистрибутивах Linux: Поиск пакетов Linux


Я часто сталкиваюсь с этой проблемой, но есть ли эквивалент для всего? Я имею в виду, что если репозитории разные, для меня это означает, что у каждого будут программы / функции, которых у другого нет.
ajsmart

1
Наиболее распространенные консоли пакетов ( glib, linux-utils, iputils2, dos-utils, nmap, tcpdumpи много больше) и графические интерфейсы упаковываются в дистрибутивах, так что да, шанс велик , что если у вас есть пакет , доступный на Debianвас , возможно, его CentOSили это сообщество РЕПО;)

Это тот случай, когда разные дистрибутивы Linux имеют разные приоритеты, и это отражается в том, какие пакеты доступны. Если с этой проблемой вы часто сталкиваетесь, возможно, другой дистрибутив Linux имеет приоритеты, более похожие на ваши. distrowatch.com может быть полезным для сравнения.
bgvaughan

Но в этом конкретном случае вопрос, glibсвязанный с dev, - это то, что вы можете найти в большинстве дистрибутивов ...

@bgvaughan Я бы выбрал другой дистрибутив, но это связано с работой. К сожалению, у меня действительно нет выбора. Единственная поддерживаемая корпоративная версия Linux - это RHEL, но если бы у меня был выбор, я бы выбрал Ubuntu или одно из его производных.
ajsmart

12

TL; DR apt обычно не работает "из коробки" с дистрибутивами на основе Enterprise Linux, и вы все равно не найдете много репозиториев, которые вам подойдут.

Если у вас возникают проблемы с поиском нужного программного обеспечения в Red Hat, это потому, что в ваших репозиториях нет пакетов. То, что вы хотите посмотреть, это добавить различные репозитории. Для Red Hat Enterprise Linux первым репо, который обычно добавляют, является Extra Packages For Enterprise Linux (EPEL), размещенный в проекте Fedora. Скорее всего, вы найдете много того, что вам не хватает в этом репо.

Больше информации:

Хотя, безусловно, можно установить aptутилиты управления пакетами в системе Enterprise Linux, это не значит, что вы сможете что- то делать с ней, когда закончите.

Проблема заключается в том, что aptутилита - это программа, которая работает с опубликованными каталогами пакетов программ (для меня это обычное название репозитория, но оно может отличаться). Yum, rpm, dnf, emergeИ т.д., все утилиты на изменения * распределения Никс , которые делают то же самое. Но они сами не предлагают программное обеспечение, они настроены на запрос к репозиториям и предоставляют пакеты от них. Другая проблема заключается в том, что общие репозитории, которые вы находите в сети, часто создаются с настроенными для работы с собственными утилитами управления пакетами для ОС, для которой они предлагают программное обеспечение. Вы могли бы, вероятно, настроитьaptв вашей системе RHEL7 запрашивать репозитории Debian, но программное обеспечение, скорее всего, будет несовместимо с вашей системой из-за различий в том, как Debian и Red Hat строят, размечают, структурируют и конфигурируют свои операционные системы. Это похоже на попытку установить программное обеспечение Mac OS X в вашей системе Linux. Они оба технические * NIX, но они сильно различаются по тому, как они функционируют.


1
Итак, чтобы уточнить, вы, по сути, говорите, что мне не нужно, если у меня есть репозитории, добавленные в мою систему? (Спасибо за ссылку!)
ajsmart

Вам просто нужно найти пакет, «эквивалентный» вашему дистрибутиву. Посмотрите на мой ответ @ajsmart

Правильный! Apt - это инструмент для извлечения пакетов, обычно используемый дистрибутивами на основе Debian. Rpm, Yum и Dnf - это семейство инструментов, используемых Enterprise Linux. Репозитории, которые они используют, также различны, но не из-за инструментов, а из-за семейства ОС, для которого репозитории обслуживают программное обеспечение. Удачи и дайте нам знать, если вам нужно больше.
0xSheepdog

2

Я задаю этот вопрос, потому что у меня возникают некоторые трудности с установкой плагина для pidgin (pidgin-sipe), потому что yum install libglib2.0-dev не работает, что является доказательством того, что наличие apt-get может быть полезным вложением.

Краткий ответ: не совсем, нет.

Есть порт aptдля rpm, а именно apt-rpm . Его можно было использовать до относительно недавнего времени, но, насколько я знаю, Red Hat и его производные не поддерживают его, так что, возможно, это не так. Развитие, похоже, застопорилось с 2008 года, что не является многообещающим. Кроме того, apt-rpmего нельзя использовать с репозиториями yum, поэтому он бесполезен, если кто-то не создал rpmрепозитории, которые можно использовать с apt.

Был также вариант под названием apt4rpm, созданный Connectiva, но, похоже, он использовался даже реже, чем apt-rpm.

Установка собственного Debian в aptсистеме Red Hat - пустая трата времени, даже если она успешно установлена. dpkgдоступно для Red Hat, или, по крайней мере, раньше. Но попытка создать параллельную Debian-подобной операционной системы , используя dpkgи aptбыло бы полным без стартера, я думаю.

Я вспоминаю использование apt-rpmв системе Red Hat в 2006 году для базового системного администрирования. Если память служит, это была установка CentOS. Это все еще работало довольно хорошо тогда. Но это 2017 год, и я думаю, что apt-rpmсейчас он фактически мертв.

В любом случае, я сомневаюсь, что использование aptсистемы Red Hat, даже если она была доступна и работоспособна, будет иметь большое значение для вашего опыта. Причина, по которой aptхорошо работает Debian и его производные, заключается не в волшебном качестве apt. Это в основном из-за известного контроля качества Debian, хотя инструменты управления пакетами Debian ( dpkgи aptт. Д.) Могут быть признаны за хорошую разработку и реализацию.

Если вам нужен «удачный опыт», используйте Debian.


Но это не изменит потребности операционной системы для libglib2.0-devпакета ... и при установке aptне произойдет изменение имен пакетов ... Это все равно будет apt-get install glib2-devel.x86_64, и усилия, потраченные на установку, aptможно было бы лучше использовать для поиска пакета ...

Не хочешь объяснить отрицательный голос?
Фахим Митха

Удален понижающий голос. Ваша первая версия ответа почему-то привела к тому, что установка apt-rpmможет быть решением;)

@nwildner: я не понимаю, где я когда-либо подразумевал это.
Фахим Митха

1

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

Вы спросили, как установить систему управления пакетами Debian в системе Red Hat.

Система управления пакетами отслеживает, какие пакеты установлены в системе, облегчая установку и обновление пакетов, отслеживая зависимости и избегая конфликтов между пакетами. В частности, по двум последним причинам, разные системы управления пакетами принципиально несовместимы друг с другом; попытка использовать две разные системы одновременно, без очень тщательного наблюдения, быстро сделает вашу систему непригодной для использования, потому что вы фактически попытаетесь установить два разных дистрибутива Linux друг на друга.

Когда кто-то отображает семейное древо дистрибутивов Linux, основной точкой ветвления является выбор системы управления пакетами. Двумя наиболее распространенными системами являются система управления пакетами Debian, DPKG, и система управления пакетами Red Hat, RPM. «apt-get» - это интерфейс для использования системы DPKG, для работы которого требуется остальная часть набора инструментов; аналогично, «yum» - это интерфейс для использования системы RPM.

Иногда возможно преобразовать пакет из одной системы в другую. Чужой это приложение для этого. Обратите внимание, что это почти никогда не упоминается без предупреждения, что это ненадежно.

Если проблема, которую вы хотите решить, заключается в том, что вы хотите установить определенное приложение в системе Red Hat, то вам может оказаться, что лучше использовать пакет из другого дистрибутива Linux, использующего RPM; rpmfind может помочь вам в поиске. Немного надежнее найти исходный RPM и перестроить его в вашей системе; это уменьшает вероятность проблем с зависимостями от конкретных скомпилированных двоичных файлов. Или вы можете обойти управление пакетами, найдя исходный архив приложения и скомпилировав его.

Если проблема, которую вы хотите решить, состоит в том, чтобы в целом было доступно больше пакетов, то вам следует иметь в виду, что Red Hat Enterprise Linux по своей конструкции делает упор на стабильность, а его официальные репозитории относительно ограничены. Вы можете предпочесть использовать тесно связанный с ним Fedora Linux, который имеет гораздо больший выбор пакетов в своих официальных репозиториях, или вы можете перейти на Debian или один из его производных.


0

Как говорили другие люди в ответах выше, дистрибутивы и управление их пакетами тесно связаны. Если вам нужно установить вещи из репозиториев Debian или Ubuntu в дистрибутив на основе RPM, я считаю, что вам лучше всего установить соответствующий chroot (через debootstrap) и установить там все, что вам нужно. Тогда у вас будет Debian, работающий «рядом» с вашим дистрибутивом.

Затем вы можете установить символические ссылки и / или сценарии, которые запускают любое приложение, которое вы установили из chroot - и это работает также для графических приложений. Я делал это по причинам «песочницы» с различными приложениями, но ваше также является веской причиной. Debian в Docker-контейнере - это похожая опция, которую вы можете попробовать - в основном, гораздо более удобная песочница chroot.


-2

Этот урок, кажется, показывает это: http://everyday-tech.com/apt-get-on-centos/

Однако проблема, с которой вы сталкиваетесь с меньшим количеством пакетов, заключается в том, что у вас не так много репозиториев или имена пакетов отличаются (например: apache2 на основе debian и httpd на основе red hat).

Вы можете использовать: yum searchчтобы найти пакеты

Вот документ о том, как добавить репозитории yum:

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/sec-Managing_Yum_Repositories.html

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.