Debian常用包管理命令用法详解

2024-08-26 23:12

本文主要是介绍Debian常用包管理命令用法详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • apt-get/apt-cache
    • apt
    • dpkg
    • dpkg-source
    • debuild

dpkg和apt是两个不同的工具用于管理Debian系列Linux发行版上的软件包。dpkg是底层工具,负责直接安装、删除和管理软件包文件(.deb)。它不会自动处理软件包的依赖关系,需要用户手动处理。apt是一个高级工具,自动处理软件包依赖,能够从软件仓库中下载和安装软件包,进行更新和升级。apt依赖dpkg来实际执行软件包的安装和卸载。

apt-get/apt-cache

在Debian和Ubuntu及其衍生发行版中,apt-get 和 apt-cache 是两个常用的命令行工具,用于管理和查询软件包。

# apt-get 旧版本的命令
# 更新源文件  
apt-get update
# 升级已安装所有包
apt-get upgrade
# 升级指定的包
apt-get install packagename --only-upgrade# 安装指定包
apt-get install packagename
# 重新安装指定包  
apt-get install packagename --reinstall
# 删除对应包
apt-get remove packagename  
# 删除包及配置文件  
apt-get remove packagename -- purge# 安装指定版本的包 
# 查询可用版本列表
apt-cache policy <package_name>
# 安装指定版本
apt-get install <package_name>=<version_number># 安装相关的编译环境
apt-get build-dep packagename
# 下载对应包的源码 
apt-get source packagename # 查询指定的包
apt-cache search packagename    
# 了解包的版本信息   
apt-cache show packagename 
# 了解使用该包依赖哪些包  
apt-cache depends packagename
# 查看该包被哪些包依赖   
apt-cache rdepends packagename 

apt

apt是Debian中用于管理软件包的高级工具,能够处理依赖关系、更新软件包列表、安装、升级和卸载软件包等操作。

# 安装指定的软件包  
sudo apt install <package_name>
sudo apt install <package_1> <package_2> <package_3>  # 删除指定的软件包  
sudo apt remove <package_name>   
# 移除软件包和配置文件  
sudo apt purge <package_name>  # 列出所有可更新的软件清单
sudo apt update    
# 升级软件包
sudo apt upgrade
# 更新指定的软件
sudo apt update <package_name># 查找软件包
sudo apt search <keyword>  
# 显示软件包具体信息,例如:版本号,安装大小,依赖关系等等
sudo apt show <package_name># 列出可更新的软件包及版本信息
apt list --upgradable
# 列出所有安装的软件包    
apt list --installed  
# 列出所有已安装的包的版本信息
apt list --all-versions

dpkg

dpkg命令是Debian Linux发行版中用于管理二进制软件包(.deb格式)的基本工具。

# 安装deb包  
dpkg -i package.deb  
# 卸载deb包  
dpkg -r package-name
# 重新安装软件包并覆盖缺失的配置文件,但保留现有的配置文件  
dpkg -i --force-confmiss package.deb  # 显示指定包的安装信息   
dpkg -l package-name  
# 列出安装包的文件清单  
dpkg -L package-name 
# 查找给定文件属于哪个已安装的软件包  
dpkg -S filename   
# 显示特定软件包的详细信息,包括描述、版本、依赖等
dpkg -p package-name  

dpkg-source

dpkg-source 命令是用于处理Debian源码软件包的工具,主要用于构建和管理.dsc文件以及源码包

# 解压缩一个源码包,生成源码目录以便后续的修改和构建  
dpkg-source -x package.dsc  # 根据给定的源码目录构建一个新的源码包,生成 .dsc 文件和压缩后的源码包文件
dpkg-source -b source-directory  # 提交对源码包的修改
dpkg-source --commit  

debuild

debuild是一个用于构建Debian软件包的工具,它通过调用其他底层工具(如 dpkg-buildpackage)来简化构建过程。它会处理构建过程中的常见步骤,包括生成.deb文件、.dsc文件和其他相关文件。debuild 主要用于在开发和测试阶段构建和打包Debian软件包。

