openSUSE 跨版本升级
准备工作
此方法通过网络跨版本升级,适合 Leap 升级到下一个发行版(如 42.2 升级到 42.3),也适合 Leap 升级为 Tumbleweed。首先必须确定升级的时候有足够的时间、靠谱的更新源和快速并稳定网络。然后整理磁盘内的数据,将不再用的软件包卸载,不需要的东西删除,避免一次下载过多的软件包花费大量时间和者升级过程中磁盘空间不足的情况发生(以往的真实经验:平均 256kb/s 的下载速度升级 3000+ 软件包花费5个小时)。换源升级之前最好用 zypper up 命令将现有软件升级到最新版减小软件升级跨度。另外跨版本升级有一定概率失败或出问题,切记要备份好重要文件和设置以防万一!
替换软件源
将当前的软件源全部替换为将要升级版本的软件源。
方法一:一条命令直接替换(Tumbleweed 源结构略有不同,建议核对后用第二种方法。)
sudo sed -i "s/42.2/42.3/g" /etc/zypp/repos.d/*
方法二:
禁用当前所有的源,再加入将要升级版本的源。软件源名字和地址自己定义不要照搬,加入哪些源根据实际需要来决定。(升级成功后一定要及时整理软件源,否则误操作重新打开了所有的源就麻烦了。)
sudo zypper mr -da
sudo zypper ar -f http://mirrors.ustc.edu.cn/opensuse/distribution/leap/42.3/repo/oss/ USTC-OSS
sudo zypper ar -f http://mirrors.ustc.edu.cn/opensuse/distribution/leap/42.3/repo/non-oss/ USTC-NON-OSS
sudo zypper ar -f http://mirrors.ustc.edu.cn/opensuse/update/leap/42.3/non-oss/ USTC-UP-O
sudo zypper ar -f http://mirrors.ustc.edu.cn/opensuse/update/leap/42.3/oss/ USTC-UP-N
sudo zypper ar -f http://packman.inode.at/suse/openSUSE_Leap_42.3/ packman
方法三:
直接去 YaST 界面一个个手动替换。
刷新源
sudo zypper ref
升级系统
这一步依旧建议先 Ctrl+Alt+F1 切换到控制台登录后执行。毕竟全面升级在不同桌面环境和升级状况下有一定概率造成桌面环境崩溃,黑屏甚至虚拟终端程序中途退出中断升级等问题,经验不足的情况下非常容易损坏系统。
升级并自动应答
sudo zypper dup -y --auto-agree-with-licenses
或者执行升级命令后手动回答系统提问和指定设置
sudo zypper dup
整理软件和设置
更新过程全部顺利完成后重启,重新安装一些因为依赖关系被卸载掉的软件,必要的时候需整理第三方软件。少部分软件或系统功能可能需要重新设置,需要在使用过程中慢慢整理细节。
多媒体编解码器一定要重新核实一遍是否都来自 packman 源,就像以前全新安装时一样。
sudo zypper dup --from http://packman.inode.at/suse/openSUSE_Leap_42.3/
一切顺利的话整个系统就直接升级到新版本了。命令非常少,不必制作安装盘格式化分区,更避免了每新装一次系统又要从头开始进行各种安装和配置非常方便。
openSUSE 跨版本升级的更多相关文章
- android技巧(四)数据库跨版本升级写法
当项目中接手的需求需要在就前数据库数据表做出修改时,不得不面对数据库表结构的更新问题.一般的sqlite数据库更新修改数据库版本号时都会自动调用SqliteOptenHelper及其子类中的onUpg ...
- OpenShift跨版本升级
官方的in-place upgrade直接在线升级的参考链接 https://docs.openshift.com/container-platform/3.11/upgrading/automate ...
- Debian 跨版本升级
相对于某些重量级 Linux 发行版而言,同样是通过网络跨版本升级,Debian 的升级过程总要显得轻快很多.不会因为要下载数量惊人的软件包并安装而把升级时间拉得很长,也不用担心中途某些程序崩溃退出导 ...
- ES跨版本升级?——难道升级集群发生shard allocation是因为要分配replica节点???
Full cluster restart upgrade Elasticsearch requires a full cluster restart when upgrading across maj ...
- Android SQLite数据库版本升级原理解析
Android使用SQLite数据库保存数据,那数据库版本升级是怎么回事呢,这里说一下. 一.软件v1.0 安装v1.0,假设v1.0版本只有一个account表,这时走继承SQLiteOpenHel ...
- android项目数据库升级跨版本管理解决方案
目前公司android项目普遍使用框架对数据库进行操作,数据库表与数据实体都具有严格的对应的关系,但是数据库的升依赖不同版本间的升级脚本,如果应用跨多版本进行升级时,当缺失部分升级脚本时就会导致应用异 ...
- APP版本升级,测试用例总结
APP升级主要在线升级.离线升级.当有新版本时,提示更新,用户点击更新,下载最新版本,进行安装升级,这种就是在线升级:已有升级包,安装升级包进行升级,这种就是离线升级. 在线升级.离线升级常见测试用例 ...
- 转载:Android SQLite数据库版本升级原理解析
Android使用SQLite数据库保存数据,那数据库版本升级是怎么回事呢,这里说一下. 一.软件v1.0 安装v1.0,假设v1.0版本只有一个account表,这时走继承SQLiteOpenHel ...
- MySQL升级
MySQL的升级相对来说还是比较简单的. 它支持两种方式的升级: 原地升级(In-place Upgrade) 关闭数据库,替换旧的二进制文件,重启数据库,执行mysql_upgrade 逻辑升级(L ...
随机推荐
- 线程绑定CPU核-sched_setaffinity
CPU亲合力就是指在Linux系统中能够将一个或多个进程绑定到一个或多个处理器上运行. 一个进程的CPU亲合力掩码决定了该进程将在哪个或哪几个CPU上运行.在一个多处理器系统中,设置CPU亲合力的掩码 ...
- [算法]从Trie树(字典树)谈到后缀树
我是好文章的搬运工,原文来自博客园,博主July_,地址:http://www.cnblogs.com/v-July-v/archive/2011/10/22/2316412.html 从Trie树( ...
- Unity-2017.3官方实例教程Space-Shooter(二)
由于初学Unity,写下此文作为笔记,文中难免会有疏漏,不当之处还望指正. Unity-2017.3官方实例教程Space-Shooter(一) 章节列表: 一.创建小行星Prefab 二.创建敌机和 ...
- 解决 maps to localhost, but this does not map back to the address
修改 /etc/ssh/ssh_config vim /etc/ssh/ssh_config GSSAPIAuthentication no
- zero to one (3)
工具使用 AWVS Acunetix Web Vulnerability Scanner(简称AWVS)是一款知名的Web网络漏洞扫描工具,它通过网络爬虫测试你的网站安全,检测流行安全漏洞. 功能及特 ...
- ogg概叙、架构、进程
一. OGG 概述 OGG 全称Oracle Golden Gate. 历史: Golden Gate公司于1995年成立于美国加州旧金山,它的名称源自旧金山闻名于世的金门大桥.两位创始人Eric F ...
- scala & spark实战
java.lang.Long is not a valid external type for schema of string java.lang.RuntimeException: Error ...
- 打开关闭tomcat的目录浏览功能
目录浏览功能 conf/web.xml中init-param中有对于listing的定义,设置为true即可实现tomcat的目录浏览: tomcat的管理用户设置 conf/tomcat-users ...
- web.xml中的<jsp-config>的用法详解
<jsp-config> 包括<taglib> 和<jsp-property-group> 两个子元素. 其中<taglib>元素在JSP 1.2时就已 ...
- UVa 1335 Beijing Guards (二分+贪心)
题意:n 个人成一个圈,每个人想要 ri 种不同的礼物,要求相邻两个人没有相同的,求最少需要多少礼物. 析:如果 n 是偶数,那么答案一定是相邻两个人的礼物总种数之和的最大值,那么如果是奇数,就没那么 ...