Ho un ardente desiderio di installare RPM sulla mia installazione di Ubuntu - è possibile? Posso usare Yum - o un altro strumento di gestione dei pacchetti RPM?
Ho un ardente desiderio di installare RPM sulla mia installazione di Ubuntu - è possibile? Posso usare Yum - o un altro strumento di gestione dei pacchetti RPM?
Risposte:
Posso usare Yum
Non lo consiglierei. Probabilmente potresti compilarlo ma non avresti nessun repository di pacchetti compatibili con Ubuntu da gestire.
È possibile convertire i file singoli RPM in DEBs con Alien:
sudo apt-get install alien
sudo alien my_package.rpm
sudo dpkg -i my_package.deb
Nota: potrebbe cambiare il nome del file un po 'più dell'estensione.
Questo non funzionerà per tutto poiché i pacchetti si collegano ad altri pacchetti per soddisfare le dipendenze. Ovviamente Red Hat / Fedora / CentOS usano nomi di pacchetti diversi rispetto a Ubuntu, quindi è probabile che si verifichi un sacco di dolore.
È probabile che se non esista un DEB, starai meglio semplicemente ottenendo il sorgente e compilarlo.
make install
ed è molto utile avere in giro. Essere in grado di rimuovere i pacchetti è sicuramente un vantaggio!
checkinstall
è ottimo per mantenere un autocostruito in un ambiente compresso ma ha alcune stranezze che a volte significano che qualcosa che verrà installato attraverso make install
non verrà installato. Lo uso quando posso.
alien --install my_package.rpm
.
error while loading shared libraries: libreadline.so.7
Dovrai alien
farlo.
sudo apt-get install alien
Questo installerà tutti i pacchetti richiesti. Adesso puoi iniziare a convertire i tuoi file .rpm in pacchetti .deb.
Opzioni disponibili per alien
:
Converti package.rpm in package.deb
sudo alien -d package-name.rpm
Converti package.rpm
in a package.deb
e installa il pacchetto generato.
alien -i package-name.rpm
Se si desidera impedire a alien di modificare il numero di versione, utilizzare il comando seguente
alien -k rpm-package-file.rpm
La risposta breve è: No!
Se hai un RPM così importante che devi averlo, probabilmente c'è anche un pacchetto Ubuntu; e, in caso contrario, probabilmente vale la pena affrontare il problema di compilarlo dal sorgente nel formato del pacchetto Debian (che usa anche Ubuntu). Ora, ci sono alcuni momenti in cui non puoi semplicemente ricompilare il software (se non è open source è impossibile) e in quel caso puoi usare il alien
programma. Ma installare da RPM è un po 'come mettere benzina in un'auto diesel: potrebbe funzionare, ma non ne trarrai beneficio a lungo termine!
Per compilare un pacchetto dal sorgente, c'è una guida sul wiki di Ubuntu; esiste anche un programma chiamato checkinstall che può eseguire alcuni trucchi con un albero dei sorgenti predefinito senza impostare istruzioni di compilazione per il pacchetto. Se pensi che qualcun altro possa beneficiare dei programmi che compili, puoi impostare un repository su launchpad e condividere la bontà del pacchetto!
Se hai davvero bisogno di installare RPM sul tuo sistema, dovresti davvero provare a convertirli usando 'alien'.
Tieni presente che per impostazione predefinita 'alien' si intromette con il numero di versione del pacchetto. Se vuoi che il numero di versione rimanga lo stesso, passa l'opzione '-k' durante la conversione.
Non dovresti provare a usare Yum o qualsiasi altro modo di installare gli RPM, come apt-rpm, accanto ai pacchetti DEB esistenti. I sistemi DEB e RPM gestiscono separatamente l'elenco dei software installati e quindi non sanno quali pacchetti sono stati installati in precedenza dall'altro sistema. Se, ad esempio, provi a installare un'applicazione con interfaccia grafica con un sistema di gestione dei pacchetti basato su RPM, proverà a installare i componenti di sistema vitali stessi, perché pensa che non siano ancora installati. Ciò causerà un errore orribile dell'installazione o sovrascriverà i file di sistema vitali.
C'è un gestore di pacchetti GUI chiamato SmartPM su Repos, in grado di gestire .deb AND .RPM. Canonical ha contribuito a questo progetto fino a novembre 2009.
La home page dei progetti è qui https://github.com/smartpm/smart
Alien è uno strumento che converte da un formato (.deb o .rpm) a un altro (.deb, .rpm o tarball)
Si sconsiglia l'uso di Alien nella conversione da .deb a .rpm, perfetto per la conversione da .deb a tarball
Sebbene Alien tenti di conservare i metadati durante la conversione, ma avrà comunque problemi con metadati e dipendenze, renderà il pacchetto meno affidabile e quindi si verificheranno conflitti durante l'aggiunta o la rimozione di pacchetti di distribuzione in futuro.
L'opzione più corta è
sudo alien -i -k packagename.rpm
Non hai un alieno? Prendine uno!
sudo apt-get install alien
Alien convertirà il pacchetto rpm in pacchetto deb, l'opzione -i indica l'installazione del pacchetto convertito dopo la conversione e l'opzione -k garantisce che la versione non sia +1 dopo la conversione.
Segui queste istruzioni:
alien -k avg71lms-r30-a0782.i386.rpm
Ora dovresti avere un avg71lms-r30-a0782.i386.deb
file.
Per installare il file .deb:
dpkg -i avg71lms-r30-a0782.i386.deb
Se non usi l' -k
opzione dovresti vedere il avg71lms_r30-1_i386.deb
file la differenza è che aggiungerà 1.
Installa alien in Ubuntu:
sudo apt-get install alien
È possibile controllare la sezione precedente per le opzioni disponibili
Con alien posso semplicemente convertire il file .rpm in un file .deb e installarlo semplicemente.
Alien è disponibile nei normali repository Debian, quindi possiamo installarlo in questo modo:
sudo apt-get install alien
Per convertirlo in un pacchetto .deb, eseguiamo semplicemente
alien *.rpm
--scripts
(o -c
)
usa alien che converte l'rpm in deb e successivamente installa il deb.
Ecco una GUI per Alien (alien è un'applicazione per convertire rpm in deb)