Ubuntu 的源相关介绍(最近在配gstreamer的时候,紧急补充的知识)
PS:要转载请注明出处,本人版权所有。
PS: 这个只是基于《我自己》的理解,
如果和你的原则及想法相冲突,请谅解,勿喷。
前置说明
本文作为本人csdn blog的主站的备份。(BlogID=070)
本文发布于 2018-09-10 11:47:11,现用MarkDown+图床做备份更新。blog原图已丢失,使用csdn所存的图进行更新。(BlogID=070)
环境说明
System:Linux tegra-ubuntu 4.4.38-tegra #1 SMP PREEMPT Fri Jul 28 09:55:22 PDT 2017 aarch64 aarch64 aarch64 GNU/Linux
前言
无
什么是源
源是一个在网络上的软件仓库,这里面存放着各种各样的软件安装包。在我们使用Linux系统的过程中,往往需要安装一些自己需要的软件,这些软件大部分由相关人员打包好了,存放到软件仓库中。在我们个人的Linux系统上,有着一种工具叫做包管理器,专门用来下载和安装我们需要的软件,并且提供自动补全依赖功能。列如:apt,yum,dnf,dpkg。
下面以debian系的Ubuntu为例,对源和这些工具的关系做一个简单介绍。
客户端---源
在ubuntu上,在/etc/apt/sources.list目录中,存放了关于源的网络地址和软件仓库名。列如:
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://ports.ubuntu.com/ubuntu-ports/ xenial main
deb-src http://ports.ubuntu.com/ubuntu-ports/ xenial main
#deb http://ports.ubuntu.com/ubuntu-ports/ xenial main restricted
#deb-src http://ports.ubuntu.com/ubuntu-ports/ xenial main restricted
## Major bug fix updates produced after the final release of the
## distribution.
deb http://ports.ubuntu.com/ubuntu-ports/ xenial-updates main restricted
deb-src http://ports.ubuntu.com/ubuntu-ports/ xenial-updates main restricted
## Uncomment the following two lines to add software from the 'universe'
## repository.
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://ports.ubuntu.com/ubuntu-ports/ xenial main universe
deb-src http://ports.ubuntu.com/ubuntu-ports/ xenial main universe
# deb http://ports.ubuntu.com/ubuntu-ports/ xenial-updates universe
# deb-src http://ports.ubuntu.com/ubuntu-ports/ xenial-updates universe
## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
# deb http://ports.ubuntu.com/ubuntu-ports/ xenial-backports main restricted
# deb-src http://ports.ubuntu.com/ubuntu-ports/ xenial-backports main restricted
deb http://ports.ubuntu.com/ubuntu-ports/ xenial-security main restricted
deb-src http://ports.ubuntu.com/ubuntu-ports/ xenial-security main restricted
# deb http://ports.ubuntu.com/ubuntu-ports/ xenial-security universe
# deb-src http://ports.ubuntu.com/ubuntu-ports/ xenial-security universe
# deb http://ports.ubuntu.com/ubuntu-ports/ xenial-security multiverse
# deb-src http://ports.ubuntu.com/ubuntu-ports/ xenial-security multiverse
首先,debian系的软件包的格式为deb格式。这里的deb deb-src分别代表deb包和deb包对应的源码的地址和仓库。
deb和deb-src格式介绍(具体可参考ubuntu官方文档):
- http://xxxx为对应的网络地址
- xenial 对应的是ubuntu的系统版本代号,这里为16.04
- security,backports,updates,preposed 对应的是ubuntu大的系统版本号中的小版本,我们基本只会用到前面两个。相关介绍:它们分别对应的是安全更新(影响系统性能),后备更新(在ubuntu大版本冻结时,所有对应软件的功能也定型了,后续只会修复bug,哪怕相关软件更新了功能,但是此版本ubuntu不提供新功能,这个小版本就是提供这些软件的新版本的),普通更新(不影响系统性能),预备更新(说白了就是security,updates的beta测试版本,验证稳定后,进入security,updates)。
- main,universe,restricted,multiverse 版权限定。他们分别是官方维护的自由软件,社区维护的自由软件,设备驱动,非自由软件,但是可免费使用。
总的格式为:
- deb 网络地址 系统代号(大版本)-小版本 版权限定
- deb-src 网络地址 系统代号(大版本)-小版本 版权限定
客户端---源
打开一个ubuntu的源,可能如下图:
这里有两个文件夹是我们经常用到的,一个是dists,一个是pool,其他的文件及文件夹一般人不会用到。
dists文件夹:
分版本,版本限定以及架构存放的软件包的信息,例如下面的这些图:
这里的压缩包里面存放的就是这个仓库的软件信息,有需求可以下载下来分析,里面包含很多有用的信息。(其实我们apt update下载下来的东西就是这个)
pool文件夹:
里面是所有的包存放的物理地址,这些物理地址的引索在dists文件夹中的压缩包中有。所以直接可以apt install 下载下来,通过dpkg安装。
pool里面的包也是按照包首字母和版权限定存放的。
列如包:gstreamer1.0-plugins-ugly
在ubuntu的软件包搜索中,查找gstreamer1.0-plugins-ugly,找到后,切换到下载页面,可见gstreamer1.0-plugins-ugly的实际下载路径,如下图,意思是在某源的pool/universe/g/gst-plugins-ugly1.0/ 目录下,如图:
这样我就找到了这个包
注意:如果通过apt 无法安装某些软件,并且你在ubuntu软件包中搜索到了,请打开对应的限定源并更新即可下载。
服务端---源 常见的有几种
- ubuntu 官方源
- ppa(Personal Package Archives)
后记
无
参考文献
- 无
打赏、订阅、收藏、丢香蕉、硬币,请关注公众号(攻城狮的搬砖之路)
PS: 请尊重原创,不喜勿喷。
PS: 要转载请注明出处,本人版权所有。
PS: 有问题请留言,看到后我会第一时间回复。
Ubuntu 的源相关介绍(最近在配gstreamer的时候,紧急补充的知识)的更多相关文章
- 一 hadoop 相关介绍
hadoop 相关介绍 hadoop的首页有下面这样一段介绍.对hadoop是什么这个问题,做了简要的回答. The Apache™ Hadoop® project develops open-sou ...
- Ubuntu下载源码并编译
本文章将介绍如何在Ubunt下进行Linux源码下载,并进行简单的编译步骤. 1.下载linux源码 先查看对应的Ubuntu对应版本源码 $ sudo apt-cache search linux- ...
- ubuntu 更新源 或者 apt-get install 出错404 not found ,Failed to fetch
1.考虑是不是能上网 2.用apt-get update ,然后再试试apt-get install 如果apt-get update 也出现很多 404 not found 或者 failed to ...
- 寒武纪加速平台(MLU200系列) 摸鱼指南(一)--- 基本概念及相关介绍
PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明 本文作为本人csdn blog的主站的备份.(Bl ...
- GMAC网卡相关介绍与分析
GMAC网卡相关介绍与分析 目录 GMAC网卡相关介绍与分析 环境描述 MII MII RMII GMII RGMII SGMII GMAC网卡信息获取方法 获取GMAC网卡信息 查看PHY工作接口模 ...
- ubuntu更新源(Package has no installation candidate 的问题)
最近将公司的台式机安装了ubuntu16.04,安装之后,使用apt-get install openssh-server 发现出现:Package 'openssh-server' has no i ...
- ppDelegate的相关介绍
// AppDelegate的相关介绍// IOS笔记 //@interface AppDelegate : UIResponder <UIApplicationDelegate>// ...
- Ubuntu 更新源
1.首先备份Ubuntu12.04源列表 sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup (备份下当前的源列表) 2.修改更新源 ...
- 更换ubuntu apt-get 源
为了优化ubuntu软件安装/更新速度,我测试了国内几家apt源的速度,发现北京交大的apt源速度相对最快,然后可以通过以下步骤更新ubuntu源 1) 备份默认的apt源 $ cd /etc/apt ...
- 【个人笔记】002-PHP基础-01-PHP快速入门-02-PHP语言相关介绍输
002-PHP基础-01-PHP快速入门 02-PHP语言相关介绍 1.PHP是什么 Hypertext Preprocessor超文本预处理器 是一种通用开源脚本语言 Personal Home P ...
随机推荐
- Oracle私网mtu滚动修改实施方案
之前测试遇到过mtu修改不能滚动的情况,目前在自己测试环境重新反复验证发现正常是可以滚动的,下面梳理下整个实施方案: 环境:RHEL6 + Oracle 11.2.0.4 RAC(2 nodes) / ...
- .NET 云原生架构师训练营(模块二 基础巩固 MVC终结点)--学习笔记
2.3.4 Web API -- MVC终结点 MVC与MVVM 模型绑定 自定义模型绑定器 模型验证 返回数据处理 MVC与MVVM MVC ASP.NET Core MVC 概述:https:// ...
- jq 实现select 下拉框的联动效果
实现联动的代码 $(document).ready(function() { $("#selectone").bind("change",function(){ ...
- OCR 02: Tesseract-OCR
Catalog OCR 01: EasyOCR OCR 02: Tesseract-OCR OCR 03: PaddleOCR Project Host And Brief Official Site ...
- Spring的接口集合注入功能
Spring的接口集合注入功能 对于Spring中已经注入的bean, 可以使用Autowired, 通过Map<String, BeanInterface>或List<BeanIn ...
- 【Unity3D】Renderer Feature简介
1 3D 项目迁移到 URP 项目后出现的问题 3D 项目迁移至 URP 项目后,会出现很多渲染问题,如:材质显示异常.GL 渲染不显示.多 Pass 渲染异常.屏幕后处理异常等问题.下面将针对这 ...
- 【Unity3D】分离路面导航
1 前言 导航系统中介绍了导航的基本用法,但是不能解决分离路面导航问题.如下图,胶囊体需要导航到立方体位置,但是路面不连续,烘焙(Bake)导航网格后,断开处也没有导航网格,因此,胶囊体导航到分离 ...
- 我的小程序之旅七:微信公众号设置IP白名单
一.为什么要配置IP白名单 此处IP为服务器对公网IP: 在IP白名单内的IP地址作为来源,获取access_token接口才可调用成功. 而想要调用公众号相关API,就必须获取access_toke ...
- 2021-07-20 value!==value,JavaScript中NaN
关于NaN NaN 属性代表一个"不是数字"的number类型的字面量值.这个特殊的值是因为运算不能执行而导致的,不能执行的原因要么是因为其中的运算对象之一非数字. NaN的出现场 ...
- [BAT面试题系列]乐观锁和悲观锁
基本概念 乐观锁和悲观锁是两种思想,用于解决并发场景下的数据竞争问题(使用非常广泛,不局限于某种编程语言或数据库). 乐观锁:乐观锁在操作数据时非常乐观,认为别人不会同时修改数据.因此乐观锁不会上锁, ...