kiddin9 / OpenWrt_x86-r2s-r4s-r5s-N1

一分钟在线定制编译 X86/64, NanoPi R2S R4S R5S R6S, 斐讯 Phicomm N1 K2P, 树莓派 Raspberry Pi, 香橙派 Orange Pi, 红米AX6, 小米AX3600, 小米AX9000, 红米AX6S 小米AX3200, 红米AC2100, 华硕ASUS, 网件NETGEAR 等主流软硬路由
https://openwrt.ai
MIT License
7.21k stars 2.86k forks source link

bypass无法使用,xray core下载失败 #1143

Open Purewhiter opened 1 year ago

Purewhiter commented 1 year ago
lon91ong commented 1 year ago

+1 有没有手动更新的方法先顶一顶

用winscp登录后台,在/usr/share/bypass下的 downbin文件中看到:

#!/bin/sh

log(){
    echo "$(date +'%Y-%m-%d %H:%M:%S') $*" >> /var/log/bypass.log
}

K=/tmp/bypass/bin
kill -9 $(ps -w | grep $K | grep -v grep | awk '{print$1}') 2>/dev/null
mkdir -p $K
c=0
    while ! curl -m 18 -Lfso $K/xray.tar.gz http://static.supes.top/mipsel_24kc/xray.tar.gz;do
        [ $c -eq 4 ] && {
        log "xray core download failed."
        exit 1
        } || let c++
        sleep 2
    done
    log "xray core download successful."
    tar -zxf $K/xray.tar.gz -C $K && rm -rf $K/xray.tar.gz
    chmod +x $K/xray
    ln -s $K/xray /usr/bin/xray 2>/dev/null

[ $1 = 0 ] && /etc/init.d/bypass start &

手动下载链接http://static.supes.top/mipsel_24kc/xray.tar.gz,压缩包大小为6M,而路径/tmp/bypass/bin中有个900K的xray.tar.gz,下载中断了

手动执行downbin文件中的命令可以解决bypass无法运行的问题,但是重启后估计还是要完蛋! 只能寄望于大佬早日解决此问题了

lon91ong commented 1 year ago

在腾讯镜像服务器中找到一个xray core的安装包, ipk文件 可以试试下面的命令:

#!/bin/sh

cd /tmp
rm -rf /tmp/bypass/bin/xray.tar.gz
wget https://mirrors.cloud.tencent.com/openwrt/releases/packages-22.03/mipsel_24kc/packages/xray-core_1.7.0-1_mipsel_24kc.ipk
tar -zxvf xray-core_1.7.0-1_mipsel_24kc.ipk ./data.tar.gz && rm -rf xray-core_1.7.0-1_mipsel_24kc.ipk
tar -zxvf data.tar.gz ./usr/bin/xray && rm -rf ./data.tar.gz
mv -f /tmp/usr/bin/xray /tmp/bypass/bin
chmod +x /tmp/bypass/bin/xray
ln -s /tmp/bypass/bin/xray /usr/bin/xray 2>/dev/null
lon91ong commented 1 year ago

应该是终极自己可控的解决办法了

yichya/openwrt-xray项目下载mipsel_24kc架构的预编译ipk文件 我选的1.64版本,1.65+体积增大明显就放弃了

用上面一条回复的方法解压,上传路由器赋权测试没有问题,在路由器用tar -zcvf myray.tar.gz xray压缩得到xray的压缩包

然后放到国内的代码托管平台上 修改/usr/share/bypass/downbin文件中的下载链接为自己的myray.tar.gz地址, 完工!

分享打包好的myray.tar.gz, 可以跳过前面的下载打包步骤, 直接上传自己熟悉的平台即可 蓝奏云myray 密码:fghb

linwk24 commented 1 year ago

参考以上方法得出此故障,估计是核心文件下载的地址的问题“http://static.supes.top/mipsel_24kc/xray.tar.gz”这个地址做了跳转, 可选择手动更新新注释掉代码,或者下载核心文件xray.tar.gz, 上传到服务器替换路由配置/usr/share/bypass下的 downbin文件里的地址即可。

