可能是怕系统升级容易出错造成数据丢失或系统出错,阿里云在《ECS 使用须知》里明确说明,禁止升级云服务器的内核和操作系统版本。与阿里云不同,Linode虽然也是建议更换新的操作系统版本再迁移数据到新的VPS,但并没有强硬声明禁止用户直接升级系统版本,相应地,官方还给出了Ubuntu Server的升级指南。今天大伟哥参考这份文档,把Linode VPS从Ubuntu Server 14.04LTS成功升级到了Ubuntu Server 16.04LTS,用上了传说中的PHP7。以下是大伟哥翻译的文档,供大家参考。
Ubuntu 16.04是一个长期支持版本(LTS,Long-term Support), 由Canonical公司支持直到2021年4月份。这份指南介绍了如何把你的Linode VPS操作系统由Ubuntu 14.04 (Trusty Tahr) 升级到Ubuntu 16.04 (Xenial Xerus)。
注意:
版本升级有时会出现不可预测的后果,如果可能的话,尽量使用下面的步骤来替代升级本指南的升级方法:
- 使用最新的磁盘镜像创建一个新的Linode
- 重新建立你的应用
- 转移你的数据到新的Linode
- 切换IP地址
如果升级过程中网络中断,升级可能没法完成或者崩溃。所以要使用Lish或者Glish这种不依赖活动的网络链接的稳定环境来实施升级。
重要: Ubuntu 16.04 ships使用了OpenSSH 7.2p2,不允许ssh-dss主机身份验证,或者使用SSH1协议。
说明:以下步骤需要使用root权限,所以要确保使用root身份或者在命令前面加上sudo。
升级前的准备
为了能够顺利升级linode,需要完成以下准备工作:
-
安装Ubuntu 14.04的软件包更新
-
备份你的数据
-
确认你用的linux内核是最新的
-
停止非关键的服务
-
启用一个LISH会话确保安装过程不被中断
安装可用更新
更新软件包列表并安装所有的更新:
sudo apt-get update && sudo apt-get upgrade
备份你的Linode
实施大的升级前,备份你的Linode是一个好主意。这样如果在升级过程中发生了什么错误,你还可以从备份中恢复它。你果你使用了Linode的备份服务,我们建议你在升级到Ubuntu 16.04 LTS前手动创建一个快照。如果你使用了其他的备份服务或应用,我们建议你现在手动备份一下。
检查你的系统Kernel
确认一下你的Linode正在使用最新支持的内核。要了解更多信息,可以查看应用Kernel更新 。
停止服务
在升级到Ubuntu 16.04 LTS之前,我们建议你停止所有可以停止的服务,包括网站服务器(Apache和nginx)、数据库(PostgreSQL和MySQL)和其他任何非关键的服务。要停用服务,可以输入以下命令,用你想要停止的服务名称代替代码里的apache2:
sudo service apache2 stop
现在你已经准备好在你的linode上升级安装Ubuntu 16.04 LTS了。
从Ubuntu 14.04 LTS升级到Ubuntu 16.04 LTS
要记住,以下步骤需要在Lish或者Glish会话里进行:
-
安装
update-manager-core
软件包(其实已经装好了):sudo apt-get install update-manager-core
-
打开文件/etc/update-manager/release-upgrades,确认Prompt的值设定的是lts:
文件/etc/update-manager/release-upgrades:
# Default behavior for the release upgrader. [DEFAULT] # Default prompting behavior, valid options: # # never - Never check for a new release. # normal - Check to see if a new release is available. If more than one new # release is found, the release upgrader will attempt to upgrade to # the release that immediately succeeds the currently-running # release. # lts - Check to see if a new LTS release is available. The upgrader # will attempt to upgrade to the first LTS release available after # the currently-running one. Note that this option should not be # used if the currently-running release is not itself an LTS # release, since in that case the upgrader won't be able to # determine if a newer release is available. Prompt=lts
-
现在终于可以开始升级到Ubuntu 16.04 LTS了:
sudo do-release-upgrade
接下来需要根据屏幕上出现的提示操作,以完成安装过程。
-
因为Linode提供了Ubuntu的内部软件源镜像,你可能会看到下面的消息:
No valid mirror found While scanning your repository information no mirror entry for the upgrade was found. This can happen if you run an internal mirror or if the mirror information is out of date. Do you want to rewrite your 'sources.list' file anyway? If you choose 'Yes' here it will update all 'trusty' to 'xenial' entries. If you select 'No' the upgrade will cancel. Continue [yN]
输入
y
并 Enter 继续: -
升级过程会需要重启系统,启动以后,你就可以确认系统运行的是不是Ubuntu 16.04了:
lsb_release -a
-
你应该可以看到下面的输出:
No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 16.04 LTS Release: 16.04 Codename: xenial
现在可以肯定你的系统运行的就是Ubuntu 16.04 LTS了.
- 333 阅读
添加新评论