我希望让当前系统 (16.04) 按照软件更新程序的建议管理升级(至 18.04.2)。但是,我还想保留当前文件系统中安装到专用分区的 /home、/opt 和 /usr/local 的内容。
保持 /home 不变听起来像是一个微不足道的要求。另一方面,其他两个目录也包含用户不想删除的自定义安装和链接,但我不太确定软件更新程序是否会格式化它们。
这里的问题是:自动升级过程是否只会覆盖系统严格需要的文件系统目录(/、/boot、/var、/tmp、/etc 等),而其他目录则保持不变?
答案将帮助我认识到如果我采用这种方式,后续需要做的工作量。我知道,或者,我可以手动引导安装并保留这些目录。
答案1
升级过程不会格式化任何分区。
但是它将用新软件包替换旧软件包。系统可能会询问您是否要保留旧文件或替换它们。
如果您有大量定制和非标准软件,升级很可能不会顺利;尤其是从 16.04 到 18.04 的路径,因为桌面环境从 unity 到 gnome,从 lightdm 到 gdm 发生了巨大变化。
例如,我从来没有在我的主计算机上成功地进行这样的升级。
因此,强烈建议您备份,然后全新安装 Ubuntu 18.04。然后进行自定义并从头开始安装所有软件。
我知道这需要做很多工作。这就是我仍然使用 16.04 的原因。
另一种方法是进行备份,尝试升级并观察会发生什么。
从字面上回答你的问题:分区表将保留。没有“格式化”目录这一术语。如果你的意思是它们是否会被清除,答案是否定的。
答案2
许多软件包支持自定义目录/etc
和主目录。那么鼓励您不要自定义目录,/etc
而是自定义主目录。当您自定义目录时,/etc
它们可能会在升级过程中丢失,但通常会提示您。
有些软件包,比如 grub,让你没有选择,因为唯一可以定制的地方就是在 内部/etc/grub/default
。
我发现升级16.04
到18.04
需要两三次尝试。我会收到错误消息并崩溃。所以我回到 16.04 清理一些旧文件(或删除未使用的应用程序)并重复该过程。
我从不在实时系统上进行升级,而是在克隆系统上进行升级:
在升级过程中,如果您发现文件丢失或发生更改,您可以重复克隆,制作特殊副本并重复升级。
我也设法打破规则,直接从16.04到19.04但这带来了许多挑战:
即使成功升级后,我仍然会花数周时间测试新版本,并且Pilot6 的回答发现缺陷后返回16.04作为我的日常操作系统。我仍然会不时地启动 18.04 或 19.04 克隆升级,以便在人们在这里询问这些版本的问题时进行实验询问 Ubuntu。