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相关命令,如果没有网络环境的情况下使用

相关推荐
zt1985q28 分钟前
本地部署消息代理软件 RabbitMQ 并实现外部访问( Windows 版本 )
运维·服务器·windows·rabbitmq·ruby
wanhengidc41 分钟前
云手机与云服务器之间的关系
服务器·游戏·智能手机·云计算·区块链
赖small强42 分钟前
【蓝牙】BLE 数据收发实战指南(手机 App ↔ 嵌入式 Linux/BlueZ)
linux·蓝牙·bluez·bluetoothctl·dbus-monitor·central·peripheral
wit_yuan44 分钟前
linux udp广播数据包实际用例
linux·服务器·udp
大聪明-PLUS44 分钟前
io_uring:Linux 上的高性能异步 I/O
linux·嵌入式·arm·smarc
qq_479875431 小时前
Linux time function in C/C++【2】
linux·c语言·c++
小武~1 小时前
嵌入式网络编程深度优化 --网络协议栈配置实战指南
linux·网络·网络协议
二进制星轨1 小时前
在 Ubuntu 上快速配置 Node.js 环境(附问题说明)
linux·ubuntu·node.js
利刃大大2 小时前
【高并发服务器:HTTP应用】十四、Util工具类的设计与实现
服务器·http·高并发·项目·cpp
kblj55552 小时前
学习Linux——网络——网卡
linux·网络·学习