.. 旧发行版
FileName: old-releases.rst
Author: Fasion Chan
Created: 2018-11-19 19:47:51
@contact: fasionchan@gmail.com
@version: $Id$
Description:
Changelog:
.. meta::
:description lang=zh:
某些场景需要使用旧版本的 Linux ,有时不太好找。
本文以Ubuntu为例,介绍如何下载旧版本安装镜像以及解决软件源问题。
:keywords: old linux, old linux releases, apt old releases
========
旧发行版
========
某些场景需要使用旧版本的 `Linux` ,有时不太好找。
笔者最近在做一个 `agent` 程序,以二进制程序分发,需要在尽量老的 `Linux` 系统上编译。
老系统不太好找了,只能自己建虚拟机。
花了些时间找 **镜像** 、以及解 **决软件源** 问题,谨记以防不时之需。
.. note::
发布二进制代码, `libc` 兼容性是一个比较棘手的问题。
如果版本不兼容,编译出来的程序便不能执行。
`Linux` `libc` 是 **向下** 兼容的,也就是说在老系统编译的程序在新系统一定是可以运行的!
因此,为了提供程序的适用范围,需要在比较老的系统进行编译。
Ubuntu
======
旧版本 `Ubuntu` 发行版可以在官网上找到: `Ubuntu旧发行版列表 `_ 。
截止本文撰稿时,还可以找到并下载 `Ubuntu 4.10` (这是十几年前的发行版了)。
从列表找到所需版本并下载镜像,最后 :doc:`install` 。
安装系统时,注意 **不要安装额外软件包** !
因为默认的源配置很可能已经失效,而导致安装会失败。
`Ubuntu` 将就版本软件源维护在 ``old-releases.ubuntu.com`` ,以供下载。
如果发现 `apt` 源失效,将源配置调整到 ``old-releases.ubuntu.com`` 即可。
登录进新装系统后,编辑 `/etc/apt/sources.list` 配置文件,将所有软件源域名替换成 ``old-releases.ubuntu.com`` :
.. code-block:: shell-session
$ sudo sed -i -re 's/([a-z]{2}\.)?archive.ubuntu.com|security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list
修改完毕后,运行 `apt` 命令更新配置:
.. code-block:: shell-session
$ sudo apt-get update
- `Ubuntu旧发行版列表 `_
- 旧 `apt` 源: ``old-releases.ubuntu.com``
下一步
======
.. include:: /_fragments/next-step-to-wechat-mp.rst
.. include:: /_fragments/disqus.rst
.. include:: /_fragments/wechat-reward.rst
.. comments
comment something out below