zoukankan      html  css  js  c++  java
  • 解决 unable to lock the administration directory (/var/lib/dpkg/) 问题

    阿里开源镜像站提供了raspbian的软件包镜像,国内的用户可以选择改用阿里镜像站作为更新源。

    但是在更换源之后,执行 sudo apt-get update && apt-get upgrade -y时报错:

    pi@raspberrypi:~$ sudo apt-get update && apt-get upgrade -y
    Hit:1 http://mirrors.aliyun.com/raspbian/raspbian wheezy InRelease           
    Hit:2 http://archive.raspberrypi.org/debian stretch InRelease
    Reading package lists... Done                      
    E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
    E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

    问题原因如下:

      锁定的文件会阻止 Linux 系统中某些文件或者数据的访问,这个概念也存在于 Windows 或者其他的操作系统中。

      一旦你运行了 apt-get 或者 apt 命令,锁定文件将会创建于 /var/lib/apt/lists//var/lib/dpkg//var/cache/apt/archives/ 中。

      这有助于运行中的 apt-get 或者 apt 进程能够避免被其它需要使用相同文件的用户或者系统进程所打断。当该进程执行完毕后,锁定文件将会删除。

      重要提醒:万一你在没有看到 apt-get 或者 apt 进程的情况下在上面两个不同的文件夹中看到了锁定文件,这是因为进程由于某个原因被杀掉了,因此你需要删除锁定文件来避免该错误。

      1、首先运行下面的命令来移除 /var/lib/dpkg/ 文件夹下的锁定文件:

    $ sudo rm /var/lib/dpkg/lock

      2、之后像下面这样强制重新配置软件包:

    $ sudo dpkg --configure -a

      同时也可以删除 /var/lib/apt/lists/ 以及缓存文件夹下的锁定文件:

    $ sudo rm /var/lib/apt/lists/lock
    $ sudo rm /var/cache/apt/archives/lock

      接下来,更新你的软件包源列表:

    sudo apt-get update && apt-get upgrade -y
  • 相关阅读:
    windows下读取utf-8文件
    mongodb c api编译
    JS学习笔记
    【已解决】关于SQL2008 “不允许保存更改。您所做的更改要求删除并重新创建以下表。您对无法重新创建的标进行了更改或者启用了‘阻止保存要求重新创建表的更改’” 解决方案
    C#字符串截取
    C#通过WatiN操作页面中内嵌的Iframe
    C#查找以某个字母开头另一字母结尾的字符串
    HTML5+CSS3学习小记
    C#求任意范围内的质数
    C#中的委托
  • 原文地址:https://www.cnblogs.com/rnckty/p/8258480.html
Copyright © 2011-2022 走看看