2012-04-23 7 views
8

Esiste un rischio di utilizzare più gestori di pacchetti? Potrei usare Redhat's yum con l'attitudine di Debian allo stesso tempo?Gestore pacchetti multipli

mi sono imbattuto in this article e questa infografica - 2011 Linux Distro comparison result

ero propenso a scegliere Debian, ma un rapido VM installazione ha dimostrato che il kernel non viene aggiornato a 3.2 nel repository stabile ancora. Quindi sto programmando di trasferirmi su Archlinux, ma l'infografica è bassa sulla disponibilità del pacchetto e mi chiedevo se potevo installare file .deb o .rpm dai repository Fedora o Ubuntu.

+0

Mi chiedo se abbia usato gimp nello spirito di Linux per creare questi elementi grafici. –

+1

Vota per chiudere: qualcuno con autorità può spostarlo nel forum giusto? unix.stackexchange.com? –

risposta

7

La risposta breve è sì sì può, ma in realtà non è necessario .

Ecco un elenco delle cose (in nessun ordine particolare) da considerare quando cross-distribuzione installazione:

  • Dipendenza inferno

Il motivo principale esistono cose come yum/apt/yast in il primo posto è quello di evitare quello che è noto come dependency hell. Usando pacchetti da altri sistemi, si perde il lavoro che è stato inserito nei pacchetti dall'installazione pulita.

Il gestore di pacchetti secondario vorrà soddisfare le proprie dipendenze e installare un sacco di cose che sono già installate. Ciò significa che devi installare i pacchetti un pezzo alla volta in modo da non sovrascrivere i pacchetti già installati dal gestore di pacchetti primario e avere tutti i tipi di problemi.

  • Usano lo stesso gestore di pacchetti?

Se lo fanno, si può anche essere in grado di installarlo completamente, ma probabilmente si avranno problemi di dipendenza o conflitti di pacchetti. Se non lo fanno, puoi estrarre il pacchetto con vari strumenti e solo disporre i file binari sul file system (dare un'occhiata a alien, o this post about extracting .rpm and .deb files).

In questo modo otterrete i file sul sistema, ma non è garantito che funzionerà immediatamente. Qualche caccia manuale aggiuntiva può essere (e di solito è) richiesta.

  • Le versioni dei pacchetti di base come glibc sono uguali o molto simili?

Se è così, c'è meno possibilità di un problema. L'ulteriore differenza tra i pacchetti di base delle due distribuzioni, maggiore è la probabilità che manchino le librerie condivise che non sono disponibili nella distribuzione su cui si sta eseguendo, perché la versione è diversa e il nome del file non corrisponde a ciò che il binario è cercando.

Tecnicamente è anche possibile estrarre le dipendenze di base dall'altra distribuzione e inserirle nel filesystem, ma questo sicuramente causerà dolore nel caso in cui dovessi aver bisogno di compilare le cose dal sorgente. Immagina quanto sarà confuso GCC.

  • Il pacchetto che si sta installando richiede un modulo kernel specifico?

Il modo migliore che dare voce a questo è un problema comune che vedo in questi giorni con l'acquisto di macchine virtuali da un host web; si ottiene il proprio marchio di kernel xen o virtuozzo, e iptables non funziona a priori perché netfilter è nel kernel e l'ABI è cambiato. Può essere abbastanza difficile riuscire a farlo funzionare di nuovo, e questo problema non è limitato a iptables. Il mio miglior consiglio qui è scegliere la distribuzione che ha il kernel che si desidera nel proprio repository di base.

  • compilazione dai sorgenti

Non c'è dubbio che si dovrà fare questo si dovrebbe ottenere molto in profondità nel voler pacchetti da altri sistemi. Poiché le varie distribuzioni configurano in modo diverso i loro ambienti di costruzione, trascorrerai metà del tempo a capire il percorso e altri problemi di configurazione.

+2

Grazie mille :-) Questa è una risposta molto bella. Vorrei che questa domanda fosse stata spostata piuttosto che essere chiusa. –