Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

升级不到最新的系统 #1200

Closed
QooGeek opened this issue Dec 21, 2023 · 78 comments
Closed

升级不到最新的系统 #1200

QooGeek opened this issue Dec 21, 2023 · 78 comments
Labels
bug Something isn't working

Comments

@QooGeek
Copy link

QooGeek commented Dec 21, 2023

h69k 检查更新下载固件,点击更新的时候,不管去不去掉保留配置,h69k就重启了一下。开机还是旧的固件,一直死循环,不管怎么web界面点击升级都不行,请教这个是什么问题呢?

web 界面显示最新的固件版本
istoreos-22.03.5-2023121510-h6xk-squashfs-combined.img.gz

目前现有的固件版本
iStoreOS 22.03.5 r20370-712ed14f8b


开发者注:其他人遇到类似问题先看此楼 #1200 (comment)

@johnshuxian
Copy link

我也是一样的问题

@jjm2473
Copy link
Contributor

jjm2473 commented Dec 22, 2023

iStoreOS 22.03.5 r20370-712ed14f8b这个版本号不像是我们发布的

@jjm2473
Copy link
Contributor

jjm2473 commented Dec 22, 2023

你们一开始刷的固件是从哪里下载的?

@LWEI2020
Copy link

我也是一样的问题,现在固件版本 iStoreOS 22.03.5 2023102711;最新固件是istoreos-22.03.5-2023121510-x86-64-squashfs-combined.img.gz

@johnshuxian
Copy link

我也是一样的问题,现在固件版本 iStoreOS 22.03.5 2023102711;最新固件是istoreos-22.03.5-2023121510-x86-64-squashfs-combined.img.gz

我也听停在这个版本了 升级不了

@johnshuxian
Copy link

你们一开始刷的固件是从哪里下载的?

就是从官网上下载的 还更新了几次

@jjm2473
Copy link
Contributor

jjm2473 commented Dec 28, 2023

之后的固件会加上保留系统升级日志的功能,不过也只有升级到下个版本固件之后才有这个功能

@jjm2473
Copy link
Contributor

jjm2473 commented Dec 28, 2023

你们有在软件包页面升级过系统的软件包吗?尤其是base-files这个包。

@QooGeek
Copy link
Author

QooGeek commented Dec 28, 2023

我尝试恢复出厂设置,通过升级,也是升级不上去。

@QooGeek
Copy link
Author

QooGeek commented Dec 28, 2023

base-files | 1510-r20370-712ed14f8b 版本

@jjm2473
Copy link
Contributor

jjm2473 commented Dec 28, 2023

@tyinet 都说了你的固件都不是官方的,版本号都不是日期形式,你还是先刷个官方固件再说吧。

@jjm2473
Copy link
Contributor

jjm2473 commented Dec 28, 2023

从istore安装“系统便利工具”(可以搜索SysTools),然后打开插件,选择“修复系统软件”,然后点击“执行”,完成以后会自动重启。重启以后再尝试升级固件。

不要再升级不是自己安装的软件包,openwrt有些软件包跟istoreos不兼容,或者就是还有bug没修。

@wanggy429
Copy link

尝试了修复系统软件,还是不行,basefile版本:12-2023120811,当前版本:StoreOS 22.03.5 2023120811,检测到的新版本:istoreos-22.03.5-2023121510-x86-64-squashfs-combined.img.gz

@LWEI2020
Copy link

LWEI2020 commented Dec 29, 2023

尝试了修复系统软件,还是不行
物理机 X86 8+128 6网口
现在固件版本 iStoreOS 22.03.5 2023102711;最新固件是istoreos-22.03.5-2023121510-x86-64-squashfs-combined.img.gz
重启后 仍然是原来版本
希望能研究一下
最新固件istoreos-22.03.5-2023122916-x86-64-squashfs-combined.img.gz

@Ocean-Hw
Copy link

Ocean-Hw commented Jan 5, 2024

X86 物理机 同样问题 没有更新过base-files
系统便利工具修复系统软件后安装更新无效 更新重启后依然是原版本
base-files版本12-2023112413
系统版本 22.03.5 2023112413
这种只能格式化重装吗

@jjm2473
Copy link
Contributor

jjm2473 commented Jan 5, 2024

@Ocean-Hw 试试先停掉docker,然后再升级。为了节省测试时间,先下载好最新固件,然后在后台的“系统”-“备份与升级”里面升级,这样就算失败了也不用再重新下载

@Ocean-Hw
Copy link

Ocean-Hw commented Jan 8, 2024

@Ocean-Hw 试试先停掉docker,然后再升级。为了节省测试时间,先下载好最新固件,然后在后台的“系统”-“备份与升级”里面升级,这样就算失败了也不用再重新下载

使用/etc/init.d/dockerd stop停止docker
/etc/init.d/dockerd status确认处于inactive状态后 在“系统”-“备份与升级”里面升级,依然重启后还是老系统。

@jjm2473
Copy link
Contributor

jjm2473 commented Jan 8, 2024

@Ocean-Hw 你是不是扩容过根目录,也就是overlay?

