加速器 发表于 2025-9-6 02:51:40

解决Debian13报错缺少依赖libpcre3 | VPSVPN

之前我们写过一个解决Debian12报错缺少依赖libssl1.1 ,小白手贱又升级了Debian13……发现自己编译的nginx又跑不起来了……
错误如下:
nginx: error while loading shared libraries: libpcre.so.3: No such file or directory错误原因

我的nginx 是用 PCRE v1(libpcre3,soname=libpcre.so.3) 编出来的;Debian 13 默认只带 PCRE2(libpcre2-…),于是动态链接器找不到 libpcre.so.3 就直接崩……
解决方案

一把梭

wget https://snapshot.debian.org/archive/debian/20230625T210322Z/pool/main/p/pcre3/libpcre3_8.39-15_amd64.debsudo apt install ./libpcre3_8.39-15_amd64.deb稳妥方案

先试是否官方仓库还留着(有就一步到位):
apt updateapt install -y libpcre3如果提示找不到包(Debian 13 很可能没有),就从 Debian 12(bookworm)拉一个只这一个包下来,做交叉安装(尽量安全):
# 1) 临时加 bookworm 源echo 'deb http://deb.debian.org/debian bookworm main' \> /etc/apt/sources.list.d/bookworm-compat.list# 2) 降低它的优先级,避免系统被回滚cat >/etc/apt/preferences.d/pcre3.pref <<'EOF'Package: *Pin: release n=bookwormPin-Priority: 50Package: libpcre3Pin: release n=bookwormPin-Priority: 990EOF# 3) 更新并只安装 libpcre3apt updateapt install -y -t bookworm libpcre3如果只缺 libpcre.so.3,装完就会消失;若还缺别的(如 libssl.so.*、libcrypto.so.*),按同样办法补齐对应版本。
注意事项


[*]这种办法 属于“手动拉旧库”,和之前 libssl1.1 的做法一样。短期能跑,长期可能有安全风险。
[*]如果 nginx 还缺其他旧库(比如 libssl.so.1.1、libcrypto.so.1.1),也需要同样的办法装回来。
[*]更干净的办法是:要么改用 Debian 13 自带 nginx(基于 PCRE2),要么自己重编 xd-nginx 让它静态链接或用 PCRE2。
页: [1]
查看完整版本: 解决Debian13报错缺少依赖libpcre3 | VPSVPN