使用

Ubuntu 包搜索器

apt 命令 功能
apt install 安装软件包
apt remove 移除软件包
apt purge 移除软件包及配置文件
apt update 刷新存储库索引
apt upgrade 升级所有可升级的软件包
apt autoremove 自动删除不需要的包
apt full-upgrade 在升级软件包时自动处理依赖关系
apt search 搜索应用程序
apt show 显示安装细节

whereis <package>: 查找已安装的二进制包的位置

换源

关于 APT 源配置文件的格式可以参见:Ubuntu APT sources.list 文件格式解释 | 博客园

旧版 Ubuntu(22.04 及以下)APT 的源配置文件位于 /etc/apt/sources.list,新版 Ubuntu(24.04 及之后)APT 的源配置文件迁移到了 /etc/apt/sources.list.d/ubuntu.sources。下面的命令默认使用旧版的位置,如果你是新版记得手动修改。

在换源之前,你可以先备份你的原始文件:

sudo cp /etc/apt/sources.list{,.bak}  # 文件备份到 sources.list.bak

使用配置文件换源(推荐)

首先下载 APT 源配置文件 sources.list

  • 你可以直接使用现成的 sources.list 文件掉覆盖原来旧文件来换源。中科大镜像站给出了 Ubuntu 各个版本号的 sources.list 文件:repository file generator

    选择你的 Ubuntu 版本,复制配置文件,并粘贴到 /etc/apt/sources.list

  • 你也可以使用自动检测工具 netselect-apt 来查找最快的源:

    sudo apt install netselect-apt  # 安装 netselect-apt 工具
    sudo netselect-apt # 检测并下载最快源配置

    netselect-apt 工具会将 sources.list 文件下载到当前目录。用该文件替换 /etc/apt/sources.list

    sudo mv sources.list /etc/apt/sources.list

最后不要忘了更新索引:

sudo apt update  # 更新索引

对于 ubuntu-ports 镜像,你只需将配置文件中的 https://mirrors.xxxx.xxx/ubuntu/ 改为 https://mirrors.xxxx.xxx/ubuntu-ports/ 即可。

使用命令换源

使用命令换源更加方便快捷,但是有时由于系统配置了错误的 APT 源,导致命令换源无法正常使用,因此仅推荐熟悉 APT 源的用户使用。

Ubuntu 源

该源仅适用于配置 x86 架构下的 Ubuntu系统,如果你的系统为 ARM,PowerPC 等其他架构,请使用 Ubuntu Ports 源进行配置。

sudo sed -i 's@//.*archive.ubuntu.com@//mirrors.ustc.edu.cn@g' /etc/apt/sources.list  # 使用中科大源

# 因镜像站同步有延迟,可能会导致生产环境系统不能及时检查、安装上最新的安全更新,不建议替换 security 源:
sudo sed -i -r 's/security.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list # 替换 security 源(可选)

然后更新 APT 索引:

sudo apt update  # 更新索引

可用的镜像站:

Ubuntu Ports

如果你使用 ARM,PowerPC 等架构的 Ubuntu 系统,请使用 Ubuntu Ports 源进行配置:

sudo sed -i -r 's/ports.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list  # 使用中科大的 Ubuntu Ports 源

然后更新索引:

sudo apt update  # 更新索引

可用的镜像站:

Old Releases

对于 EOL 发行版,需要使用 old-releases.ubuntu.com

EOL: End Of Life,是那些过于古早的发行版,已经不再维护。

使用官方 old-releases 源(非镜像):

sudo sed -i -r 's/([a-z]{2}\.)?archive.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list
sudo sed -i -r 's/security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list

使用中科大镜像:

sudo sed -i 's@//.*archive.ubuntu.com/ubuntu@//mirrors.ustc.edu.cn/ubuntu-old-releases@g' /etc/apt/sources.list
sudo sed -i -r 's@security.ubuntu.com/ubuntu@mirrors.ustc.edu.cn/ubuntu-old-releases@g' /etc/apt/sources.list

然后更新 APT 索引:

sudo apt update  # 更新索引

可用的镜像站:

参见:

Troubleshooting

apt-get 出现 Err 404 Not Found 的解决办法

