You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级FreeBSD pkg时遗漏libssl升级致其失效,如何回滚修复?

解决PfSense中pkg升级后依赖缺失无法运行的问题

问题背景

在PfSense 2.7.0中安装wget时,直接将pkg从1.19.1_2升级至1.20.7,未处理系统提示的libssl.so升级需求,导致pkg因缺失libssl.so.30无法运行,需回滚至旧版本后重新完成正确升级。

解决步骤

1. 使用pkg-static回滚pkg版本

动态编译的pkg命令因依赖缺失无法运行,改用静态编译的pkg-static(不依赖系统动态库)操作:

  • 临时指定PfSense官方仓库,确保能获取匹配版本的pkg:
    export PKG_REPO=https://pkg.pfsense.org/pfSense_v2_7_0_amd64-pfSense_v2_7_0/
    
  • 执行回滚安装:
    pkg-static install -f pkg-1.19.1_2
    
  • 若上述命令找不到包,手动下载后强制安装:
    # 下载旧版本pkg包
    fetch https://pkg.pfsense.org/pfSense_v2_7_0_amd64-pfSense_v2_7_0/all/pkg-1.19.1_2.pkg
    # 强制安装回滚
    pkg-static add -f pkg-1.19.1_2.pkg
    

2. 修复依赖并正确升级pkg

回滚成功后,先处理libssl依赖,再正常升级pkg:

  • 更新仓库索引:
    pkg update
    
  • 先升级openssl(libssl是openssl的核心组件):
    pkg upgrade openssl
    
  • 再正常升级pkg:
    pkg upgrade pkg
    

3. 安装wget

依赖问题解决后,即可正常安装wget:

pkg install wget

4. 配置正确的pkg仓库(避免后续版本冲突)

之前出现的OS版本不匹配提示,是因为使用了FreeBSD官方仓库而非PfSense专属仓库,建议配置回官方仓库:

  • 编辑PfSense仓库配置文件:
    vi /usr/local/etc/pkg/repos/pfSense.conf
    
    确保内容为:
    pfSense: {
      url: "pkg+https://pkg.pfsense.org/pfSense_v2_7_0_amd64-pfSense_v2_7_0",
      mirror_type: "srv",
      signature_type: "fingerprints",
      fingerprints: "/usr/local/share/pfSense/keys/pkg",
      enabled: yes
    }
    
  • 禁用FreeBSD仓库(若存在):
    vi /usr/local/etc/pkg/repos/FreeBSD.conf
    
    设置enabled: no

内容的提问来源于stack exchange,提问作者MiniMe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 01:20:22