使用

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爬虫-request模块

    1. requests 中的请求方法 HTTP 请求方法: requests.get(url, params=None, **kwargs) # GET 请求 requests.post(url, d ...

  2. JS--正则表达式--手稿

  3. 四 黑马程序员-java面向对象(上)

    一.:面向对象 (1)面向对象:是基于面向过程的一种思想. 面向过程:以函数为基础,关注实现过程. 面向对象:以对象为基础,关注实现结果. (2)面向对象的思想特点: A:是一种更符合人们思考习惯的思 ...

  4. 将虚拟机跑在ceph之中

    目录 openStack对接ceph 1. cinder对接ceph 1.1 ceph创建存储池 1.2 ceph授权 1.3 下发ceph文件 1.4 修改globals文件 1.5 部署cinde ...

  5. 在ubuntu16.04下,源码编译安装特定版本的MongoDB PHP扩展

    背景:我的php项目在连接其他mongo库时报:Server at xxx:27017 reports wire version 5, but this version of libmongoc re ...

  6. 解决阿里云redis监听6379,配置规则也将6379端口开放,但是外网仍无法连接6379的问题

    首先确保阿里云配置规则和服务器防火墙已开发6379端口 阿里云linux安装完成redis,并且已经运行,检测6379端口,显示redis-server正在监听,如图 修改redis.conf配置 将 ...

  7. 搭建自动化 Web 页面性能检测系统 —— 部署篇

    我们是袋鼠云数栈 UED 团队,致力于打造优秀的一站式数据中台产品.我们始终保持工匠精神,探索前端道路,为社区积累并传播经验价值. 本文作者:琉易 liuxianyu.cn 这一篇是系列文章: 搭建自 ...

  8. ComfyUI插件:ComfyUI Impact 节点(三)

    前言: 学习ComfyUI是一场持久战,而 ComfyUI Impact 是一个庞大的模块节点库,内置许多非常实用且强大的功能节点 ,例如检测器.细节强化器.预览桥.通配符.Hook.图片发送器.图片 ...

  9. 【Java】Collection 集合框架概述

    Collection 集合框架概述 1.集合.数组都是为了存储数据而产生的 2.为什么需要集合?为了更灵活方便的存储数据,且集合能存储的容量比数组更大 3.存储的概念还停留在内存活动范围内,也只是短暂 ...

  10. 【Vue】15 VueX

    [什么是VueX?] VueX是一个专门为Vue.js应用程序开发的状态管理模式, 采用集中式存储管理应用的所有组件状态, 以相应的规则保证按照一种可预测的方式发生改变. 即把多个组件的变量统一放到一 ...