openwrt安装shadowsocks报错127的解决办法

openwrt安装shadowsocks的出错情况如下:

Configuring shadowsocks-libev-spec.
//usr/lib/opkg/info/shadowsocks-libev-spec.postinst: line 4: default_postinst: not found
Collected errors:
  • pkg_run_script: package "shadowsocks-libev-spec" postinst script returned status 127.
  • opkg_configure: shadowsocks-libev-spec.postinst returned 127.

出现这种情况的原因是:

目前提供的 ipk 是 15.05 的SDK编译的, 旧版的 base-files 没有相应的函数去执行 postinst-pkg。

可以修改一下 /lib/functions.sh 添加下面的两个函数.

default_postinst() {
    local ret=0
    local root="${IPKG_INSTROOT}"
    local pkgname="$(basename ${1%.*})"
    if [ -f "$root/usr/lib/opkg/info/${pkgname}.postinst-pkg" ]; then
        ( . "$root/usr/lib/opkg/info/${pkgname}.postinst-pkg" )
        ret=$?
    fi
    return $ret
}

default_prerm() {
    local name=$(basename ${1%.*})
    [ -f /usr/lib/opkg/info/${name}.prerm-pkg ] && . /usr/lib/opkg/info/${name}.prerm-pkg
    return 0
}

然后在执行安装shadowsocks的命令就可以成功安装了。




请我喝杯咖啡

微信:支付宝:

推荐阅读:

科学上网利器 Shadowsocks (SS)的使用方法
免费好用的VPN推荐-VPNCUP 同时支持ss(shadowsocks)

老牌vpn商家绿色加速器 注册送200MB免费流量

Leave a Comment