table of contents
dpkg-divert(1) | dpkg suite | dpkg-divert(1) |
NAAM¶
dpkg-divert - de versie van een bestand in een pakket overschrijven
OVERZICHT¶
dpkg-divert [optie...] commando
BESCHRIJVING¶
dpkg-divert is het hulpprogramma dat gebruikt wordt om de lijst met omleggingen aan te maken en bij te werken.
File diversions are a way of forcing dpkg(1) not to install a file into its location, but to a diverted location. Diversions can be used through the package maintainer scripts to move a file away when it causes a conflict. System administrators can also use it to override some package's configuration file, or whenever some files (which aren't marked as “conffiles”) need to be preserved by dpkg, when installing a newer version of a package which contains those files.
COMMANDO'S¶
- [--add] bestand
- Een omlegging toevoegen voor bestand. Het bestand wordt momenteel niet hernoemd, zie --rename.
- --remove bestand
- Een omlegging verwijderen voor bestand. Het bestand wordt momenteel niet hernoemd, zie --rename.
- --list [glob-patroon]
- Alle omleggingen vermelden, of die welke aan glob-patroon beantwoorden.
- --listpackage bestand
- De naam weergeven van het pakket dat bestand omleidt (sinds dpkg 1.15.0). Vermeldt LOCAL als bestand lokaal omgeleid werd en niets als bestand niet omgeleid werd.
- --truename bestand
- De echte naam van een omgeleid bestand vermelden.
OPTIES¶
- --admindir map
- De administratieve map instellen op map. Standaard is dit «/var/lib/dpkg» indien DPKG_ADMINDIR niet ingesteld werd.
- --instdir map
- Instellen van de installatiemap, welke verwijst naar de map waar pakketten geïnstalleerd worden (sinds dpkg 1.19.2). Standaard is dat «/» indien DPKG_ROOT niet ingesteld werd.
- --root map
- De hoofdmap instellen op map, hetgeen de installatiemap instelt op «map» en de administratieve map op «map/var/lib/dpkg» (sinds dpkg 1.19.2) indien DPKG_ROOT niet werd ingesteld.
- --divert leid-om-naar
- leid-om-naar is de locatie waarnaartoe de versies van bestand die door andere pakketten geleverd worden, omgeleid zullen worden.
- --local
- Geeft aan dat dit bestand bij alle pakketversies omgeleid wordt. Dit betekent dat er geen uitzonderingen zijn en dat het bestand omgeleid wordt, ongeacht het pakket dat geïnstalleerd wordt. Dit kan gebruikt worden door een systeembeheerder om een lokaal aangepaste versie te installeren.
- --package pakket
- pakket is de naam van het pakket waarvan zijn exemplaar van bestand niet omgeleid zal worden. Dit wil zeggen dat bij alle pakketten bestand omgeleid zal worden, behalve bij pakket.
- --quiet
- Stille modus, m.a.w. geen breedsprakige uitvoer.
- --rename
- Het bestand effectief uit de weg (of terug) zetten. dpkg-divert zal de bewerking afbreken indien het doelbestand reeds bestaat. Dit is het gangbare gedrag dat gebruikt wordt voor het omleggen van bestanden uit het geheel van niet-Essential pakketten (zie --no-rename voor meer details).
- --no-rename
- Geeft aan dat het bestand niet hernoemd mag worden als de omlegging toegevoegd wordt aan of verwijderd wordt uit de databank van omleggingen (sinds dpkg 1.19.1). Dit is bedoeld voor omleggingen van bestanden uit het geheel van Essential pakketten, waarvoor het tijdelijk verdwijnen van het originele bestand onaanvaardbaar is, aangezien dit het systeem onbruikbaar kan maken. Dit is het standaardgedrag, maar dat zal veranderen in de cyclus 1.20.x van dpkg.
- --test
- Testmodus. M.a.w. geen enkele wijziging effectief uitvoeren. Enkel een demonstratie geven.
- -?, --help
- Info tonen over het gebruik en afsluiten.
- --version
- De versie tonen en afsluiten.
AFSLUITSTATUS¶
- 0
- De gevraagde actie werd succesvol uitgevoerd.
- 2
- Fatale of onherstelbare fout die te wijten is aan ongeldig gebruik van de commandoregel of aan interacties met het systeem, zoals het benaderen van de database, het toewijzen van geheugen, enz.
OMGEVING¶
- DPKG_ROOT
- Indien dit ingesteld is en de opties --instdir of --root niet opgegeven werden, zal dit gebruikt worden als de hoofdmap voor het bestandssysteem (sinds dpkg 1.19.2).
- DPKG_ADMINDIR
- Indien dit ingesteld is en de opties --admindir of --root niet opgegeven werden, zal dit gebruikt worden als de datamap voor dpkg.
- DPKG_MAINTSCRIPT_PACKAGE
- Indien dit ingesteld werd en de opties --local en --package niet gebruikt werden, zal dpkg-divert dit gebruiken als de naam van het pakket.
- DPKG_DEBUG
- Stelt het foutopsporingsmasker in (sinds dpkg 1.21.10) vanaf een octale waarde. De momenteel geaccepteerde vlaggen worden beschreven in de optie dpkg --debug, maar mogelijk hebben niet al deze vlaggen effect op dit programma.
- DPKG_COLORS
- Stelt de kleurmodus in (sinds dpkg 1.18.5). Waarden die momenteel gebruikt mogen worden zijn: auto (standaard), always en never.
BESTANDEN¶
- /var/lib/dpkg/diversions
- Bestand dat de huidige lijst van omleggingen op het systeem bevat. Zijn
plaats is in de beheersmap van dpkg samen met andere bestanden die
belangrijk zijn voor dpkg, zoals status en available.
Opmerking: dpkg-divert bewaart de oorspronkelijke kopie van dit bestand met de extensie -old, vooraleer het te vervangen door het nieuwe exemplaar.
OPMERKINGEN¶
Bij het toevoegen wordt standaard --local en --divert origineel.distrib gebruikt. Bij het verwijderen moeten --package of --local en --divert overeenkomen als ze opgegeven werden.
Mappen kunnen met dpkg-divert niet omgeleid worden.
Extra zorg moet besteed worden aan het omleiden van gedeelde bibliotheken. ldconfig(8) maakt een symbolische koppeling aan op basis van het veld DT_SONAME dat in de bibliotheek ingebed zit. Aangezien ldconfig geen omleggingen honoreert (enkel dpkg doet dat), kan het resultaat zijn dat de symbolische koppeling naar de omgeleide bibliotheek verwijst als de omgeleide bibliotheek dezelfde SONAME heeft als de niet-omgeleide.
VOORBEELDEN¶
Om alle exemplaren van een bestand /usr/bin/voorbeeld om te leiden naar /usr/bin/voorbeeld.foo, of met andere woorden alle pakketten die /usr/bin/voorbeeld aanleveren, op te dragen het te installeren als /usr/bin/voorbeeld.foo en zo nodig het hernoemen ervan uit te voeren:
dpkg-divert --divert /usr/bin/voorbeeld.foo --rename /usr/bin/voorbeeld
Om die omlegging te verwijderen:
dpkg-divert --rename --remove /usr/bin/voorbeeld
Om elk pakket dat /usr/bin/voorbeeld tracht te installeren, om te leiden naar /usr/bin/voorbeeld.foo, behalve uw eigen pakket wiegel:
dpkg-divert --package wiegele --divert /usr/bin/voorbeeld.foo \ --rename /usr/bin/voorbeeld
Om die omlegging te verwijderen:
dpkg-divert --package wiegel --rename --remove /usr/bin/voorbeeld
ZIE OOK¶
dpkg(1).
2024-01-19 | 1.22.3 |