关于OpenSUSE,微魔对这个发行版可以说是情有独钟,主要来源于情怀(准确来讲是zypper实在让人喜欢)。BUT,玩弄VPS的少年们肯定会注意到这个发行版在各家服务商的iso列表里都很少出现(相比于丰富版本的Ubuntu、CentOS甚至Fedora等),但是OpenSUSE有个好处就是即使服务商没有提供最新版本的42.1,你依然可以通过zypper无痛将13.2升级上去。本文即为具体操作过程:
将OpenSUSE 13.2无痛升级到42.1
1.确定自己的版本是13.2
cat /etc/os-release
显示结果类似如下
NAME=openSUSE
VERSION="13.2 (Harlequin)"
VERSION_ID="13.2"
PRETTY_NAME="openSUSE 13.2 (Harlequin) (x86_64)"
ID=opensuse
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:opensuse:opensuse:13.2"
BUG_REPORT_URL="https://bugs.opensuse.org"
HOME_URL="https://opensuse.org/"
ID_LIKE="suse"
2.更新软件
zypper refresh
zypper update
3.备份现有软件源
sudo cp -Rv /etc/zypp/repos.d /etc/zypp/repos.d.bak
4.列出软件源
zypper lr
输出结果类似
# | Alias | Name | Enabled | Refresh
--+---------------------+------------------------------+---------+--------
1 | repo-non-oss | openSUSE-13.2-Non-Oss | Yes | Yes
2 | repo-oss | openSUSE-13.2-Oss | Yes | Yes
3 | repo-update | openSUSE-13.2-Update | Yes | Yes
4 | repo-update-non-oss | openSUSE-13.2-Update-Non-Oss | Yes | Yes
5.删除现有的更新源(repo-update、repo-update-non-oss,具体名称可能不一样,照自己的修改)
sudo zypper rr repo-update
sudo zypper rr repo-update-non-oss
如果有第三方软件源,包括但不限于Packman,也需要使用“zypper rr ”删除(将换成列表中的相应别名)
6.把软件源修改为42.1
sudo sed -i 's/13.2/leap/42.1/g' /etc/zypp/repos.d/*
7.增加42.1的更新源
sudo zypper addrepo --check --refresh --name 'openSUSE-42.1-Update' http://download.opensuse.org/update/leap/42.1/oss/ repo-update
sudo zypper addrepo --check --refresh --name 'openSUSE-42.1-Update-Non-Oss' http://download.opensuse.org/update/leap/42.1/non-oss/ repo-update-non-oss
8.更新系统
zypper dup
9.重启系统
reboot
10.见证奇迹
cat /etc/os-release
输出类似如下,则证明已经升级成功
NAME="openSUSE Leap"
VERSION="42.1"
VERSION_ID="42.1"
PRETTY_NAME="openSUSE Leap 42.1 (x86_64)"
ID=opensuse
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:opensuse:opensuse:42.1"
BUG_REPORT_URL="https://bugs.opensuse.org"
HOME_URL="https://opensuse.org/"
ID_LIKE="suse"