Linux Debian发行版系统包管理工具使用教程

一、简介

基于 Debian 发行版的 Linux 的包管理命令使用 aptapt-get,可以用来安装包、更新包、更新包源、移除包等操作。

二、aptapt-get 比较

  • apt 是新版包管理工具,提供了用户友好的命令行接口来管理包,其内部对 apt-get 相关的工具进行了更高级别的包装。

  • apt-get 是老版本的工具,通常比 apt 更稳定,一般用于脚本和需要高级用法。

三、基础命令

更新包源列表
shell 复制代码
sudo apt update
更新所有安装的包到最新的版本
shell 复制代码
sudo apt upgrade
执行完整的包升级

在完整包升级过程中还做额外的操作,如:移除过时的包

shell 复制代码
sudo apt full-upgrade
安装指定的包
shell 复制代码
sudo apt install <package_name>
移除指定的包并保留包的配置文件
shell 复制代码
sudo apt remove <package_name>
移除指定的包并删除包的配置文件
shell 复制代码
sudo apt purge package_name
删除下载的包文件
shell 复制代码
sudo apt autoclean
移除未使用的包和依赖包
shell 复制代码
sudo apt autoremove

sudo apt-get autoremove
通过包名搜索指定的包
shell 复制代码
sudo apt search <package_name>
查看包的详细信息
shell 复制代码
sudo apt show <package_name>
列出已安装的包
shell 复制代码
sudo apt list --installed
使用 apt-get 下载包文件而不安装
shell 复制代码
sudo apt-get download <package_name>
使用 apt-get 修复损坏的包依赖关系
shell 复制代码
sudo apt-get install -f
使用 apt-get 添加自定义包仓库
shell 复制代码
sudo add-apt-repository <repository_name>
sudo apt update
使用 apt-get 升级整个系统到下一个发行版
shell 复制代码
sudo apt-get dist-upgrade
同时安装多个包
shell 复制代码
sudo apt install <package1> <package2> <package3>
检查包版本
shell 复制代码
apt-cache policy <package_name>
模拟包安装

模拟包安装会检查安装的过程,实际上不会安装包

shell 复制代码
sudo apt-get install --simulate <package_name>
将软件包保留为其当前版本防止软件包被升级
shell 复制代码
sudo apt-mark hold <package_name>
取消保留软件包允许软件包再次升级
shell 复制代码
sudo apt-mark unhold <package_name>

四、常见问题

不能获取锁异常

Could not get lock

一般发生在已经有 apt 进程在运行中了,需要手动杀死之前的进程

shell 复制代码
sudo killall apt apt-get
清理损坏的包并清理缓存
shell 复制代码
sudo apt clean
相关推荐
易保山5 分钟前
MIT6.S081 - Lab6 Copy-on-Write(写时复制)
linux·操作系统·c
獨枭25 分钟前
Linux 下安装和使用 Jupyter Notebook
linux·chrome·jupyter
Monee..35 分钟前
linux里安装pip和conda
linux·conda·pip
阳区欠1 小时前
【Linux】进程通信
linux·运维·服务器·共享内存·进程通信·system v·管道文件
姓刘的哦2 小时前
Ubuntu环境安装
linux·运维·ubuntu
AdrichPro3 小时前
10、Linux C 网络编程(完整版)
linux·服务器·c语言·网络
IT 小旋风4 小时前
Linux centos 7 常用服务器搭建
linux·服务器·centos
千百元5 小时前
centos线程数查看
linux·运维·服务器
犽戾武6 小时前
浅谈多个虚拟机(WSL和VMWare)的网络配置
linux·网络
最后一个bug6 小时前
教你快速理解linux中的NUMA节点探测是干什么用的?
linux·c语言·开发语言·arm开发·嵌入式硬件