5.5. Сосуществование с другими пакетными системами
Пакеты Debian — это не единственный формат пакетов, используемый в мире свободного ПО. Основным конкурентом является формат RPM из дистрибутива Red Hat Linux и его многочисленных производных. Red Hat — очень популярный коммерческий дистрибутив. Поэтому программное обеспечение, предоставяемое третьими сторонами, как правило распространяется в виде пакетов RPM, а не Debian.
Столкнувшись с такой ситуацией, важно знать, что программа rpm
, работающая с RPM-пакетами, доступна в виде пакета Debian, что делает возможным использование этого формата пакетов в Debian. Но нужно быть крайне осторожным и ограничиться такими операциями, как получение информации о пакете или проверка его целостности. Устанавливать пакеты RPM с помощью rpm
в Debian неблагоразумно; RPM использует свою собственную базу данных, отличную от используемой «родным» ПО (таким как dpkg
). По этой причине невозможно гарантировать стабильное сосуществование двух пакетных систем.
С другой стороны, утилита alien может преобразовывать пакеты RPM в Debian и наоборот.
$
fakeroot alien --to-deb phpMyAdmin-5.2.1-2.fc39.src.rpm
[..]
Warning: Skipping conversion of scripts in package phpMyAdmin: postinst
Warning: Use the --scripts parameter to include the scripts.
[..]
phpmyadmin_5.2.1-3_all.deb generated
$
ls -sh phpmyadmin_5.2.1-3_all.deb
7.2M phpmyadmin_5.2.1-3_all.deb
$
dpkg -c phpmyadmin_5.2.1-3_all.deb
drwxr-xr-x root/root 0 2024-05-21 20:49 ./
-rw-r--r-- root/root 7461668 2023-02-08 01:15 ./phpMyAdmin-5.2.1-all-languages.tar.xz
-rw-r--r-- root/root 833 2023-02-08 01:15 ./phpMyAdmin-5.2.1-all-languages.tar.xz.asc
-rw-r--r-- root/root 1077 2023-07-20 20:00 ./phpMyAdmin-bundled.php
-rw-r--r-- root/root 637 2023-07-20 20:00 ./phpMyAdmin-certs.patch
-rw-r--r-- root/root 1181 2023-07-20 20:00 ./phpMyAdmin.htaccess
-rw-r--r-- root/root 430 2023-07-20 20:00 ./phpMyAdmin.nginx
-rw-r--r-- root/root 38997 2023-07-20 20:00 ./phpMyAdmin.spec
-rw-r--r-- root/root 34198 2023-07-20 20:00 ./phpmyadmin.keyring
drwxr-xr-x root/root 0 2024-05-21 20:49 ./usr/
drwxr-xr-x root/root 0 2024-05-21 20:49 ./usr/share/
drwxr-xr-x root/root 0 2024-05-21 20:49 ./usr/share/doc/
drwxr-xr-x root/root 0 2024-05-21 20:49 ./usr/share/doc/phpmyadmin/
-rw-r--r-- root/root 214 2024-05-21 20:49 ./usr/share/doc/phpmyadmin/changelog.Debian.gz
-rw-r--r-- root/root 1303 2024-05-21 20:49 ./usr/share/doc/phpmyadmin/copyright
[..]
$
dpkg -I phpmyadmin_5.2.1-3_all.deb
new Debian package, version 2.0.
size 7500852 bytes: control archive=1092 bytes.
583 bytes, 15 lines control
618 bytes, 10 lines md5sums
446 bytes, 11 lines * postinst #!/bin/sh
Package: phpmyadmin
Version: 5.2.1-3
Architecture: all
Maintainer: debian <debian@debian>
Installed-Size: 7377
Section: alien
Priority: extra
Description: A web interface for MySQL and MariaDB
phpMyAdmin is a tool written in PHP intended to handle the administration of
MySQL over the Web. Currently it can create and drop databases,
create/drop/alter tables, delete/edit/add fields, execute any SQL statement,
manage keys on fields, manage privileges,export data into various formats and
is available in 50 languages
.
(Converted from a rpm package by alien version 8.95.6.)
Как вы можете убедиться, тут нет ничего сложного. Не забывайте, однако, что созданный пакет не содержит никакой информацию о зависимостях, поскольку зависимости в двух форматах пакетов не имеют строгого соответствия друг другу. Поэтому администратору придется вручную проверить работоспособность преобразованного пакета, и это является главной причиной, по которой следует избегать использования полученных таким образом пакетов Debian. К счастью, в репозиторях Debian находится самый большой набор пакетов программного обеспечения, и скорее всего то, что вы ищете, там уже есть.
Заглянув на страницу man команды alien
, вы заметите, что эта программа может работать и с другими форматами пакетов, в частности с используемым в дистрибутиве Slackware (там используются самые обычные архивы tar.gz
).
The stability of the software deployed using the
dpkg
tool contributes to Debian's fame. The
APT suite of tools, described in the following chapter, preserves this advantage, while relieving the administrator from managing the status of packages, a necessary but difficult task.