2011-01-07 13 views
8

È possibile che un singolo pacchetto rpm appartenga a più gruppi?Diversi gruppi nel pacchetto RPM

Nel file di specifica è possibile impostare gruppo di pacchetti:

Gruppo: Ambiente di sistema/Base

cosa ho bisogno è di essere in grado di impostare diversi gruppi per questo pacchetto (come System|Util|MyCompanyName) - sarebbero come tag assegnati al pacchetto.

Quando il pacchetto è installato voglio interrogare è come

rpm -q --group System 

o

rpm -q --group MyCompanyName 

e in entrambi i casi dovrei vedere il mio pacchetto (e altri appartenenti a questo gruppo)


Modifica:

Molti pacchetti possono appartenere al gruppo MyCompanyName, ma solo alcuni possono essere installati. Ho bisogno di un modo per differenziare i nostri pacchetti dai pacchetti di sistema Linux - avevo intenzione di farlo utilizzando il nome del gruppo


Ho provato a mettere diverse Group: linee, ma utilizza solo l'ultimo. Tutto dopo Group: sembra essere preso come una stringa e non sono riuscito a trovare un modo per dividerli.

Un'altra soluzione che mi veniva in mente sta mettendo questa roba come PROVIDES e poi per interrogare

rpm -q --whatprovides System 

ma non mi piace in questo modo.

Esiste un altro modo per realizzare la funzionalità richiesta?

risposta

6

Il modo corretto per specificare il nome della società è tramite il tag vendor Ti piace questa:

Vendor: Yoyodyne, Inc. 

Per ottenere una lista dei pacchetti da parte del fornitore è possibile eseguire questo comando:

rpm -qa --qf '%{NAME} %{VENDOR}\n' | grep -v Yoyodyne 

Un RPM può appartenere solo a un gruppo. Inoltre, i gruppi consentiti sono definiti dalla distribuzione.Ad esempio, ecco l'elenco dei gruppi validi per Mandriva:

http://wiki.mandriva.com/en/Development/Packaging/Groups

di trovare i gruppi validi per un particolare distribuzione spesso è necessario eseguire il gestore di pacchetti per quella distro e guardare la lista.

RPM non è definito come il formato del pacchetto Debian. Non sembra esserci documentazione ufficiale o completa.

http://www.rpm.org/max-rpm/s1-rpm-inside-tags.html

+0

sì, funzionerà con il nome dell'azienda, è triste però che rpm non abbia un modo conveniente per interrogare con questo parametro –

+0

poiché la tua soluzione è l'unica che posso usare la scelgo come risposta –

3

AFAIU, gli RPM devono appartenere a un singolo Gruppo nel file GROUPS di RPM o avere il Gruppo non specificato. Non posso avere più di uno.

2

Potrebbe essere possibile definire i gruppi a livello di repository anziché a livello di pacchetto utilizzando yum groups. Una volta definiti i gruppi, dovresti essere in grado di utilizzare il comando "yum groupinfo" per vedere i pacchetti in ogni gruppo.

+0

che è interessante, vado a controllare se siamo in grado di usarlo, grazie –

+0

purtroppo non aiuta di vedere quali pacchetti opzionali dal gruppo data sono installati sul sistema, quindi è conveniente soprattutto quando hai gruppi statici in cui devono essere installati tutti i pacchetti –