oeasy教您玩转linux010202软件包管理apt

overmind1980 2020-09-03 06:34:28

顾一下😌

上一部分我们都讲了什么?🤔

yes命令

持续输出某字符串

yes oeasy

还有什么好玩的命令吗?🤔

列出所有包

apt list

这里好多文件啊,我们找找有没有yes

#  找到yes对应位置which yes #  /usr//bin/yes属于哪个包dpkg -S /usr/bin/yes#  在已经安装的包里面找到coreutildpkg -l coreutils#  coreutils到底是干什么的?dpkg -s coreutils#  在已安装列表中搜索coreutilsapt list coreutils#  在源中搜索coreutilsapt search coreutils

dpkg对应debian package 是传统包管理

dpkg更多的是本地包的各种安装卸载查看

早年间都是通过ftp下载到本地,再dkpg的

apt是新的包管理工具😍

apt更多的是网络包的安装卸载查看

如果有些包你是从红帽系rpm下载的

可以用alien转化为deb

然后安装deb文件

可以用apt下好玩的包吗?😂

apt🧩

apt是advanced package tools的意思

apt是debian系发行版的软件包管理工具

红帽系的yum、arch系的pacman也是很好的管理工具

为什么要用这个工具🔧?

不同的cpu架构要用不同的二进制文件

你可以有两种方法得到某种架构(比如mips)的二进制文件

直接下载这个架构的二进制文件

下载这个软件包的源文件,自己编译⚙️

但是这个得到的二进制文件还是有可能不能用

软件包之间是有依赖关系的

这个软件包依赖的软件包不存在

甚至被依赖的软件包所依赖的软件包不存在

这就形成了一条链路

我们需要把这条链路上所有的软件包都下载下来

以上做法太麻烦了,我们只需要

使用apt把相关操作封装成接口

我们直接调用apt就可以了

所以叫做高级包管理工具

当然你得有地方下载,这就需要镜像站.

镜像站(mirrors)

软件包放在网络上

debian系的镜象列表是

https://www.debian.org/mirror/list

这里面其实对应的就是我们/etc/apt/sources.list

镜像站一般也不只提供一个发行版的镜像

以清华镜像站为例

https://mirror.tuna.tsinghua.edu.cn/

有好多发行版

点击发行版或软件包后面问号

可以获得sources.list的相关清华源配置代码

实验楼里面默认的是阿里源也很好用

我们要下载一个应用linuxlogo

我先看看我设置的这些源里面有没有🤪

sources.list🗒

sources.list语法是这样的

deb url distribution component1 component2 component3 [..] componentX

deb-src url distribution component1 component2 component3 [..] componentX

deb对应二进制文件

deb-src对应源文件

在地址后面有个版本号

版本在dists(distribution)里面可以找到

https://mirror.tuna.tsinghua.edu.cn/debian/dists/

debian系列版本号都是玩具总动员中的角色

ubuntu版本号来自于动物🦊

main、contribute是文件夹的名字

Buster版是最新的稳定版,适合拿来使用

维护者维护的源头是源文件

有了源文件,可以编译成到各种架构的二进制文件

修改也是,先修改源文件

各种版本的生命周期

package🎁

软件包发布的过程生命周期

#  搜索源里面有没有linuxlogo这个软件包apt search linuxlogo#  看看镜像站上面对于这个软件包的描述apt show linuxlogo#  下载安装这个软件包apt install linuxlogo

search 查找到你的当前架构是否可以有这个软件包

show 显示开发者 简介 大小 所在的源的位置

我们可以apt show apt看看apt的依赖关系

(A 或 B) 且 C 的关系写作 A | B, C

第三条执行不下去,因为没有权限

我怎么才能让他执行下去呢?🤔

下次再说!👋

0 阅读:2