Mam palącą chęć zainstalowania RPM w mojej instalacji Ubuntu - czy to możliwe? Czy mogę użyć Yum - lub innego narzędzia do zarządzania pakietami RPM?
Mam palącą chęć zainstalowania RPM w mojej instalacji Ubuntu - czy to możliwe? Czy mogę użyć Yum - lub innego narzędzia do zarządzania pakietami RPM?
Odpowiedzi:
Czy mogę użyć Yum
Nie poleciłbym tego. Prawdopodobnie mógłbyś go skompilować, ale nie miałbyś żadnych repozytoriów pakietów kompatybilnych z Ubuntu.
Państwo może przekształcić pojedyncze pliki RPM do DEBS z obcymi:
sudo apt-get install alien
sudo alien my_package.rpm
sudo dpkg -i my_package.deb
Uwaga: może zmienić nieco nazwę pliku, a nie tylko rozszerzenie.
To nie zadziała, ponieważ pakiety łączą się z innymi pakietami w celu spełnienia zależności. Oczywiście Red Hat / Fedora / CentOS używa różnych nazw pakietów dla Ubuntu, więc prawdopodobnie spotkasz się z całym ciężarem bólu.
Są szanse, że jeśli DEB nie istnieje, lepiej będzie po prostu zdobyć źródło i skompilować je.
make install
i jest bardzo przydatny, aby mieć go przy sobie. Zdolność do usuwania pakietów to zdecydowanie plus!
checkinstall
doskonale nadaje się do utrzymywania własnej kompilacji w spakowanym środowisku, ale ma pewne dziwactwa, które czasami oznaczają, że coś, co zostanie zainstalowane make install
, nie zostanie zainstalowane. Używam go, kiedy mogę.
alien --install my_package.rpm
.
error while loading shared libraries: libreadline.so.7
Musisz to alien
zrobić.
sudo apt-get install alien
Spowoduje to zainstalowanie wszystkich wymaganych pakietów. Teraz możesz rozpocząć konwersję plików .rpm do pakietów .deb.
Dostępne opcje dla alien
:
Przekształć plik package.rpm w plik package.deb
sudo alien -d package-name.rpm
Konwertuj package.rpm
na a package.deb
i zainstaluj wygenerowany pakiet.
alien -i package-name.rpm
Jeśli chcesz powstrzymać kosmitę przed zmianą numeru wersji, użyj następującego polecenia
alien -k rpm-package-file.rpm
Krótka odpowiedź brzmi : nie!
Jeśli masz RPM, który jest tak ważny, że musisz go mieć, prawdopodobnie jest też pakiet Ubuntu; a jeśli nie, prawdopodobnie warto spróbować skompilować go ze źródła do formatu pakietu Debiana (z którego korzysta także Ubuntu). Są chwile, w których nie można po prostu ponownie skompilować oprogramowania (jeśli nie jest to oprogramowanie typu open source, jest to niemożliwe) iw takim przypadku możesz użyć alien
programu. Ale instalacja z RPM przypomina trochę wsadzenie benzyny do samochodu z silnikiem Diesla - może działać, ale na dłuższą metę nie skorzystasz!
Aby zbudować pakiet ze źródła, na Wiki Ubuntu znajduje się przewodnik ; istnieje również program o nazwie checkinstall, który może wykonywać pewne sztuczki z domyślnym drzewem źródłowym bez ustawiania instrukcji kompilacji dla pakietu. Jeśli uważasz, że ktoś inny może skorzystać z kompilowanych programów, możesz skonfigurować repozytorium na starterze i udostępnić dobroć pakietu!
Jeśli naprawdę potrzebujesz zainstalować RPM w swoim systemie, powinieneś spróbować przekonwertować je za pomocą „obcych”.
Należy pamiętać, że domyślnie „obcy” wtrąca się w numer wersji pakietu. Jeśli chcesz, aby numer wersji pozostał taki sam, podaj opcję „-k” podczas konwersji.
Nie powinieneś próbować używać Yum ani żadnego innego sposobu instalowania RPM, takich jak apt-rpm, same obok istniejących pakietów DEB. Systemy DEB i RPM osobno zarządzają listą zainstalowanego oprogramowania i dlatego nie wiedzą, jakie pakiety zostały wcześniej zainstalowane przez inny system. Jeśli np. Spróbujesz zainstalować aplikację z graficznym interfejsem użytkownika z systemem zarządzania pakietami opartym na RPM, spróbuje ona zainstalować istotne komponenty systemu, ponieważ uważa, że nie zostały jeszcze zainstalowane. Spowoduje to albo straszne niepowodzenie instalacji, albo zastąpi ważne pliki systemowe.
Na repozytoriach jest menedżer pakietów GUI o nazwie SmartPM, może on obsługiwać pliki .deb ORAZ .RPM. Firma Canonical przyczyniła się do powstania tego projektu do listopada 2009 r.
Strona główna projektów znajduje się tutaj https://github.com/smartpm/smart
Alien to narzędzie, które konwertuje z jednego formatu (.deb lub .rpm) na inny (.deb, .rpm lub tarball)
Alien nie jest zalecany do konwersji z .deb na .rpm, jest idealny do konwersji .deb na tarballe
Chociaż Alien próbuje zachować metadane podczas konwersji, ale nadal będą występowały problemy z metadanymi i zależnościami, co spowoduje, że pakiet będzie mniej niezawodny, a zatem wystąpią konflikty przy dodawaniu lub usuwaniu pakietów zakłóceń w przyszłości.
Właściwie najkrótsza opcja to
sudo alien -i -k packagename.rpm
Nie masz kosmity? Dostać jeden!
sudo apt-get install alien
Alien przekonwertuje pakiet rpm na pakiet deb, opcja -i oznacza instalację przekonwertowanego pakietu po konwersji, a opcja -k zapewnia, że wersja nie będzie +1 po konwersji.
Postępuj zgodnie z tymi instrukcjami:
alien -k avg71lms-r30-a0782.i386.rpm
Teraz powinieneś mieć avg71lms-r30-a0782.i386.deb
plik.
Aby zainstalować plik .deb:
dpkg -i avg71lms-r30-a0782.i386.deb
Jeśli nie użyjesz -k
opcji, powinieneś zobaczyć avg71lms_r30-1_i386.deb
plik, różnica polega na tym, że doda 1.
Zainstaluj Alien w Ubuntu:
sudo apt-get install alien
Możesz sprawdzić powyższą sekcję pod kątem dostępnych opcji
W programie Alien mogę po prostu przekonwertować plik .rpm na plik .deb i po prostu go zainstalować.
Alien jest dostępny w zwykłych repozytoriach Debiana, więc możemy go zainstalować w następujący sposób:
sudo apt-get install alien
Aby przekonwertować go na pakiet .deb, po prostu uruchamiamy
alien *.rpm
--scripts
(lub -c
)
użyj alien, który konwertuje rpm na deb, a następnie instaluje deb.
Oto GUI dla Alien (alien to aplikacja do konwersji rpm na deb)