查看问题详情

编号项目分类查看权限最后更新
0000151Anolis OS 8* OTHERSpublic2021-06-04 14:03
报告员sshnuke1 分派给xuchunmei000  
优先级normal严重性minor出现频率always
状态 resolved处理状况open 
标题0000151: 在腾讯云轻量服务器上centos2anolis结果不符预期
描述机型:腾讯云上海轻量服务器
原系统:centos8
执行centos2anolis
在这之前将脚本里的mirrors.openanolis.org换成了mirrors.aliyun.com以加快下载速度
执行报错
========= Start converting =========
Backing up and removing old repository files...
rpm: no arguments given for query
Traceback (most recent call last):
  File "centos2anolis.py", line 482, in <module>
    sys.exit(main(args.r, args.V))
  File "centos2anolis.py", line 265, in main
    repos = subprocess.check_output("rpm -ql "+old_version+" | grep '\.repo$'", shell=True)
  File "/usr/lib64/python3.6/subprocess.py", line 356, in check_output
    **kwargs).stdout
  File "/usr/lib64/python3.6/subprocess.py", line 438, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command 'rpm -ql | grep '\.repo$'' returned non-zero exit status 1.

退出后dnf update发现源是anolis的,而dnf distro-sync发现源变成了centos8
/etc/os-release也是centos8的
标签8.2GA-210611

活动

xuchunmei000

2021-06-02 10:52

开发人员   ~0000228

centos8.0版本的/etc/yum.repos.d/目录下的Centos*.repo文件由centos-release提供,而不是centos-repos,执行rpm -qa centos*repos时结果为空,进一步导致rpm -ql $old_version中的old_version参数为空,最后脚本异常退出。
# rpm -qf /etc/yum.repos.d/CentOS-Base.repo
centos-release-8.0-0.1905.0.9.el8.x86_64

处理方式:
修改迁移脚本,适配8.0repo rpm差异。

xuchunmei000

2021-06-04 14:01

开发人员   ~0000239

centos2anolis.py添加-s选项用于加速repo下载。
在腾讯云上执行迁移时,可以通过命令“python3 centos2anolis.py -s”进行一键迁移。

xuchunmei000

2021-06-04 14:03

开发人员   ~0000240

最新的代码已完成适配8.0 rpm差异。
并添加-s选项用于加速repo访问。

问题历史

日期 用户名 字段 更改
2021-06-01 17:32 sshnuke1 新建问题
2021-06-02 10:52 xuchunmei000 注释已添加: 0000228
2021-06-03 10:26 jacobwang 分派给 => xuchunmei000
2021-06-03 10:26 jacobwang 状态 新建 => 已分配
2021-06-03 17:22 cherryliyumei 添加标签: 8.2GA-210611
2021-06-04 14:01 xuchunmei000 注释已添加: 0000239
2021-06-04 14:03 xuchunmei000 注释已添加: 0000240
2021-06-04 14:03 xuchunmei000 状态 已分配 => 已解决