使用

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. mysqldump备份时保持数据一致性分析--master-data=2 --single-transaction

    对MySQL数据进行备份,常见的方式如以下三种,可能有很多人对备份时数据一致性并不清楚 1.直接拷贝整个数据目录下的所有文件到新的机器.优点是简单.快速,只需要拷贝:缺点也很明显,在整个备份过程中新机 ...

  2. Sqlalchemy 连接SQL Server 登录失败

    实验系统环境 Windows平台 Sqlalchemy 2.0.23 Python 3.10 SQL Server 2012 aioodbc 0.5.0 问题详情 sqlalchemy.exc.Int ...

  3. 全网最适合入门的面向对象编程教程:07 类和对象的Python实现-类型注解-提高代码可读性的利器

    全网最适合入门的面向对象编程教程:07 类和对象的 Python 实现-类型注解-提高代码可读性的利器 摘要: 本文对类型注解的定义.使用原因进行了基本介绍,同时对使用 typing 模块实现类型提示 ...

  4. oeasy 教您玩转 linux 之 010301 电子宠物 pet

    我们来回顾一下 上一部分我们都讲了什么? 中️文诗词fortune=zh的使用 建立自己的彩色诗词库 通过pip把输出结果交给cowsay或boxes 我们这次讲一讲桌面的一些应用 oneko 我们可 ...

  5. JavaScript实现防抖函数

    什么是防抖?防抖就是避免快速多次点击后执行过多的函数调用,就是本来你点击支付宝支付后不小心在点击一次,导致支付函数被调用了两次,还都执行了,付了两次钱. 防抖函数的思想就是将函数延迟调用,延迟时间内不 ...

  6. Flink 架构学习总结

    Flink是一个分布式系统,要求有效地分配和管理计算资源以执行流式应用程序.它集成了所有常见的集群资源管理器,如Hadoop YARN和Kubernetes,但也可以设置为作为standalone甚至 ...

  7. Django 跨域访问POST请求需预先发送option请求问题处理方案

    跨域访问POST请求需预先发送option请求问题处理方案   By:授客 QQ:103355122 实践环境 Win 10 Python 3.5.4 Django-2.0.13.tar.gz 官方下 ...

  8. 7、Git之Github操作

    7.1.注册Github账号 7.1.1.访问官网 Github 官网:https://github.com/ 先访问GitHub的官网首页,点击 sign in (登录),跳转到登录页. 7.1.2 ...

  9. 【NodeJS】操作MySQL

    1.在连接的数据库中准备测试操作的表: CREATE TABLE `user` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID', `name` ...

  10. 【Spring】05 注解开发

    环境搭建 配置ApplicationContext.xml容器文件[半注解实现] <?xml version="1.0" encoding="UTF-8" ...