openSUSE&SUSE 系统版本升级(从 openSuse Leap 42.3 升级到 openSUSE Leap 15.0 )

所有开源项目对自己发布的系统的支持都是有时限的,如果超过这个时限,该系统将不会被支持,新发现的漏洞将不会有补丁去修补,这样会造成极大的安全隐患。
将系统升级成较新的版本可以解决这个问题,但是这样必定会对现有的应用产生一定的风险,所以在操作前一定要多权衡。

步骤目录:
步骤一:升级系统之前要做的准备工作
1.1 确保需要运行的应用能够兼容升级后的系统,重要!
1.2 提前要给系统打快照,如果发现奔溃的情况,可以进行系统回滚,极度重要!

步骤二:清除原有的软件更新源
2.1 先将系统的软件更新到最新版本
2.2 删除 OpenSUSE Leap42.3 的软件源,若有其他数据源,如nginx的,也需要一并删除,可使用zypper lr -d 来查询

步骤三:通过软件源的方式进行系统升级(如果使用步骤四:镜像升级的方式,则可以跳过本步骤)
3.1 添加新的 OpenSUSE Leap 15.0 版本对应的软件源
3.2 确认软件源更新成功
3.3 刷新软件源
3.4 先更新zypper,此步建议不要操作,可能会引起冲突
3.5 更新系统
3.6 更新完毕后,重启系统

步骤四:通过软件源的方式进行系统升级(如果使用步骤三:软件源的方式,则可以跳过本步骤)
4.1 让 cdrom 挂载 OpenSUSE Leap 15.0 的系统镜像
4.2 开机设置启动 cdrom
4.3 重启系统
4.4 按照提示一步步地升级系统

步骤五:检查系统是否完成
5.1 重启后,查看系统信息
5.2 检查 yast 是否正常,是否能够顺利更新补丁

具体的操作步骤:
步骤一:升级系统之前要做的准备工作
1.1 确保需要运行的应用能够兼容升级后的系统,重要!
1.2 提前要给系统打快照,如果发现奔溃的情况,可以进行系统回滚,极度重要!

步骤二:清除原有的软件更新源
2.1 先将系统的软件更新到最新版本
# zypper update 

2.2 删除 OpenSUSE Leap42.3 的软件源,若有其他数据源,如nginx的,也需要一并删除
# zypper lr
# zypper rr 
注意:假如运行这个命令之后,没有移除到软件源的话,可进入 YaSt(输入命令 yast 即可以进入) 控制中心,在 Software , 找到 Software Repositories 双击进入,将列表中的与 42.3 有关的软件源移除完,然后点击 ok,就也能达到删除 42.3 软件源的目的

步骤三:通过软件源的方式进行系统升级(如果使用步骤四:镜像升级的方式,则可以跳过本步骤)
3.1 添加新的 OpenSUSE Leap 15.0 版本对应的软件源
案例一:中科院的公共网络软件源
# zypper ar -fcg https://mirrors.ustc.edu.cn/opensuse/distribution/leap/15.0/repo/oss
# zypper ar -fcg https://mirrors.ustc.edu.cn/opensuse/distribution/leap/15.0/repo/non-oss
# zypper ar -fcg https://mirrors.ustc.edu.cn/opensuse/update/leap/15.0/oss
# zypper ar -fcg https://mirrors.ustc.edu.cn/opensuse/update/leap/15.0/non-oss

案例二:本地镜像软件源
若用 DVD 光盘的话,则插入光盘,把光盘挂载到一个新建的目录下: 
# mkdir /media/DVD 
# mount /dev/cdrom /media/DVD 
再使用 yast 加载 dvd 或则 cd 的软件源

若用的是 ISO 文件,那么把 ISO 文件挂载到一个新建的目录下: 
# mkdir /media/iso 
# mount -r -o loop /home/openSUSE-15.0-DVD-x86_64.iso /media/iso 
(-r参数可以不用,也行,另外卸载的办法是:# umount /media/iso )
再使用 yast 加载 dvd 或则 cd 的软件源

注意:执行了此步骤之后,就一定不能再使用 yast 进行 online-update 否则可能会出先 yast 和 zypper 挂掉的情况,如果出现此情况,就只能使用镜像安装系统升级的方法进行修复(及本文步骤四),修复完成了以后,再使用 yast 的 soft manager 安装 yast-online-update 功能对应的软件
注意:如果使用软件源进行系统升级,则一定要保证系统主机与软件源之间的网络的通畅和稳定

3.2 确认软件源更新成功
# zypper lr -d

3.3 刷新软件源
# zypper ref

3.4 先更新zypper,此步建议不要操作,可能会引起冲突
# zypper patch --updatestack-only

3.5 更新系统
# zypper dup

3.6 更新完毕后,重启系统
# shutdown -r now

步骤四:通过系统镜像安装的方式进行系统升级(如果使用步骤三:软件源的方式,则可以跳过本步骤)
4.1 让 cdrom 挂载 OpenSUSE Leap 15.0 的系统镜像
4.2 开机设置启动 cdrom
4.3 重启系统
4.4 按照提示一步步地升级系统

步骤五:检查系统是否完成
5.1 重启后,查看系统信息
# cat /etc/os-release #会显示
NAME="openSUSE Leap"
VERSION="15.0" 
ID="opensuse-leap"
ID_LIKE="suse opensuse"
VERSION_ID="15.0"
PRETTY_NAME="openSUSE Leap 15.0"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:opensuse:leap:15.0"
BUG_REPORT_URL="https://bugs.opensuse.org"
HOME_URL="https://www.opensuse.org/"
(如果出现有关 openSUSE Leap 15.0的信息,说明更新成功了)

5.2 检查 yast 是否正常,是否能够顺利更新补丁

5.3 检查系统日志查看有没有错误信息
# tail -100 /var/log/messages