提示 Could not get lock /var/lib/dpkg/lock 报错?

有些小伙伴在使用 apt 包管理器更新或安装软件时,可能会遇到过诸如以下的错误提示:

E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?

或者

E: Could not get lock /var/lib/dpkg/lock - open (11 Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/) is another process using it?
E: Could not get lock /var/lib/apt/lists/lock – open (11: Resource temporarily unavailable)
E: Unable to lock directory /var/lib/apt/lists/

这种时候大可不必惊慌,这些错误提示一般都是因为某些程序在系统后台进行着某些 apt 操作,因此锁定了 apt 数据库,所以暂时不能进行 apt 操作。

解决方案

那遇到这种情况,一般我们只需要安静地等待几分钟,或者先去做其他的事情,比如浏览一下良许 Linux 公众号里的文章,直到当前的更新、安装或卸载任务完成后,锁就会自动释放,然后就可以进行 apt 操作了。

当然了,上面说的是正常情况下的对应,那非正常情况下,比方说你等了好多个几分钟锁都还没有被释放,你就要看看是不是该进程由于某些原因而卡住了并且一直占用着锁。如果是的话,那你只能干掉这个进程,然后删除该锁定了。

首先,我们先找出是哪个进程占用了锁文件 /var/lib/dpkg/lock

$ sudo lsof /var/lib/dpkg/lock

其他锁文件对应的命令

$ sudo lsof /var/lib/dpkg/lock-frontend
$ sudo lsof /var/lib/apt/lists/lock

然后得到输出结果

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
unattende 1548 root 6uW REG 8,2 0 1181062 /var/lib/dpkg/lock

我们可以从结果中看到,该进程的 PID 为 1548

接着,kill 掉这个进程

$ sudo kill -9 1548

然后你就可以放心地删除锁文件

$ sudo rm /var/lib/dpkg/lock

或者

$ sudo rm /var/lib/dpkg/lock-frontend
$ sudo rm /var/lib/apt/lists/lock

如果需要,还可以删除缓存目录下的锁文件

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

做完上面的步骤后,记得要运行以下命令

$ sudo dpkg --configure -a

这样问题应该就可以解决了

最后,祝你好运!

最后,最近很多小伙伴找我要Linux学习路线图,于是我根据自己的经验,利用业余时间熬夜肝了一个月,整理了一份电子书。无论你是面试还是自我提升,相信都会对你有帮助!目录如下:

免费送给大家,只求大家金指给我点个赞!

linux dpkg未找到命令_Linux安装软件时90%的人会遇到这个报错,如何解决?相关推荐

  1. ubuntu下安装caffe时,在python中import caffe报错。

    @[TOC]ubuntu下安装caffe时,在python中import caffe报错. 编译完caffe无报错后,按照~/caffe/python/requirement.txt中的要求安装好所有 ...

  2. linux netstat未找到命令,运行netstat,提示未找到这个命令

    运行netstat,提示未找到这个命令 龙行    个人随笔    2019-1-14    3744    0评论 [root@localhost ~]# netstat -nultp -bash: ...

  3. 安装软件时内存还有很多却依然提示空间不足的解决办法

    相信很多人都遇到过这个问题,在使用安卓手机时,明明无论系统内存还是内存设备都还有很大的空间,但在安装软件时却被系统提示空间不足,让你清理内存空间.但不管你怎么清理,安装时却依然是这个提示,让人好不郁闷 ...

  4. K8S 1.18.0 以及KubeEdge 1.10.3 三机安装部署(含过程记录及遇到的报错和解决方法)

    因为网络上大多数教程只有部署相关的命令,而无输入命令后正确界面的显示样例,因此在参考网络上教程并跟随实现的过程中,我将过程进行截图记录,供大家参考.希望对大家有帮助~ 一. K8S部署 选用了三台虚拟 ...

  5. linux rpm找不到命令_Linux安装软件

    在windows下安装一个软件很轻松,只要双击.exe的文件,安装提示连续"下一步"即可,然而linux系统下安装一个软件似乎并不那么轻松了,因为不是在图形界面下,需要学会如何在l ...

  6. linux nvcc未找到命令,NVCC CUDA编译流程

    一.CUDA编译流程简介 Nvcc是一种编译器驱动,通过命令行选项可以在不同阶段启动不同的工具完成编译工作,其目的在于隐藏了复杂的CUDA编译细节,并且它不是一个特殊的CUDA编译驱动而是在模仿一般的 ...

  7. linux nvcc未找到命令,打印本页 - nvcc命令无法识别

    标题: nvcc命令无法识别 作者: 修雨轩陈 于 四月 21, 2016, 05:43:24 pm 求各位兄弟帮忙..... =============运行make文件之后============= ...

  8. linux shell 未找到命令,未找到linux问题setenv命令(linux issue setenv command not found)

    未找到linux问题setenv命令(linux issue setenv command not found) 我在Linux中开发了一个Tcl / Tk脚本工具. 为了运行该工具,每次需要在she ...

  9. linux ftp 未找到命令,Linux不能使用FTP 命令 -bash: ftp: command not found

    Linux下登陆 Linux中使用 FTP 命令时出现"-bash: ftp: command not found" Linux中测试搭建 FTP 服务器,刚安装完 vsftpd ...

最新文章

  1. linux svn客户端的使用
  2. Devexpress的Datalayout控件
  3. UVa 11388 - GCD LCM
  4. mysql数据库的各种锁_关于MySQL各类锁的总结
  5. C++字符串的个人理解
  6. OJ1013: 求两点间距离
  7. mysql 存入图_c# 如何向mysql数据库中存入图片
  8. 蔚来:4月交付7102台 同比增长125.1%
  9. Unity5 新功能解析--物理渲染与standard shader
  10. css为什么要用浮动_CSS问题和解决
  11. java判断语句总结,JAVA常用操作语句 项目中的总结六
  12. 解决办法——Qtdemo软件无法加载example的问题
  13. 大数据毕设/课设 - 基于大数据的客流量数据可视化平台
  14. 进程间通信之CreatePipe
  15. win7系统配置时间服务器,与Internet时间服务器同步 设Win7精确时间
  16. 无需代码,1秒搞定QQ和微信多开!
  17. 努比亚Z11系统服务器选择,良心!努比亚Z11系列机型系统升级新版本后性能提升明显...
  18. 随机梯度下降matlab,matlab随机梯度下降法
  19. 十位改变世界的人工智能领域大师
  20. 目标检测网络之三叉戟TridentNet

热门文章

  1. 智能贴图样机素材在手,海报逼格马上就有!
  2. 设计师需要收藏|一起来看看UI设计的配色专辑
  3. c语言第三章作业题答案,c语言第三章简单练习题及答案.doc
  4. 终端进入网页_华为云进入IDC MarketScape终端安全检测与响应市场领导者象限
  5. c++ assert用法
  6. Python爬虫项目--爱拍视频批量下载
  7. 单链表的实现操作(C语言)
  8. 地震勘探专业词汇(1)
  9. Python基础学习思维导图
  10. 【共享内存】基于共享内存的无锁消息队列设计