Vodniki

Popravek: Datoteke za zaklepanje / var / lib / dpkg / lock ni bilo mogoče odpreti

Pridobivanje sporočila o napaki, ki ga ni bilo mogoče odpreti / var / lib / dpkg / lock, je lahko zmedeno, ker bi vas lahko vprašalo, ali ste takoj za tem root, tudi če ste izvajali posodobitveni ukaz s predpono sudo. Ta ukaz o napaki se bo prikazal skoraj pri vsem, kar uporablja upravitelja paketov apt-get. Ne glede na to, ali posodabljate namizje ali prenosni računalnik z eno od različnih različic Ubuntuja ali Raspberryja Pi s sistemom Raspbian Debian, boste morda ugotovili, da je to lahko težava na kateri koli od teh platform.

Kljub temu je popravek precej preprost. Običajno lahko ignorirate vse, kar vas vpraša, ali ste root, in pojdite naravnost v bistvo težave, ki je povezano z dvema postopkoma, ki poskušata hkrati dostopati do zaklenjene datoteke.

1. način: Zagotovite, da lahko sudo dostopa do vseh delov ukaza

Če bi morali zagnati sudo apt-get update && apt-get upgrade, boste morda dobili to napako, ker drugi postopek nima ustreznega pooblastila za dostop do datoteke / var / lib / dpkg / lock.

Poskusite namesto teči posodobitev sudo apt-get && nadgradnja sudo apt-get da vidim, ali to kaj vpliva. V nasprotnem primeru je vaša težava že odpravljena in je bila zgolj zato, ker drugemu postopku niste dali zadostnih dovoljenj za dostop do datoteke. Upoštevajte, da bo ta ukaz posodobil in nato nadgradil vse vaše pakete, zato bo morda pozvan, da ga odobrite, in lahko traja nekaj časa.

V nasprotnem primeru pa je težava že popolnoma rešena in vam ni treba storiti ničesar drugega.

2. način: Odstranjevanje datoteke / var / lib / dpkg / lock

Tisti, ki uporabljajo curl, wget ali drug ukaz, ki datoteko naloži diskretno, bodo morda morali ta ukaz predgovoriti s sudo, če bodo delali iz Raspbiana, saj to v nekaterih primerih nadomešča apt-get. Tistim, ki delajo s čisti Debian, Xubuntu, Lubuntu, Linux Mint in drugimi podobnimi namiznimi / prenosnimi računalniki, se glede tega ne bo treba bati, vendar se splača poskusiti še enkrat.

Če to še vedno ni delovalo, boste morda morali preveriti, ali med izvajanjem posodobitve nimate nobenega drugega programa, ki bi poskušal dostopati do datoteke. Poskusite uporabiti sudo lsof / var / lib / dpkg / lock če želite preveriti, ali se izvajajo kateri koli drugi procesi, ki so odprti. Če bi ga nekje odprli, lahko samo zaprete aplikacijo.

Upoštevajte, da dostop do branja in pisanja za odpiranje te datoteke pomeni, da mora imeti program korenske privilegije, zato boste za zapiranje programa potrebovali korenske privilegije. Če uporabljate grafično namizno okolje, ki podpira to funkcijo, lahko celo poskusite pogledati aplikacijo Task Manager. Preprosto z desno miškino tipko kliknite postopek kršitve in zaprite, če imate za to dovoljenja. Poskusite tudi ukaze kill ali killall iz ukazne vrstice.

Zdaj lahko poskusite znova zagnati ukaze apt-get in preverite, ali je to kaj pomembno, vendar vam ne bo treba storiti nič drugega, če je. Če imate še vedno težave, poskusite dokončno odstraniti zaklenjene datoteke. Čeprav je na to treba gledati kot na skrajno možnost, običajno ne povzroča težav, povezanih s programom apt-get. Še vedno boste želeli izčrpati druge metode, preden to storite, saj se lahko zmede s sistemom apt.

Vnovični zagon včasih pomaga, toda če ste stalno na strežniku ali v napravi Raspbian, to morda ni izvedljiva možnost. Poskusite teči sudo rm / var / lib / dpkg / lock && sudo rm / var / lib / apt / lists / lock, ki bo sprostilo določene datoteke, ki si jih apt ogleduje, ko jih zaženete. Bodite pozorni na imena teh datotek, saj je zagon rm kot root uničujoč.

Ob predpostavki, da ste to storili šele po izčrpanju ostalih možnosti, lahko poskusite znova zagnati ukaze za posodobitev in preverite, kaj se zgodi. Nadaljnjih težav ne bi smeli imeti, ker datoteke takrat ne bi več obstajale, čeprav jih bodo rutine apt-get lahko obnovile, ko se zaženejo.

$config[zx-auto] not found$config[zx-overlay] not found