openKylin论坛

 找回密码

OpenKylin 2.0 kylin-update-frontend.postinst 代码第9行有缺陷 [复制链接]

OpenKylin 2.0 kylin-update-frontend.postinst 代码第9行有缺陷

2023.12.29

软件包版本: kylin-update-frontend (2.0.0.0-ok13)

---
apt-get upgrade 报错输出:

---

正在设置 ukui-session-manager (4.0.0.0-ok19) ...
/home/kylin/.profile

正在设置 kylin-update-frontend (2.0.0.0-ok13) ...
libupgrade.so
/var/lib/dpkg/info/kylin-update-frontend.postinst: 第 9 行:[: =:需要一元表达式
---

第9行的代码内容 如下:

---
if [ `/usr/bin/kylin_release_id.py` = "2203" ];then
---

手动运行了 /usr/bin/kylin_release_id.py,发现输出为 空。
原因就好理解了。

2种解决方案:

1. 在两个反引号前后,加上双引号,以标示内容可能为 空:

if [ "`/usr/bin/kylin_release_id.py`" = "2203" ];then

2. 加上一个额外的字符(在 grub.cfg 配置文件 里可以看到类似的用法)

if [ x`/usr/bin/kylin_release_id.py` = "x2203" ];then
楼主
发表于 2023-12-29 12:01:32
回复

使用道具 举报

OpenKylin 2.0 kylin-update-frontend.postinst 代码第9行有缺陷 [复制链接]

现在已经没运行 openkylin 2.0 amd64 了。
今天又看了下新包(上次提到的旧包,版本是 2.0.0.0-ok13):
http://mirrors.163.com/openkylin ... in-update-frontend/

kylin-update-frontend_2.0.0.0-ok18_amd64.deb       28-Feb-2024 11:10      2M

新包里的 postinst 安装后脚本,里面的代码还是老样子。
不知道是 /usr/bin/kylin_release_id.py 脚本有做修正或预防处理,还是修复的优先级不够?

有用 openkylin 2.0 的朋友,可以手动重新安装下这个包,确认是否还是存在同样的报错。

  1. sudo apt-get reinstall kylin-update-frontend
复制代码

沙发
 楼主| 发表于 6 天前
回复

使用道具 举报

openKylin

GMT+8, 2024-4-29 03:25 , Processed in 0.018006 second(s), 17 queries , Gzip On.

Copyright ©2022 openKylin. All Rights Reserved .

ICP No. 15002470-12 Tianjin

快速回复 返回顶部 返回列表