MatcherAny commented 1 year ago

参考以上的讨论 改写了下/usr/share/bypass/downbin文件,

#!/bin/sh

log(){
    echo "$(date +'%Y-%m-%d %H:%M:%S') $*" >> /var/log/bypass.log
}

K=/tmp/bypass/bin
kill -9 $(ps -w | grep $K | grep -v grep | awk '{print$1}') 2>/dev/null
mkdir -p $K
c=0
    while ! curl -m 18 -Lfso $K/xray-core.ipk https://mirrors.cloud.tencent.com/openwrt/releases/packages-22.03/mipsel_24kc/packages/xray-core_1.7.0-1_mipsel_24kc.ipk;do
        [ $c -eq 4 ] && {
        log "xray core download failed."
        exit 1
        } || let c++
        sleep 2
    done
    log "xray core download successful."
    tar -zxf $K/xray-core.ipk ./data.tar.gz -C $K/ && rm -rf $K/xray-core.ipk
    tar -zxf $K/data.tar.gz ./usr/bin/xray -C $K/ && rm -rf $K/data.tar.gz
    mv $K/usr/bin/xray $K && rm -rf $K/usr/
    chmod +x $K/xray
    ln -s $K/xray /usr/bin/xray 2>/dev/null
    log "xray core bin file successful."

[ $1 = 0 ] && /etc/init.d/bypass start &

xray-core_1.7.0-1_mipsel_24kc.ipk的文件内容是这样的

xray-core.ipk
  │ control.tar.gz
  │ debian-binary
  └─data.tar.gz
    ├─etc
    ├─lib
    └─usr
       └─bin
           xray  <----------
sone-miyuki commented 1 year ago

可能网址被干扰了,挂另一个路由做前置后可以成功下载xray

fujie-xiyou commented 1 year ago

参考以上的讨论 改写了下/usr/share/bypass/downbin文件,

#!/bin/sh

log(){
  echo "$(date +'%Y-%m-%d %H:%M:%S') $*" >> /var/log/bypass.log
}

K=/tmp/bypass/bin
kill -9 $(ps -w | grep $K | grep -v grep | awk '{print$1}') 2>/dev/null
mkdir -p $K
c=0
  while ! curl -m 18 -Lfso $K/xray-core.ipk https://mirrors.cloud.tencent.com/openwrt/releases/packages-22.03/mipsel_24kc/packages/xray-core_1.7.0-1_mipsel_24kc.ipk;do
      [ $c -eq 4 ] && {
      log "xray core download failed."
      exit 1
      } || let c++
      sleep 2
  done
  log "xray core download successful."
  tar -zxf $K/xray-core.ipk ./data.tar.gz -C $K/ && rm -rf $K/xray-core.ipk
  tar -zxf $K/data.tar.gz ./usr/bin/xray -C $K/ && rm -rf $K/data.tar.gz
  mv $K/usr/bin/xray $K && rm -rf $K/usr/
  chmod +x $K/xray
  ln -s $K/xray /usr/bin/xray 2>/dev/null
  log "xray core bin file successful."

[ $1 = 0 ] && /etc/init.d/bypass start &

xray-core_1.7.0-1_mipsel_24kc.ipk的文件内容是这样的

xray-core.ipk
  │ control.tar.gz
  │ debian-binary
  └─data.tar.gz
    ├─etc
    ├─lib
    └─usr
       └─bin
           xray  <----------

感谢分享 不过腾讯这镜像有点狗 只保留最新版本了 目前这个版本已经404了 需要替换为最新版的地址

microyin715 commented 1 year ago

我发现修改/usr/share/bypass/downbin中下载时间可以解决,部分网络下载慢指定时间没下载下来导致出错 curl -m 18和curl -m 15,适当加长,我改成curl -m 36和curl -m 30就没问题了