Mrli
别装作很努力,
因为结局不会陪你演戏。
Contacts:
QQ博客园

linux下apt-get介绍

2019/09/15 linux
Word count: 1,086 | Reading time: 4min

apt-get

Advanced Package Tool又名apt-get,是一条linux命令,适用于deb包管理式的操作系统如UnixLinux系统的应用程序管理器,主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。

rpm包和deb包是两种Linux系统下最常见的安装包格式,在安装一些软件或服务的时候免不了要和它们打交道。rpm包主要应用在RedHat系列包括 Fedora等发行版的Linux系统上,deb包主要应用于Debian系列包括现在比较流行的Ubuntu等发行版上。

我们知道如果要安装现成的这两种包的话,安装rpm包的命令是“rpm -参数”,安装deb包的命令是“dpkg -参数”。而Linux系统很方便和人性化的一点就是很多软件或服务根本就不用我们去下载,直接使用相应的命令就可以管理了,可能这就是传说中的 “云”的概念。

  • yum可以用于运作rpm包,例如在Fedora系统上对某个软件的管理:
    安装:yum install <package_name>
    卸载:yum remove <package_name>
    更新:yum update <package_name>
  • apt-get可以用于运作deb包,例如在Ubuntu系统上对某个软件的管理:
    安装:apt-get install <package_name>
    卸载:apt-get remove <package_name>
    更新:apt-get update <package_name>

▲.apt-get命令一般需要root权限执行,所以一般跟着sudo命令。

1
2
3
4
5
6
7
8
9
10
11
12
13
apt-get update
#1、apt-get update是同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包。
#2、apt-get update只是更新了apt的资源列表,没有真正的对系统执行更新。如果需要,要使用apt-get upgrade来更新。

apt-get upgrade
#可以使用这条命令更新软件包,apt-get upgrade不仅可以从相同版本号的发布版中更新软件包,也可以从新版本号的发布版中更新软件包,尽管实现后一种更新的推荐命令为apt-get dist-upgrade(将系统升级到新版本)。

#总结:
▲ apt-get update 是更新本地软件列表,在线安装的时候可以在软件列表找到软件;
apt-get upgrade 是更新本地已安装的软件,要谨慎执行。

#dpkg -l
#列出所有已安装的软件包。

在Ubuntu中,有时候运用sudo apt-get install 安装软件时,会出现一下的情况

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?

主要是因为apt还在运行,解决方案是

1.找到并且杀掉所有的apt-get 和apt进程
1
2
3
4
5
6
ps -A | grep apt
找出所有的 apt 以及 apt-get 进程


$ sudo kill -9 processnumber 或者$ sudo kill -SIGKILL processnumber
比如,下面命令中的9是 SIGKILL 的信号数,它会杀掉第一个 apt 进程$ sudo kill -9 进程ID 或者$ sudo kill -SIGKILL 进程ID
2、删除锁定文件

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

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

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

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

1
2
3
4
5
6
7
8
9
10
11
12
#首先运行下面的命令来移除 /var/lib/dpkg/ 文件夹下的锁定文件:
$ sudo rm /var/lib/dpkg/lock

#之后像下面这样强制重新配置软件包:
$ sudo dpkg --configure -a

#也可以删除 /var/lib/apt/lists/ 以及缓存文件夹下的锁定文件:
$ sudo rm /var/lib/apt/lists/lock
$ sudo rm /var/cache/apt/archives/lock

#接下来,更新你的软件包源列表:
$ sudo apt update 或者 $ sudo apt-get update

Author: Mrli

Link: https://nymrli.top/2018/10/24/linux下apt-get介绍/

Copyright: All articles in this blog are licensed under CC BY-NC-SA 3.0 unless stating additionally.

< PreviousPost
网络宽带和网络延迟
NextPost >
python中关于round函数的注意事项
CATALOG
  1. 1. apt-get
  2. 2. 在Ubuntu中,有时候运用sudo apt-get install 安装软件时,会出现一下的情况
    1. 2.0.1. 1.找到并且杀掉所有的apt-get 和apt进程
    2. 2.0.2. 2、删除锁定文件