mintupgrade
引子
一年前电脑安装了linux mint 19版本,前几天心血来潮,想着升级到最新的版本20.2。于是就按照教程使用命令行升级的方式(mintupgrade check/download/upgrade
),升级完成之后,系统变砖了。这下傻眼了~~~
所以后续经过一系列的PE操作备份,U盘启动盘制作,重新安装linux mint,最后升级到新的版本了,但是系统里面的很多软件、设置均需要重新配置,所以一切都 重头开始了
今天突然想着,之前用mintupgrade 这个命令升级之后为啥出现问题,一看脚本正好是python的,所以想着了解一下。
关于mintupgrade
该命令位于linuxmint 系统的 /usr/bin/mintupgrade
中,利用脚本编辑器打开之后。
结构如下:
顶层结构包含标准的变量:
ORIGIN = "Linux Mint 19.3 'Tricia'"`
ORIGIN_CODENAME = "tricia"
ORIGIN_BASE_CODENAME = "bionic"
DESTINATION = "Linux Mint 20 'Ulyana'"
DESTINATION_CODENAME = "ulyana"
DESTINATION_BASE_CODENAME = "focal"
# 以下还有其他
一个python 类 MintUpgrade
及几个工具函数 usage
, write_tabfile
等。
执行逻辑
在脚本的 __name__== '__main__'
语句块中:
# 首先脚本执行的第一步,判断是否用root账号执行,脚本不允许用root或者sudo账号执行
if os.getuid() == <