Avatar billede jets Nybegynder
02. september 2004 - 14:15 Der er 8 kommentarer og
1 løsning

rpm - ang. uninstall og dependencies

Jeg vil høre om man kan gøre følgende med rpm, og hvis ja, hvordan:

Jeg har brug for at afinstallere en hel del pakker. Jeg vil gerne have at den også afinstallere pakker der evt. er afhængige af den pakke jeg vil af med, og hvis det er muligt, køre en simulering af det først, så jeg kan se hvad den trækker med ud.

Kort sagt:
1) "rpm -e XFree86-Mesa-libGL" <--- der skal et parameter på, så den tager evt. dependencies med sig. Kan man det?
2) "rpm -e -<deps-ryger-med> XFree86-Mesa-libGL" <--- der skal et parameter på, så den blot simulerer hvad den vil gøre, og fortæller mig hvad den gør. Muligt?

På forhånd tak for hjælpen og spørg endelig hvis jeg har formuleret mig uklart - det er lidt svært at beskrive.
Avatar billede Slettet bruger
02. september 2004 - 23:20 #1
Jeg er ikke den store RPM-haj, men så vidt jeg husker vil rpm -e pakkenavn helt af sig selv hive de ting, der kræver den fjernede pakke ud også, og jeg mener også, at den vil spørge først, hvis der vil blive fjernet flere pakker, end der er udtrykkeligt nævnt på kommandolinien.

Eller kort sagt: Hvis jeg husker rigtigt, er "rpm -e XFree86-Mesa-libGL" lige den kommando, du skal bruge.

Hvis du vil sikre dig inden, kan du få at vide, hvad den vil gøre med --test: "rpm -e --test XFree86-Mesa-libGL"
Avatar billede jets Nybegynder
03. september 2004 - 08:27 #2
Desværre :(
# sudo rpm -e XFree86-Mesa-libGL
error: Failed dependencies:
        libGL.so.1 is needed by (installed) redhat-lsb-1.3-3
        libGL.so.1 is needed by (installed) XFree86-libs-4.3.0-62.EL

Den beklager sig over dependencies, men fjerner dem ikke. Ang. "--test" parametren, så tror jeg at det besvarer mit spørgsmål 2! så nu er det bare et spørgsmål om at få hevet dependencies med :)
Avatar billede Slettet bruger
03. september 2004 - 15:11 #3
Da jeg ikke har et RPM-baseret system til rådighed i økeblikket, kan jeg ikke selv afprøve kommandoen for at se formatet, men du kan måske bruge:

rpm -q --what-requires XFree86-Mesa-libGL

Hvis den kun udskriver selve pakkenavnene uden versionsnumre, kan den måske bruges således:

rpm -e XFree86-Mesa-libGL `rpm -q --what-requires XFree86-Mesa-libGL`

PS. Vær sikker på, at du bruger den rigtige flueklat. På et dansk tastatur kommer den når du holder SHIFT inde og trykker på tasten ved siden af backspace. (Hvis du bruger deadkeys-opsætning skal du taste et mellemrum bagefter.)
Avatar billede Slettet bruger
03. september 2004 - 15:12 #4
Hvis det stadig ikke er nok, skal vi ud i noget lidt mere avanceret scripting, men det kan også lade sig gøre.
Avatar billede jets Nybegynder
03. september 2004 - 15:39 #5
Du får lige output, så du kan se :)

[root@www]# rpm -q --whatrequires XFree86-Mesa-libGL
no package requires XFree86-Mesa-libGL

[root@www]# rpm -e XFree86-Mesa-libGL `rpm -q --whatrequires XFree86-Mesa-libGL`
error: package no is not installed
error: package package is not installed
error: package requires is not installed
error: Failed dependencies:
        libGL.so.1 is needed by (installed) redhat-lsb-1.3-3
        libGL.so.1 is needed by (installed) XFree86-libs-4.3.0-68.EL

Jeg har efterfølgende fundet ud af, at "whatrequires" og "whatprovides" åbenbart fungerer på filniveau (desværre), fx:

[root@www]# rpm -q --whatrequires libGL.so.1
redhat-lsb-1.3-3
XFree86-libs-4.3.0-68.EL

Du har ret i at man nok skal ud i noget større script-værk! Sagen er, at jeg har en RHEL3, som for en minimum-install installerer (hold fast!) 254 pakker. De fleste kan - og vil - jeg godt undvære, og istedet for manuelt at gå dem igennem, og lave reverse-engineering hver gang der dukker en dependency op (suk), så kunne det være smart, hvis det kunne gøres automagisk :)
Jeg har desværre ikke tid i weekenden til at rode med den, men hvis jeg er frisk nok, så på mandag :) Tak for hjælpen, så vidt!
Avatar billede Slettet bruger
03. september 2004 - 15:57 #6
Jeg har heller ikke tid i weekenden, men jeg vil prøve at huske at vende tilbage mandag.
Avatar billede oz2kas Nybegynder
03. september 2004 - 17:08 #7
Ville lige hilse på og spørge om du har overvejet Debian?
Du "kan nøjes" med at installere et basesystem, og så køre derfra hvilket fylder under 400Mb. :-)

Jeg ønsker ikke at starte religions- distributionskrig :-)
Avatar billede jets Nybegynder
03. september 2004 - 19:59 #8
oz2kas, helt i orden :) Den Redhat dunk jeg slåsser med, er en dunk på arbejdet, og de har en politik for Redhat-only (og jeg ved ikke om du kender det, men så er der ikke noget at diskutere). Herhjemme kører jeg debian (og har gjort i flere år :)
Avatar billede jets Nybegynder
10. september 2004 - 11:06 #9
lukker.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester