Wie aktualisiere ich nur bestimmte Paketabhängigkeiten?

7

Lassen Sie uns sagen , dass ich ein Paket haben , Adas hat Depends: B (>= 1.0.0)in seiner controlDatei.

Das Bwurde vor Aeiniger Zeit als Abhängigkeit mit der 1.0.0Version installiert .

Jetzt Bwurde im Repository auf die 1.0.42Version aktualisiert und ich möchte upgradees.

Was ich nicht gerne mache: apt-get install BDa es Bals "manuell installiertes" Paket markiert ist (nicht sicher, wie man es richtig benennt), wird es nicht entfernt, autoremovewenn ich mich entscheide, die Verwendung Ajemals einzustellen.

Gibt es also ein Analogon apt-get upgrade, das nur ein bestimmtes Paket und seine Abhängigkeiten aktualisiert (wahrscheinlich rekursiv, es spielt in meinem Fall keine Rolle, da Bes von nichts anderem abhängt)?

PS: Ich frage nach derzeit verfügbaren LTS-Versionen. Also 10.04 und 12.04

zerkms
quelle
1
apt-get install --only-upgrade könnte Muster bestehen .. aber ich bin nicht sicher.
Seth
@ Seth: Hm, ich sehe keine solche Option in man
zerkms
1
Welche Ubuntu-Version? Denken Sie zumindest in Version 13.04 nicht an frühere Versionen. apt-get install BWenn Sie das Paket aktualisieren, sollte es nicht als manuell installiert markiert werden. Solange es eine neue Version dafür im Repo nach dir gibtapt-get update
Dan
@ Dan: LTS diejenigen, sorry, das habe ich ursprünglich nicht erwähnt
zerkms
@Dan: habe es gerade überprüft - die explizite Installation eines Pakets mit apt-get install * markiert ein Paket als manuell installiert. Überprüfte es in 12.04 mit apt-mark showauto. Es kann mit apt-markobwohl
zerkms

Antworten:

6

Nun, wenn es keine andere Antwort gibt - hier ist eine Möglichkeit, dies zu tun:

Installieren Sie es einfach apt-get install Bexplizit mit und markieren Sie es dann als automatisch installiert mitapt-mark markauto B

zerkms
quelle
1

Da ich spezifisch für Ihre Frage bin, würde ich Folgendes tun:

  • apt-get update um die Paketindexdateien von ihren Quellen neu zu synchronisieren.
  • apt-get install B wird die neueste Version installieren.
  • apt-mark auto Bum es automatisch installiert zu markieren

So aktualisieren Sie ein bestimmtes Paket:

  • apt-get update
  • apt-get install <package_name>Dadurch wird das aktualisierte Paket installiert ... dort ... wird das Paket aktualisiert, anders als apt-get upgradebei allen aktualisierbaren Paketen.

Wenn Sie eine bestimmte Version eines Pakets wünschen, tun Sie Folgendes:

  • apt-get <package_name>=<verson> oder apt-get -t <version> <package_name>

Mit apt-get -t <version> <package_name>können Sie die Zielfreigabe als -t '2.1 *', -t unstable oder -t sid angeben.

Wenn Sie eine Liste der verfügbaren Versionen wünschen:

  • apt-cache showpkg <package_name>
präzise
quelle
Ich bin mir nicht sicher, ob Sie die Frage richtig verstehen.
Zerkms
Wenn Sie verwaiste Abhängigkeiten / Pakete entfernen möchten, sollten Sie Debfoster oder gtkorphan ausprobieren, falls Sie dies noch nicht getan haben.
genau