lv3 嵌入式开发-2 linux软件包管理

目录

[1 软件包管理](#1 软件包管理)

1.1流行的软件包管理机制

1.2软件包的类型

1.3软件包的命名

[2 在线软件包管理](#2 在线软件包管理)

2.1APT工作原理

2.2更新软件源

2.3APT相关命令

[3 离线软件包管理](#3 离线软件包管理)


1 软件包管理

1.1流行的软件包管理机制

Debian Linux首先提出"软件包"的管理机制---Deb软件包

将应用程序的二进制文件、配置文件、man/info帮助页面等文件合并打包在一个文件中,用户使用软件包管理器直接操作软件包,完成获取、安装、卸载、查询等操作。

Redhat Linux基于这个理念推出了自己的软件包管理机制---Rpm软件包

随着Linux操作系统规模不断扩大,系统中软件包间复杂的依赖关系,导致Linux用户麻烦不断

Debian Linux开发出了APT软件包管理器,包含2个特点。

  • 检查和修复软件包依赖关系
  • 利用Internet网络帮助用户主动获取软件包

APT工具再次促进了Deb软件包更为广泛地使用,成为Debian Linux的一个无法替代的亮点。

1.2软件包的类型

Ubuntu有两种类型的软件包:二进制软件包(deb)和源码包(deb-src)

  • 二进制软件包(Binary Packages):它包含可执行文件、库文件、配置文件、man/info页面、版权声明和其它文档。
  • 源码包(Source Packages):包含软件源代码、版本修改说明、构建指令及编译工具等。

先由tar工具归档为.tar.gz文件,然后再打包成.dsc文件。

如果不确定一个软件包类型时,可以使用file命令查看文件类型。

例1:

复制代码
linux@ubuntu:~$ file  g++_4.1.2-9ubuntu2_i386.deb
g++_4.1.2-9ubuntu2_i386: Debian binary package (format 2.0)

例2:

1.3软件包的命名

软件包的命名遵循以下约定:

2 在线软件包管理

2.1APT工作原理

Ubuntu采用集中式的软件仓库机制,将各式各样的软件包分门别类地存放在软件仓库中,进行有效地组织和管理。然后,将软件仓库置于许许多多的镜像服务器中,并保持基本一致。因此,对于用户,这些镜像服务器就是他们的软件源(reposity)。

在Ubuntu系统中,使用软件源配置文件/etc/apt/sources.list 列出最合适访问的镜像站点地址

2.2更新软件源

方式一:修改/etc/apt/sources.list (直接复制粘贴网址)

方式二:图形界面更换软件源

更换完再去检测sources.list文件查看内容是否更新,建议更改为中国区的。

最后需要更新

sudo apt-get update

2.3APT相关命令

可通过man apt-get查看更多解释,操作案例:

3 离线软件包管理

dpkg相关命令,如果没有网络环境的情况下使用

相关推荐
cccccc语言我来了4 分钟前
C++轻量级消息队列服务器
java·服务器·c++
xiaoshuaishuai810 分钟前
C# Codex 脚本编写
java·服务器·数据库·c#
Ai173163915791 小时前
GB200 NVL72超节点深度解析:架构、生态与产业格局
大数据·服务器·人工智能·神经网络·机器学习·计算机视觉·架构
思茂信息1 小时前
CST交叉cable的串扰(crosstalk)仿真
服务器·开发语言·人工智能·php·cst
weixin_449173651 小时前
Linux -- 项目中查找日志的常用Linux命令
linux·运维·服务器
琉璃榴2 小时前
Visual Studio Code连接远程服务器
服务器·vscode·github
深念Y2 小时前
赛米尼M02/海纳斯HiNAS系统-WiFi驱动安装教程
运维·服务器·网络·docker·nas·机顶盒·hinas
想唱rap2 小时前
C++智能指针
linux·jvm·数据结构·c++·mysql·ubuntu·bash
会飞的土拨鼠呀2 小时前
Ubuntu24.04安装open-vm-tools
运维·服务器
Gofarlic_OMS3 小时前
应对MathWorks合规审查的专项准备工作
大数据·服务器·网络·数据库·人工智能