debulid [options]  #构建deb包  
# -a [archname]  指定debuild构建的系统架构类型   # -b  仅构建二进制包,不构建源包  
# 生成的文件包括: deb二进制安装包  ddeb调试信息包(类似win-pdb)  buildinfo 包含了构建环境的信息和软件包的构建细节
# .changes文件,记录了构建过程中的变更和版本信息  
# 普通包-提供运行程序所需的文件,供最终用户使用。-dev包-提供开发和编译软件所需的文件,供开发人员使用# -S  仅构建源包,不构建二进制包 生成的文件包括:   
# .dsc文件 包含包的基本信息、版本、依赖关系等   
# tar.gz 或tar.xz 源码信息 
#.changes 记录包的构建信息、版本号和变更日志。# -us 构建未签名的源包   
# -uc 构建未签名的 .changes 文件。与 -us 类似,这个选项跳过对 .changes 文件的签名  # -kKEYID  指定用于签名的 GPG 密钥  
# -nc 构建之前不清理source tree  
# --pre-clean 构建之前清理代码树  
# -tc / --post-clean 构建之后清理代码树  
# -sa / --source --all 包含所有的源码文件  # 构建未签名的源包和 .changes 文件
# 默认构建源码包和二进制包,构建完成之后清理中间文件     
debuild -us -uc -tc #把所有的源码文件打包  并且不清理中间文件  
debuild -sa -S -nc  

这篇关于Debian常用包管理命令用法详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1109950

相关文章

MySQL常用字符串函数示例和场景介绍

《MySQL常用字符串函数示例和场景介绍》MySQL提供了丰富的字符串函数帮助我们高效地对字符串进行处理、转换和分析,本文我将全面且深入地介绍MySQL常用的字符串函数,并结合具体示例和场景,帮你熟练... 目录一、字符串函数概述1.1 字符串函数的作用1.2 字符串函数分类二、字符串长度与统计函数2.1

Python标准库之数据压缩和存档的应用详解

《Python标准库之数据压缩和存档的应用详解》在数据处理与存储领域,压缩和存档是提升效率的关键技术,Python标准库提供了一套完整的工具链,下面小编就来和大家简单介绍一下吧... 目录一、核心模块架构与设计哲学二、关键模块深度解析1.tarfile:专业级归档工具2.zipfile:跨平台归档首选3.

MySQL 内存使用率常用分析语句

《MySQL内存使用率常用分析语句》用户整理了MySQL内存占用过高的分析方法,涵盖操作系统层确认及数据库层bufferpool、内存模块差值、线程状态、performance_schema性能数据... 目录一、 OS层二、 DB层1. 全局情况2. 内存占js用详情最近连续遇到mysql内存占用过高导致

Linux如何查看文件权限的命令

《Linux如何查看文件权限的命令》Linux中使用ls-R命令递归查看指定目录及子目录下所有文件和文件夹的权限信息,以列表形式展示权限位、所有者、组等详细内容... 目录linux China编程查看文件权限命令输出结果示例这里是查看tomcat文件夹总结Linux 查看文件权限命令ls -l 文件或文件夹

全面解析Golang 中的 Gorilla CORS 中间件正确用法

《全面解析Golang中的GorillaCORS中间件正确用法》Golang中使用gorilla/mux路由器配合rs/cors中间件库可以优雅地解决这个问题,然而,很多人刚开始使用时会遇到配... 目录如何让 golang 中的 Gorilla CORS 中间件正确工作一、基础依赖二、错误用法(很多人一开

idea的终端(Terminal)cmd的命令换成linux的命令详解

《idea的终端(Terminal)cmd的命令换成linux的命令详解》本文介绍IDEA配置Git的步骤:安装Git、修改终端设置并重启IDEA,强调顺序,作为个人经验分享,希望提供参考并支持脚本之... 目录一编程、设置前二、前置条件三、android设置四、设置后总结一、php设置前二、前置条件

Java Stream流之GroupBy的用法及应用场景

《JavaStream流之GroupBy的用法及应用场景》本教程将详细介绍如何在Java中使用Stream流的groupby方法,包括基本用法和一些常见的实际应用场景,感兴趣的朋友一起看看吧... 目录Java Stream流之GroupBy的用法1. 前言2. 基础概念什么是 GroupBy?Stream

python中列表应用和扩展性实用详解

《python中列表应用和扩展性实用详解》文章介绍了Python列表的核心特性:有序数据集合,用[]定义,元素类型可不同,支持迭代、循环、切片,可执行增删改查、排序、推导式及嵌套操作,是常用的数据处理... 目录1、列表定义2、格式3、列表是可迭代对象4、列表的常见操作总结1、列表定义是处理一组有序项目的

python使用try函数详解

《python使用try函数详解》Pythontry语句用于异常处理,支持捕获特定/多种异常、else/final子句确保资源释放,结合with语句自动清理,可自定义异常及嵌套结构,灵活应对错误场景... 目录try 函数的基本语法捕获特定异常捕获多个异常使用 else 子句使用 finally 子句捕获所

Debian系和Redhat系防火墙配置方式

《Debian系和Redhat系防火墙配置方式》文章对比了Debian系UFW和Redhat系Firewalld防火墙的安装、启用禁用、端口管理、规则查看及注意事项,强调SSH端口需开放、规则持久化,... 目录Debian系UFW防火墙1. 安装2. 启用与禁用3. 基本命令4. 注意事项5. 示例配置R