@Ocean-Hw
Copy link

Ocean-Hw commented Jan 8, 2024

@Ocean-Hw 你是不是扩容过根目录,也就是overlay?

没有的,overlay就是原始的2GB,剩下的空间单独格式化成/mnt/xxxx的。

@jjm2473
Copy link
Contributor

jjm2473 commented Jan 8, 2024

@Ocean-Hw 那应该不会影响升级。既然你是x86的,那就接上显示器,然后用手机录屏(如果有采集卡就更好),然后开始升级,在最终刷写固件之前开始录就行了,把升级过程的录屏发来看看,放在网盘或者 wetransfer.com ,或者邮箱发我都行。

@Ocean-Hw
Copy link

Ocean-Hw commented Jan 8, 2024

@Ocean-Hw 那应该不会影响升级。既然你是x86的,那就接上显示器,然后用手机录屏(如果有采集卡就更好),然后开始升级,在最终刷写固件之前开始录就行了,把升级过程的录屏发来看看,放在网盘或者 wetransfer.com ,或者邮箱发我都行。

大佬我录了一个发您Gmail了 谢谢呀

@jjm2473
Copy link
Contributor

jjm2473 commented Jan 8, 2024

@Ocean-Hw 谢谢,我看看

@jjm2473
Copy link
Contributor

jjm2473 commented Jan 8, 2024

image

@Ocean-Hw 我怀疑是mount命令被替换成其他版本了,你打开终端执行下这个命令ls -l /bin/mount; grep /bin/mount -r /usr/lib/opkg/info看看输出什么

@jjm2473
Copy link
Contributor

jjm2473 commented Jan 8, 2024

@Ocean-Hw 执行命令没,输出什么?

@Ocean-Hw
Copy link

Ocean-Hw commented Jan 8, 2024 via email

@wanggy429
Copy link

image @Ocean-Hw 我怀疑是mount命令被替换成其他版本了,你打开终端执行下这个命令`ls -l /bin/mount; grep /bin/mount -r /usr/lib/opkg/info`看看输出什么

印象中,我是配置rclone 的时候,以为没有安装fuse3 ,使用了符号链接命令,把fuse2链接为fuse3 ,是不是这个问题导致的呢

@Ocean-Hw
Copy link

Ocean-Hw commented Jan 9, 2024

@Ocean-Hw 执行命令没,输出什么?

我来啦

 -------------------------------------------------------
 iStoreOS 22.03.5, 2023112413
 -------------------------------------------------------
root@iStoreOS:~# ls -l /bin/mount; grep /bin/mount -r /usr/lib/opkg/info
lrwxrwxrwx    1 root     root             7 Nov 23 19:17 /bin/mount -> busybox
/usr/lib/opkg/info/busybox.list:/bin/mount
/usr/lib/opkg/info/mount-utils.list:/usr/bin/mountpoint
/usr/lib/opkg/info/mount-utils.list:/usr/bin/mount
root@iStoreOS:~# 

@Ocean-Hw
Copy link

Ocean-Hw commented Jan 9, 2024

@Ocean-Hw 执行命令没,输出什么?

微信图片_20240109082025

@Ocean-Hw
Copy link

Ocean-Hw commented Jan 9, 2024

@Ocean-Hw 执行命令没,输出什么?

大神 在吗

@jjm2473
Copy link
Contributor

jjm2473 commented Jan 10, 2024

@Ocean-Hw 看起来mount命令没问题,执行下mount |grep /tmp看看

@jjm2473
Copy link
Contributor

jjm2473 commented Jan 13, 2024

@leechhboy 就卡在这里?还是自动重启了?

@leechhboy
Copy link

@jjm2473 自动重启 登录后版本号不变 固件更新有提示 我又重置了 升级成功 但是这次没有upgrade.log文件

@leechhboy
Copy link

每次升级不会卡死 是自动重启 然后登录进去后版本号不变 固件更新有提示

@jjm2473
Copy link
Contributor

jjm2473 commented Jan 13, 2024

@leechhboy 所以可以稳定复现这个bug是吧。步骤是不是:

  1. 把启动盘的剩余空间分一个区,格式化成ext4,挂载为/mnt/xxx
  2. docker 迁移到 /mnt/xxx/docker
  3. 安装 clouddrive2
  4. 升级固件

安装 clouddrive2 用的命令是什么?clouddrive2 需要配置吗?

@leechhboy
Copy link

@jjm2473 是的 每次都稳定复现
clouddrive2安装地址https://github.com/sublaim/clouddrive2
不需要配置 一键安装的

@jjm2473
Copy link
Contributor

jjm2473 commented Jan 13, 2024

@leechhboy 安装clouddrive2后,打开后台页面,在系统-启动项的本地启动脚本里面看看,是不是有mount --make-shared /这一行,删掉这一行以后重启,之后看看升级是不是就正常了。

@jjm2473 jjm2473 changed the title h69k 升级不到最新的系统 升级不到最新的系统 Jan 13, 2024
@jjm2473
Copy link
Contributor

jjm2473 commented Jan 13, 2024

