Я был знаком с приложением ALien довольно давно, но никогда не приходилось применять ее на практике. Но вот наконец-то дошло время ее пощупать.
На странице руководства Alien сказано, что это программа, которая конвертирует форматы файлов Red Hat rpm, Debian deb, Stampede slp, Slackware tgz и Solaris pkg. По сути, это означает, что если нам не хватает какого-либо пакета в выбранном дистрибутиве Linux, мы можем преобразовать этот пакет из другого дистрибутива и попытаться установить его в нашем.
Однако Alien не следует использовать для замены каких-либо важных системных пакетов или другого ПО, жизненно важного для функционирования системы.
Преобразование пакета Htop .deb в .rpm и установка на CentOS
Идея воспользоваться приложением возникла , когда я настроил свой тестовый сервер CentOS и уже собирался установить свою любимую программу просмотра процессов htop, когда yum внезапно сообщил мне, что пакет htop недоступен.
Учитывая, что пакет htop .rmp доступен для скачивания в Интернете, но интересно было все таки попробовать использовать alien. Итак, у нас есть два сервера, которые буду использовать для тестирования
Debian:
root@debian# uname -rv
6.1.0-25-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.106-3 (2024-08-26)
Centos 9 Stream:
root@centos# uname -rv
5.14.0-370.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Sep 27 17:54:51 UTC 2023
На Debian уже установлен htop. Теперь нам нужно установить Alien:
root@debian# apt update && apt install rpm alien -y
Загрузим пакет htop не устанавливая:
root@debian# apt install -d htop
Преобразуем пакет htop .deb в .rpm:
root@debian# alien --to-rpm /var/cache/apt/archives/htop_3.2.2-2_amd64.deb
htop-3.2.2-3.x86_64.rpm generated
Проверим
root@debian# ls
htop-3.2.2-3.x86_64.rpm
Выглядит хорошо. Теперь нам нужно перенести файл .rpm с сервера Debian на CentOS:
root@centos# scp root@debian:/root/htop-3.2.2-3.x86_64.rpm ./
root@debian's password:
htop-3.2.2-3.x86_64.rpm 100% 180KB 14.1MB/s 00:00
Поскольку обе машины предназначены для тестирования и не имеют публичного доступа по ssh, для удобства я использую пользователя root.
Теперь давайте попробуем установить пакет:
root@centos# rpm -ihv ./htop-3.2.2-3.x86_64.rpm --nodeps
Verifying... ################################# [100%]
Preparing... ################################# [100%]
Updating / installing...
1:htop-3.2.2-3 ################################# [100%]
В информации о пакете можно увидеть, что он был сконвертирован из другого формата пакета:
# rpm -qi htop
Name : htop
Version : 3.2.2
Release : 3
Architecture: x86_64
Install Date: Thu 07 Nov 2024 10:10:08 AM UTC
Group : Converted/utils
Size : 366998
License : see /usr/share/doc/htop/copyright
Signature : (none)
Source RPM : htop-3.2.2-3.src.rpm
Build Date : Thu 07 Nov 2024 09:47:31 AM UTC
Build Host : debian
Summary : interactive processes viewer
Description :
Htop is an ncursed-based process viewer similar to top, but it
allows one to scroll the list vertically and horizontally to see
all processes and their full command lines.
Tasks related to processes (killing, renicing) can be done without
entering their PIDs.
(Converted from a deb package by alien version 8.95.6.)
Проверим работу установленного пакета
centos@root# htop
Заключение.
Все работает. Пакет установился и проблем в работе не вызывает. Делаем вывод, что alien годное приложение и его можно использовать в работе, но сильно не увлекаться ).
Was this helpful?
0 / 0