APT 使用的更多相关文章

  1. Ubuntu apt 常用命令

     APT(the Advanced Packaging Tool)是Ubuntu 软件包管理系统的高级界面,Ubuntu 是基于Debian的,APT由几个名字以“apt-”打头的程序组成.apt-g ...

  2. Ubuntu16.04 LTS下apt安装WireShark

    Ubuntu16.04 LTS下apt安装WireShark 安装与配置 首先通过apt安装WireShark: $ sudo apt install wireshark 会同时安装许多的依赖包,其中 ...

  3. pip apt source images

    ~/.pip/pip.conf [global] index-url = https://pypi.douban.com/simple download_cache = ~/.cache/pip [i ...

  4. Ubuntu——apt && dpkg参考

    一.apt apt-cache search # ------(package 搜索包) apt-cache show #------(package 获取包的相关信息,如说明.大小.版本等) sud ...

  5. apt 根据注解,编译时生成代码

    apt: @Retention后面的值,设置的为CLASS,说明就是编译时动态处理的.一般这类注解会在编译的时候,根据注解标识,动态生成一些类或者生成一些xml都可以,在运行时期,这类注解是没有的~~ ...

  6. debian下Apache和tomcat整合(使用apt工具)

    最近部署web系统,需要使用tomcat处理和Apache整合使用,tomcat处理JSP,Apache处理静态资源.开始不知道怎么操作,在网上查阅资料走了很多弯路.完成时候,发现其实很简单,现将配置 ...

  7. ubuntu 解决 “E: Problem with MergeList /var/lib/apt/lists/”错误

    这种错误的意思:无法解析或打开软件包的列表或是状态文件. 出现的原因:无法解析或打开软件包列表多数情况是安装的软件与本身系统有一些冲突之类的问题,或者曾在更新软件源或下载软件的时候意外中断造成的. 解 ...

  8. PostgreSQL Apt Repository

    PostgreSQL Apt Repository If the version included in your version of Ubuntu is not the one you want, ...

  9. Ubuntu菜鸟入门(二)—— apt认知,且完善语言安装包

    一  语言安装包安装 1  原因 虽然安装的中文版,但是由于安装包很小,所以汉化的不够完全,所以要安装后,再下载语言包进行安装 2  方法 二  apt--软件包管理器 1   软件源 (1) 介绍 ...

  10. 水坑式攻击-APT攻击常见手段

    所谓“水坑攻击”,是指黑客通过分析被攻击者的网络活动规律,寻找被攻击者经常访问的网站的弱点,先攻下该网站并植入攻击代码,等待被攻击者来访时实施攻击. 水坑攻击属于APT攻击的一种,与钓鱼攻击相比,黑客 ...

随机推荐

  1. Python 引用不确定的函数

    在Python中,引用不确定的函数通常意味着我们可能在运行时才知道要调用哪个函数,或者我们可能想根据某些条件动态地选择不同的函数来执行.这种灵活性在处理多种不同逻辑或根据不同输入参数执行不同操作的场景 ...

  2. JVM(Java虚拟机) 整理(一):基础理论

    JVM整体结构 本文主要说的是HotSpot虚拟机, JVM 全称是 Java Virtual Machine,中文译名:Java虚拟机 简化一下: Java字节码文件 Class文件本质上是一个以8 ...

  3. Spring注解之生命周期@PostConstruct和@PreDestroy

    ****### 简介 从Java EE5规范开始,Servlet增加了两个影响Servlet生命周期的注解(Annotation):@PostConstruct和@PreConstruct. 这两个注 ...

  4. IntellJ Idea遇到Errors occurred while compiling module的解决方法

    问题描述 Information:java: Errors occurred while compiling module '0-common' Information:javac 11 was us ...

  5. Java 对象转XML xStream 别名的使用 附下载方式

    下载方式 Maven方式 pom.xml中 <dependency> <groupId>xstream</groupId> <artifactId>xs ...

  6. 在github开源市场如何高效寻找优秀开源项目

    作为程序员,不论是开发还是学习,肯定会用到开源项目,那么怎么快速在开源网站找到这些项目呢? 常用的开源网站有:github 和 gitee github是全球最大的开源社区,今天就以github为例, ...

  7. 基于Java“镜头人生”约拍网站系统设计实现(源码+lw+部署文档+讲解等)

    \n文末获取源码联系 感兴趣的可以先收藏起来,大家在毕设选题,项目以及论文编写等相关问题都可以给我加好友咨询 系统介绍: 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件 ...

  8. [oeasy]python0066_控制序列_光标位置设置_ESC_逃逸字符_CSI

    光标位置 回忆上次内容 上次讲了 三引号的输出 三引号中 回车和引号 都会 被原样输出 \ 还是需要从 \\转义 黑暗森林 快被摸排清了 还有哪个 转义序列 没 研究过吗? \e是 干什么的? 回忆转 ...

  9. vue table表格实现无缝滚动 鼠标进入可悬停

    <el-table ref="table" :data="tableData" :header-cell-style="{background: ...

  10. LeetCode513. 找树左下角的值

    题目链接:https://leetcode.cn/problems/find-bottom-left-tree-value/description/ 题目叙述: 给定一个二叉树的 根节点 root,请 ...