将Ubuntu服务器从8.10更新到10.04
我有一个安装了Ubuntu 8.10 Server Edition的VPS,我想把它升级到10.04。 这样做的正确方法是什么? 我只有ssh访问它和供应商的客户端面板中的“启动/关闭VPS”。 换句话说,我没有物理访问权限。
另外值得注意的是,由于源(osuosl.org?)不在线,我显然无法再安装程序了。 不是这台服务器设置的那个。
# apt-get update Ign http://ubuntu.osuosl.org intrepid Release.gpg Ign http://ubuntu.osuosl.org intrepid/main Translation-en_US Ign http://ubuntu.osuosl.org intrepid/universe Translation-en_US Ign http://ubuntu.osuosl.org intrepid Release Ign http://ubuntu.osuosl.org intrepid/main Packages Ign http://ubuntu.osuosl.org intrepid/universe Packages Err http://ubuntu.osuosl.org intrepid/main Packages 404 Not Found Err http://ubuntu.osuosl.org intrepid/universe Packages 404 Not Found W: Failed to fetch http://ubuntu.osuosl.org/ubuntu/dists/intrepid/main/binary-amd64/Packages.gz 404 Not Found W: Failed to fetch http://ubuntu.osuosl.org/ubuntu/dists/intrepid/universe/binary-amd64/Packages.gz 404 Not Found E: Some index files failed to download, they have been ignored, or old ones used instead.
好吧,我设法用wojox’tip作为kickstart来解决它。
-
主要问题是无法访问回购并因此进行适当的升级。 这可以通过编辑
/etc/apt/sources.list
并将每次出现的intrepid
更改为jaunty
。 您可以手动执行此操作或使用wojox’oneliner(需要安装perl)。 请注意, 我们假设jaunty repos仍在运行 ,这是他们在撰写本文时所做的 。sudo perl -p -i.intrepid -e 's/intrepid/jaunty/' /etc/apt/sources.list
注 – Ubuntu为旧版本提供镜像: https : //help.ubuntu.com/community/EOLUpgrades/Intrepid
-
更新包列表
sudo apt-get update
-
安装
update-manager-core
sudo apt-get install update-manager-core
-
运行
do-release-upgrade
,它将正确处理下一版本的更新(并确保在ssh上不是障碍)。 请记住,尽管我们之前更改了源列表,但我们仍处于开始时的版本。 所以在我的情况下,我必须做第三步。 务必在每次升级之间重新启动。 请注意,如果您对当前的Ubuntu版本有疑问,可以随时发出cat /etc/issue
它可能不起作用,因为你必须按时间顺序排列。 8.10> 9.04> 9.10> 10.04和9.04也是EOL。
sudo perl -p -i.intrepid -e 's/intrepid/jaunty/' /etc/apt/sources.list
我没有试过这个,但是有可能不使用手动升级来将/etc/apt/sources.list
从使用“http://*archive.ubuntu.com/ubuntu/”转换为使用“http://old-releases.ubuntu.com/ubuntu/”。 然后尝试使用do-release-upgrade
的正常路径。 更新程序可能会抱怨你没有使用“官方镜像”,但请继续使用它。 一旦你到9.04,你可以将sources.list
切换回官方镜像并升级到9.10并继续正常,也许。
我担心do-release-upgrade
会爆炸,因为它根本不知道EOL版本。