我有一台 Alpine Linux 3.11.3 服务器(冷铁),它似乎经历了一个未知事件,导致出现阻止其在网络上通信的问题,经过无数小时的故障排除,我们决定尝试进行增量修复Alpine 升级以查看是否可以解决问题(也许它有损坏的内核、驱动程序或??)。
我花了相当多的时间研究如何制作 apk升级从本地存储库,并且在多次尝试将脱机 Alpine Linux 3.11.3 计算机更新到 Alpine Linux 3.11.13(我在同一网络上运行)失败后,我似乎找不到一种方法来做到这一点。
有谁知道如何做到这一点?
到目前为止我所做的没有成功:
- 来自在线 Alpine Linux 3.11.13 机器:
- 我设置了 apk 缓存(按照此处的说明:https://wiki.alpinelinux.org/wiki/Package_management)
- 我运行了以下命令:应用程序更新 进而 apk缓存下载
- 然后我将 apk 缓存目录 (/etc/apk/cache) 的内容复制到 U 盘
- 在离线的 Alpine Linux 3.11.3 机器上:
- 注释掉 /etc/apk/repositories 文件中配置的在线存储库,然后根据此处的指南取消注释与 /media/usb 相关的行:https://wiki.alpinelinux.org/wiki/Upgrading_Alpine#Upgrading_an_Alpine_Linux_Hard-disk_installation
- 插入 USB 记忆棒并检查以确保其可读且所有文件均存在(通过运行以下命令:ls /媒体/USB)
- 运行命令:应用程序更新
- 收到错误:“没有这样的文件或目录”
- 然后我设置 apk 缓存(按照此处的说明:https://wiki.alpinelinux.org/wiki/Package_management)
- 将 USB 记忆棒的内容复制到 apk 缓存目录 (/etc/apk/cache)
- 重新运行命令:应用程序更新 - 再次收到错误:“没有这样的文件或目录”
- 运行以下附加命令,它们都产生相同的错误:
- apk 更新 --allow-untrusted
- apk 更新 --repository /usb/media
- apk 更新 --allow-untrusted --repository /usb/media
我找到了有关如何创建 apk 的信息添加对于来自本地源(例如 USB 记忆棒/CD-ROM 或其他本地目录)的特定包,如下所示:https://wiki.alpinelinux.org/wiki/Package_management#Add_a_local_Package,但我找不到任何关于使用 apk 执行此类操作的指导升级
任何帮助将不胜感激。
答案1
该apk update
命令刷新 apk 存储库的本地缓存。您想要的是apk add <package>
升级apk upgrade
所有软件包。如果网络不通,可以--no-network
在命令行中添加:apk --no-network upgrade