Kuinka korjata "/var/lib/dpkg/lock" -virhe

⁄var⁄lib⁄dpkg⁄lockin lukitseminen epäonnistui

Vaikka Linux-jakelu saattaa halutessaan asentaa ohjelmiston parhaaksi katsomallaan tavalla, he voivat useimmiten asentaa sen ainakin virallisista arkistoistaan. Näitä tietovarastoja voidaan ylläpitää suoraan jakelun toimesta ja/tai perustuen muihin, kuten tapahtuu esimerkiksi Debian->Ubuntu->Linux Mintin kanssa. Näissä tapauksissa paketinhallinta on APT, ja joskus voimme nähdä viestin "ei voitu lukita /var/lib/dpkg/lock" terminaalissa tai jopa työkalussa, jossa on graafinen käyttöliittymä.

Tämä artikkeli yrittää valaista asiaa. mikä se on ja miten virhe voidaan korjata joka saa meidät näkemään viestin "/var/lib/dpkg/lock ei voitu lukita", mutta voin kertoa, että on olemassa hyvin yksinkertainen ratkaisu, joka voi korjata tämän ja monet muut ongelmat, olipa se sitten Linux- perustuva jakelu tai muu käyttöjärjestelmä, mukaan lukien mobiili.

Mitä virhe "/var/lib/dpkg/lock ei voitu lukita" tarkoittaa?

Yleensä kun näemme virheilmoituksen "ei voitu lukita /var/lib/dpkg/lock", pääte tai ohjelmisto, joka näyttää sen, ilmaisee, että toinen APT-prosessi on käynnissä ja käyttää samaa tietokantaa. jota yritämme käyttää. . Toisin sanoen uusi APT-prosessi yrittää lukita /var/lib/dpkg/lock-tiedoston, hän ei saa sitä, koska hänellä on kiire ja ilmoittaa siitä meille.

Yleisin on se toinen APT-prosessi, kuten päivitys, on jo käynnissä ja on lukinnut lukitustiedoston, joten se ei voi ottaa ensimmäistä askelta, eli juuri kyseisen tiedoston lukitsemista.

Kuinka korjata virhe

Ensimmäinen asia, joka meidän on tehtävä, varsinkin jos emme pidä terminaalin käytöstä, on tarkista, onko jokin sovellus käynnissä. Esimerkiksi Ubuntussa voimme nähdä, tekeekö Ubuntu Software (GNOME Softwaren haarukka) jotain, ja myös Software Update, sovellus, joka vastaa nimensä mukaisesti ohjelmiston päivittämisestä. Jos emme näe mitään näistä sovelluksista auki, voimme myös käynnistää järjestelmämonitorin ja etsiä niitä nähdäksemme, toimivatko ne taustalla.

Las sovellukset, joita meidän on etsittävä, riippuvat jakelusta joita käytämme, koska Ubuntu-ohjelmisto ei ole Kubuntussa eikä Discover Debianin pääversiossa. Jokainen jakelu hallitsee ohjelmistoa lisäämillään työkaluilla, ja ne voivat estää GNOME-ohjelmiston arkiston, Discoverin, minkä tahansa muun ohjelmistokaupan tai päivitystyökalun.

Yksi vaihtoehto on, ovatko ne etualalla tai taustalla kärsivällisyyttä ja odota, onko tekemäsi työ valmis. Joskus näemme virheilmoituksen ja haluamme sen korjattavan välittömästi, kun ratkaisuna on odottaa hetki.

Uudelleenkäynnistyksen tai uloskirjautumisen pitäisi riittää

Monta vuotta sitten ystäväni kysyi minulta aina, kuinka korjata hänen kaatumiset Windowsissa. Tuli aika, jolloin tuskin enää edes kysyin häneltä, ja suosittelin häntä reboot koska se oli lähes aina hänelle paras ratkaisu. Virheen tapauksessa "/var/lib/dpkg/lock ei voitu lukita" on myös mahdollinen ratkaisu. Tyhjästä aloittaessasi voit aloittaa päivitystyökalun lukitsemalla tiedostolla, mutta se avaa sen pian, kun varmistat, että mitään uutta asennettavaa ei ole tai on, mutta olet jo ilmoittanut siitä meille.

