ubuntu 软件包管理整理 dpkg apt ppa

对于Ubuntu软件的管理,很多东西用的时候总是忘了,所以就自己整理下了。


Ununtu软件管理工具
主要功能:安装,删除,查询


dpkg(Debian Package Management System)
deb实现对二进制软件的管理,无法自动解决软件之间的依赖关系,所以要提供一个前端程序apt解决

deb包的安装,首先要下载包,是以.deb为后缀的去安装包,安装完后的软件是没有.deb后缀的
使用dpkg安装
sudo dpkg -i 包名.deb
安装完成后,系统的数据库会存储这个包,是没有deb后缀的 查询系统已经安装的包,就是把已安装的包的数据库打印出来 dpkg -l | less 每个记录的属性分别是 在数据库标识符(可看最顶端的的信息进行配对) 包的名称 包的版本 包支持的体系结构 包的说明信息 注意一下命令包名的区别 查询包的信息(查询的名称是数据里的) sudo dpkg --status 包名 查询带.deb的命令 sudo dpkg --info deb_name 查询一个包里包含了哪些文件 sudo dpkg --listfiles 包名 deb结尾 sudo dpkg --contents 包名.deb 查看一个文件或者命令是由哪个包启动的,如/bin/ls sudo dpkg --search /bin/ls 删除包,这个包一定要是在上面的数据库存在的 sudo dpkg -r 数据库里的包名 apt(Advanced Packaging Tool) 使用apt-get(是一个apt其中一个命令),可以对二进制包和源代码包进行管理 包所在的服务器的地址列表 运行apt-get install时候,首先读取包源地址,就是/etc/apt/sources.list里的地址,然后就下载包,把包下载到 /var/cache/apt/archives,而包的说明信息则会存储到/var/lib/apt/lists,运行apt-cache show package这个命令的获取包的说明信息的时候,去读取/var/lib/apt下的信息就可以获取信息了 显示服务器所有的包 sudo apt-cache pkgnames | less 显示服务器所有的包的个数 sudo apt-cache pkgnames | wc -l 显示已经安装的包 sudo dpkg -l 显示已经安装包的个数 sudo dpkg -l | wc -l 安装包 sudo apt-get install 整个过程是自动的,通过刚才地址列表连接服务器,读取服务器描述包的源数据信息,找到包进行下载,下载完解压,然后配置,最后就安装完成了 查看刚才下载后的包 sudo dpkg -l | grep 刚下载的包名 查询包的说明信息 sudo apt-cache show 包名 查询软件包所含文件 apt-file list package 查询命令是由哪个包提供(文件归属),如/bin/ls apt-file search /bin/ls 由于要查询的命令是由哪个包提供的,是用源数据描述的,源数据是在提供包源的服务器上的, 要用apt-file update 连接,获取源数据信息,将这些信息放到本地的缓存里 查询包的说明信息,一些包安装后在本地会有缓存信息 sudo apt-get show 包名(如果本地缓存有,就用本地的,如果没有,则连接上服务器的信息) 清除缓存 sudo apt-get clean 移除软件 sudo apt-get remove 软件名 自动解决依赖关系,-f参数是试图解决包的依赖关系 ubuntu服务器包含的包并不是所有的,第三方或者个人的包没有,这样的话要下载deb包或者下面所说的PPA sudo apt-get -f install ubuntu的服务器并不是包含所有的包,比如个人的包 PPA(Personal Package Archives): 是ubuntu的私人软件仓库,允许用户上传源代码包,由launchpad编译并发布作为apt的仓库 发布成功后,针对这个用户的软件包都有一个PPA地址,用户需要把这个地址添加到用户地址列表了,那么就可以 通过apt安装了 登录launchpad.net,搜索想要安装的包 命令行添加PPA地址: sudo add-apt-repostiory ppa:user/ppa-name 在/etc/apt/sources.list.d已经生成 sudo apt-get update 同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包这个过程是对/etc/apt/sources.list每一个网址建立索引,这样以后安装找地址就很快了,不用从头开始遍历 然后就可以安装了 sudo apt-get install 包 删除ppa sudo add-apt-repository --remove ppa:user/ppa-name 如果服务器和ppa上都没有这个包,那么只能手动下载deb包了,然后dpkg安装

相关文章

文章浏览阅读2.3k次,点赞4次,收藏22次。最近安装了CARLA预...
文章浏览阅读6.3k次,点赞5次,收藏15次。在清华镜像中下载U...
文章浏览阅读5k次。linux环境, python3.7.问题描述: 安装...
文章浏览阅读4.2k次,点赞4次,收藏17次。要安装这个 standa...
文章浏览阅读894次,点赞51次,收藏31次。在安卓使用vscode主...