阿里開源鏡像站提供了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