Tietysti, se ei ole tyylikkäin ratkaisu, mutta se on halvin ja voi olla paras ja nopein, jos sinulla ei ole mitään syytä pitää sinua kirjautuneena.

Kun viesti "/var/lib/dpkg/lock epäonnistui" ei poistu

Kun olemme käynnistäneet uudelleen tai odottaneet jonkin aikaa ja näemme edelleen viestin, se, mitä meille tapahtuu, ei ole jotain tavallista. Lukitus on "ripattu" tai redundanssin arvoisena tukossa, joten terminaalista kannattaa jo vetää.

  1. Ensimmäinen asia, jonka teemme, on avata pääte ja tunnistaa käynnissä oleva APT-prosessi tällä komennolla:
sudo lsof /var/lib/dpkg/lock
  1. Kun prosessi on tunnistettu, lopetamme sen tällä komennolla ja korvaamme PID:n prosessin numerolla, jonka olemme saaneet selville komennolla vaiheesta 1:
sudo kill PID
  1. Lopuksi yritämme uudelleen suorittaa APT-hallinnan, jonka virhe palautti. Sen pitäisi antaa meille mahdollisuus jatkaa eteenpäin.

Jos tämä ei ratkaise ongelmaa, voimme tehdä jotain radikaalimpaa, joten sinun on ryhdyttävä varotoimiin tai ylimääräisiin toimiin. Tämä tekee sen "kantavalla tavalla": tiedoston /var/lib/dpkg/lock poistaminen. Noudatettavat vaiheet tehdäksesi sen turvallisesti ovat seuraavat:

  1. Teemme varmuuskopion tiedostosta /var/lib/dpkg/lock. Koska kopioimme sen, voimme käyttää tiedostonhallintaa, koska superkäyttäjän oikeuksia ei tarvita. Terminaalista sen voisi tehdä cp /var/lib/dpkg/lock new-path, muuttamalla "new-path" poluksi, jolle haluamme tehdä varmuuskopion.
  2. Poistamme tiedoston. Tätä varten on tarpeen vetää etuoikeuksia. Jos tiedostonhallinta sallii, voimme kirjoittaa esimerkiksi "sudo nautilus" ilman lainausmerkkejä poistaaksemme sen graafisella käyttöliittymällä, mutta mielestäni on nopeampaa ja helpompaa avata pääte ja kirjoittaa:
sudo rm /var/lib/dpkg/lock
  1. Kun tiedosto on poistettu, voimme yrittää uudelleen, mitä emme saaneet. jos kirjoitamme sudo apt päivitys emmekä näe virhettä, vika on korjattu.

Uudelleenkäynnistys ja kärsivällisyys ovat yleensä parhaita

Vaikka on olemassa tapoja korjata se, kuten edellisessä kohdassa selostetut, virhe "ei voitu lukita /var/lib/dpkg/lock" ei ole mitään todella vakavaa ja se voidaan korjata odottamalla jonkin aikaa tai käynnistämällä uudelleen. Se on jotain, joka yleensä korjaa itsensä, ja jos ei, uudelleenkäynnistys on vähiten aggressiivinen ja tehokkain. Nyt tämä on Linux, ja kaikkeen tai melkein kaikkeen on ratkaisu päätteestä, puhumattakaan siitä, että voimme "tappaa" mitä haluamme.

Mistä tahansa syystä toivon, että se, mitä täällä on sanottu, on voinut auttaa sinua joko saamaan viestin katoamaan aggressiivisemmalla prosessilla tai että sinulla on hieman kärsivällisyyttä.


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastaa tiedoista: AB Internet Networks 2008 SL
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.

  1.   Danilo Quispe Lucana dijo

    Hei:

    Tämä komento toimii minulle (testattu Xubuntu 18.04 LTS:ssä):

    sudo fuser -vki /var/lib/dpkg/lock

    Se koskee myös muita lukittuja tiedostoja, kuten /var/lib/dpkg/lock-frontend tai /var/lib/apt/lists/lock.

    terveiset