总结一下,目前确定有两种情况会导致升级失败:

  1. "软件包"页面升级了其他版本的 base-files ,这个错误可以通过“系统便利工具”的“修复系统软件”修复。并且新固件已经禁止从页面上升级 base-files 了(除非用opkg install命令才能强制覆盖,真要作死那就没办法了)
  2. 使用了 clouddrive2 安装脚本,这不只是会导致istoreos升级失败,官方openwrt的升级功能也同样受此影响。这个情景的临时解决方法是,打开后台“系统”-“启动项”的“本地启动脚本”,删掉mount --make-shared /这一行,重启以后即可正常升级。但是 clouddrive2 可能挂载不了网盘,那么把mount --make-shared /这一行加回去就行了。下一版本的固件会自动在升级时撤销mount --make-shared /的影响,所以之后不需要再修改“本地启动脚本”。PS:还可以试试升级前执行下 mount --make-private /,可能也能临时解决升级失败问题。

@leechhboy
Copy link

@jjm2473 大佬 按照你的方法 我把mount --make-shared /删掉重启后 升级成功,但是docker里的clouddrive2镜像又失效了 我又把启动项加回去重启 一切正常,但是这样好麻烦。

@jjm2473
Copy link
Contributor

jjm2473 commented Jan 13, 2024

@leechhboy 不用担心,要么下个版本固件会解决这个问题,要么就会出个替代 clouddrive2 安装脚本的istore插件

@leechhboy
Copy link

@jjm2473 谢谢大佬 终于确定bug
希望istoreos官方支持clouddrive2安装脚本 那真是造福你我他 😄 再次感谢

@leechhboy

This comment was marked as off-topic.

@jjm2473

This comment was marked as off-topic.

@Ocean-Hw
Copy link

我来冒个泡 之前遇到这个问题 实在是没办法求助jjm2473大佬 大佬为了这个问题无偿忙活了几天了
实属感动 实属感谢。

@jjm2473
Copy link
Contributor

jjm2473 commented Jan 13, 2024

为了之后其他人遇到相同问题可以找到此issue,还是先open放着

@jjm2473 jjm2473 reopened this Jan 13, 2024
@LWEI2020
Copy link

感谢大佬,按此方法已成功升级,看来确实与clouddrive2有关。虽然麻烦一些,仍然感谢。

@jjm2473 jjm2473 added the bug Something isn't working label Jan 17, 2024
@jjm2473
Copy link
Contributor

jjm2473 commented Jan 17, 2024

clouddrive2插件已经上架了,不需要依赖 mount --make-shared /

jjm2473 added a commit that referenced this issue Jan 25, 2024
fixes 9ca3669 ("sysupgrade: workaround 'mount -o move' fail on sysupgrade on some devices")

this issue is caused by `mount --make-shared /` by some apps.

fixed #1200
@johnshuxian
Copy link

然后我没有安装过 clouddrive2,也还是有这个问题,不过我感觉是我扩容过默认的根目录分区大小 导致的

@jjm2473
Copy link
Contributor

jjm2473 commented Jan 26, 2024

@johnshuxian 确实不能修改前三个分区的大小,升级时会判断分区大小,不一致的话只能不保留配置升级。增加分区是没问题的。

@lff110
Copy link

lff110 commented Jan 29, 2024

我也一直不能更新,也没修改分区大小,没安装过clouddrive2,也没更新过base-files这个插件,用系统便利工具那里面修复系统软件以后还是不能正常更新。以前直接把新系统的安装包放到tmp目录下用sysupgrade 路径/文件名 -f -d命令还可以更新,现在也不行了。我一般都是先用系统更新进行更新的,如果不行才用命令手动更新,又看了一下这个命令是这样的
root@iStoreOS:~# ls -l /bin/mount; grep /bin/mount -r /usr/lib/opkg/info
lrwxrwxrwx 1 root root 7 Jan 16 19:33 /bin/mount -> busybox
/usr/lib/opkg/info/busybox.list:/bin/mount
/usr/lib/opkg/info/mount-utils.list:/usr/bin/mountpoint
/usr/lib/opkg/info/mount-utils.list:/usr/bin/mount

@lff110
Copy link

lff110 commented Jan 29, 2024

现在的版本是iStoreOS 22.03.6 2024011910,最新的是istoreos-22.03.6-2024012613,我也校验过下载更新包的MD5和SHA256,两个完全一致

@lff110
Copy link

lff110 commented Jan 29, 2024

我的设备是R4SE

@jjm2473
Copy link
Contributor

jjm2473 commented Feb 1, 2024

@lff110 升级以后,不管成功失败,把/overlay/upgrade.log提取出来看看

@jjm2473 jjm2473 closed this as completed Apr 8, 2024
@WankkoRee
Copy link

我的系统版本也是iStoreOS 22.03.6 2024011910,尝试修复系统软件并没有起作用,我也没有修改过分区大小和安装clouddrive2

最终在尝试刷写固件前,关闭掉 Docker 和 OpenClash 后,成功更新。(不确定具体是哪个造成的无法正常更新)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

9 participants