安装问题
路由器安装v2ray [文档里的3种方法都失败了,直接把解压后的v2ray-linux-32导入运行也不行,用脚本直接提示意外的括号,怎样安装呢
url那部分我不评价,我可不想照着一张图片手打一遍这么长的url。。。 后面那部分的报错是文件权限问题,一般会用chmod命令调整权限,但我想重点不在于此。 一般从网上下载东西,下载下来的都会是压缩包,所以下载是第一步,然后第二步是输入命令解压。 如果你没有解压,直接运行,当然是不行的,因为压缩包不是二进制文件,不能运行。 如果你解压完,直接运行,也是不行的。我之前手动安装过v2ray,我记得压缩包里边是一个目录,不是二进制文件,所以不能运行。 我记得手动安装的话,v2ray有三个部分。一部分是二进制文件部分,一般把这部分放到用户目录的bin目录(然后chmod调整权限);一部分是配置文件,放到etc目录;最后一部分是v2ray在systemctl中的配置文件。 这三部分你都要cp到位,设置好权限,该修改配置的就修改配置。 后面你用apt/opkg这种包管理器没什么用,因为v2ray应该是没有收录到官方的包管理器中的。打个比方,要在debain中下载docker,是要先下载一个包,这个包里包含docker软件的下载安装信息,你得先把这个包更新进apt中,apt才能帮你安装好docker。
url那部分我不评价,我可不想照着一张图片手打一遍这么长的url。。。 后面那部分的报错是文件权限问题,一般会用chmod命令调整权限,但我想重点不在于此。 一般从网上下载东西,下载下来的都会是压缩包,所以下载是第一步,然后第二步是输入命令解压。 如果你没有解压,直接运行,当然是不行的,因为压缩包不是二进制文件,不能运行。 如果你解压完,直接运行,也是不行的。我之前手动安装过v2ray,我记得压缩包里边是一个目录,不是二进制文件,所以不能运行。 我记得手动安装的话,v2ray有三个部分。一部分是二进制文件部分,一般把这部分放到用户目录的bin目录(然后chmod调整权限);一部分是配置文件,放到etc目录;最后一部分是v2ray在systemctl中的配置文件。 这三部分你都要cp到位,设置好权限,该修改配置的就修改配置。 后面你用apt/opkg这种包管理器没什么用,因为v2ray应该是没有收录到官方的包管理器中的。打个比方,要在debain中下载docker,是要先下载一个包,这个包里包含docker软件的下载安装信息,你得先把这个包更新进apt中,apt才能帮你安装好docker。
不不,报错的那部分not found可不是找不到文件,是直接连apt bash这种基本命令也找不到,因为路由器是超精简的系统,他用的解释器也是ash不是bash我百度过了,然后权限我只是在WinSCP里用图形界面改了所以后面还是直接输入路径运行没有chmod,上面wget地址也是对的不过下载还是报错可能不支持https吧,我也是直接本地传输过去的并不是wget得到的图里没有展示。你确定是用v2ray-linux-32这个吗?
url那部分我不评价,我可不想照着一张图片手打一遍这么长的url。。。 后面那部分的报错是文件权限问题,一般会用chmod命令调整权限,但我想重点不在于此。 一般从网上下载东西,下载下来的都会是压缩包,所以下载是第一步,然后第二步是输入命令解压。 如果你没有解压,直接运行,当然是不行的,因为压缩包不是二进制文件,不能运行。 如果你解压完,直接运行,也是不行的。我之前手动安装过v2ray,我记得压缩包里边是一个目录,不是二进制文件,所以不能运行。 我记得手动安装的话,v2ray有三个部分。一部分是二进制文件部分,一般把这部分放到用户目录的bin目录(然后chmod调整权限);一部分是配置文件,放到etc目录;最后一部分是v2ray在systemctl中的配置文件。 这三部分你都要cp到位,设置好权限,该修改配置的就修改配置。 后面你用apt/opkg这种包管理器没什么用,因为v2ray应该是没有收录到官方的包管理器中的。打个比方,要在debain中下载docker,是要先下载一个包,这个包里包含docker软件的下载安装信息,你得先把这个包更新进apt中,apt才能帮你安装好docker。
不不,报错的那部分not found可不是找不到文件,是直接连apt bash这种基本命令也找不到,因为路由器是超精简的系统,他用的解释器也是ash不是bash我百度过了,然后权限我只是在WinSCP里用图形界面改了所以后面还是直接输入路径运行没有chmod,上面wget地址也是对的不过下载还是报错可能不支持https吧,我也是直接本地传输过去的并不是wget得到的图里没有展示。你确定是用v2ray-linux-32这个吗?
我理解你终端中出现的状况,但你没有理解我的意思。 linux发行版中只会有一个包管理器,看起来brew,apt,opkg都是包管理器,包管理器的作用是帮你轻松地安装软件,他们作用都是雷同的,所以一个操作系统中一般只会预装一个包管理器。 我从终端中看到你尝试了三种包管理器,前两个包管理器都不存在你的机器上,而opkg存在。所以当时我认为你已经知道自己该用哪个包管理器了。但从你的回复来看,你完全不理解使用包管理器的意义。 我说包管理中没有v2ray的信息,是因为Unkonwn package 'v2ray'.不是因为brew:not found 所以说你没有理解我的意思。 ash也好,bash也罢。都只是shell罢了,shell不影响你运行软件,也不影响你操作系统的运行方式。windows上面还有cmd和powershell两种shell呢,难道用不同shell的windows用户他们的操作系统工作方式不同吗? 是不是应该用v2ray-linux-32,你不该问我,该问你自己。你自己的机器是什么架构?x86/amd64还是arm32/64?只有你自己清楚。我怎么可能知道?难道我黑了你的设备吗?
url那部分我不评价,我可不想照着一张图片手打一遍这么长的url。。。 后面那部分的报错是文件权限问题,一般会用chmod命令调整权限,但我想重点不在于此。 一般从网上下载东西,下载下来的都会是压缩包,所以下载是第一步,然后第二步是输入命令解压。 如果你没有解压,直接运行,当然是不行的,因为压缩包不是二进制文件,不能运行。 如果你解压完,直接运行,也是不行的。我之前手动安装过v2ray,我记得压缩包里边是一个目录,不是二进制文件,所以不能运行。 我记得手动安装的话,v2ray有三个部分。一部分是二进制文件部分,一般把这部分放到用户目录的bin目录(然后chmod调整权限);一部分是配置文件,放到etc目录;最后一部分是v2ray在systemctl中的配置文件。 这三部分你都要cp到位,设置好权限,该修改配置的就修改配置。 后面你用apt/opkg这种包管理器没什么用,因为v2ray应该是没有收录到官方的包管理器中的。打个比方,要在debain中下载docker,是要先下载一个包,这个包里包含docker软件的下载安装信息,你得先把这个包更新进apt中,apt才能帮你安装好docker。
不不,报错的那部分not found可不是找不到文件,是直接连apt bash这种基本命令也找不到,因为路由器是超精简的系统,他用的解释器也是ash不是bash我百度过了,然后权限我只是在WinSCP里用图形界面改了所以后面还是直接输入路径运行没有chmod,上面wget地址也是对的不过下载还是报错可能不支持https吧,我也是直接本地传输过去的并不是wget得到的图里没有展示。你确定是用v2ray-linux-32这个吗?
我理解你终端中出现的状况,但你没有理解我的意思。 linux发行版中只会有一个包管理器,看起来brew,apt,opkg都是包管理器,包管理器的作用是帮你轻松地安装软件,他们作用都是雷同的,所以一个操作系统中一般只会预装一个包管理器。 我从终端中看到你尝试了三种包管理器,前两个包管理器都不存在你的机器上,而opkg存在。所以当时我认为你已经知道自己该用哪个包管理器了。但从你的回复来看,你完全不理解使用包管理器的意义。 我说包管理中没有v2ray的信息,是因为Unkonwn package 'v2ray'.不是因为brew:not found 所以说你没有理解我的意思。 ash也好,bash也罢。都只是shell罢了,shell不影响你运行软件,也不影响你操作系统的运行方式。windows上面还有cmd和powershell两种shell呢,难道用不同shell的windows用户他们的操作系统工作方式不同吗? 是不是应该用v2ray-linux-32,你不该问我,该问你自己。你自己的机器是什么架构?x86/amd64还是arm32/64?只有你自己清楚。我怎么可能知道?难道我黑了你的设备吗?
这么问也没问题吧,首先那个文件标明了linux其次32位兼容性大于64所以是可能被成功安装可能性比较高的一个版本,然后快速指引文档当中的脚本确实是直接运行就提示意外的括号不支持括号,ash是一个轻量的解释器,不像完整的bash那样有更强大的功能,不是像你所说的只是针对于不同linux系统的shell并无大碍(详细相关信息查看下面)
你一开始发的终端截图中反映的问题和shell类型没有任何关系。 你口中的not found一共就出现了三次,第一次是在试图下载文件时,后两次是在试图使用包管理时。 截图中间部分你在试图执行下载下来的文件,这说明你已经能下载文件了,既然如此,我又何必提及第一次not found呢?我提第一个not found除了说明你不了解ash之外还能说明什么呢?所以我就略过他了。 后两次not found是怎么回事我已经向你说明了。 我是觉得被你误解了,我是态度不好,但是该告诉你的都已经告诉你了。
你一开始发的终端截图中反映的问题和shell类型没有任何关系。 你口中的not found一共就出现了三次,第一次是在试图下载文件时,后两次是在试图使用包管理时。 截图中间部分你在试图执行下载下来的文件,这说明你已经能下载文件了,既然如此,我又何必提及第一次not found呢?我提第一个not found除了说明你不了解ash之外还能说明什么呢?所以我就略过他了。 后两次not found是怎么回事我已经向你说明了。 我是觉得被你误解了,我是态度不好,但是该告诉你的都已经告诉你了。
实际上从我接触这个已经2 3天了,都没安装成功,网上找教程总是一开始就来个命令让你干这干那,结果一输入都是-ash not found,然后我又搜怎么安装某某命令,结果又是一开篇就让你执行某某命令,然后还是没这个命令,那这个命令又怎么安装呢?就是他给一个方案方案的漏洞就是命令不存在,被整无语了,好像是一个残缺版魔改版的Linux一样。至于下载,可能你没看到,下载根本没成功,我又试了一下确实是https的s的问题,只支持非https的改了才可以使用下载命令。关于迷惑的命令老报错,opkg update这样的更新都执行不了(在上面图片中的第四行,执行了opkg update,最后未成功)
opkg install v2ray-core
opkg install v2ray-core
我服了,你会的也太少了吧。 我给你捋捋,第一步你要搞清楚自己设备是什么架构,你可以翻设备说明书,找到设备型号,贴到搜索引擎来搜索。但我更建议你使用类似uname -a的命令,说实话,不同的linux发行版要查看cpu架构得使用不同的命令,反正命令五花八门的。你最好还是在搜索引擎里搜索:“怎么查看linux系统cpu架构?”然后一条条试命令吧。 就这么一个复杂的情况,我根本说不清楚呀。我想省力点,那我就说该问你自己咯。让你觉得我态度不好了,我只是不想多费口舌。我晚上原定的活动被取消了,有时间跟你多说两句,你现在满意了吧? 你在搞定第一步之后,就知道应该下载v2ray哪个版本了。接下来你要搞定去哪里下载的问题。 我建议你放弃通过包管理器下载v2ray。我尝试过yum和apt这两种包管理器,这两种包管理器里的官方源里都没有收录v2ray。你的尝试表明opkg中亦没有收录。 你之前提到很多url都是404的,那不是你的问题。所以不要再想他了。 既然一键脚本你执行的过程中遇到很多问题,我建议你手动安装v2ray吧。 点一下这个项目边上的release。找到你自己的机器对应的版本,直接下载下来zip。你担心解压问题?直接下载到windows解压,然后用wscp传输到linux设备上,反正你已经做过了,应该是会的。 然后就是我前边提到的复制与配置v2ray那三个部分。 这里你必须要会使用几个命令: ls -a -l 用来查看文件和文件权限 --即便你让v2ray以root权限工作,也是要搞定文件的权限问题的呀 cp 用来复制文件与目录 systemctl linux中的自启动管理器,通常v2ray都是要开机自启动的,所以肯定会用到他 chmod 很重要,没有的话也请用opkg安装下来
然后是你最好会的命令: vi 命令行中的文本编辑器,用来修改配置 --如果你不会,或者不想学,你可以用windows电脑修改配置,然后用wscp传输过去
接下来是实操,敲键盘很累,所以我请AI来帮你详细说明吧:
将二进制文件放到合适的位置 假设你已经下载并解压好了 V2Ray 包,会得到 v2ray 和 v2ctl 等可执行文件。 建议放到 /usr/local/bin:
sudo cp v2ray /usr/local/bin/
sudo cp v2ctl /usr/local/bin/
sudo chmod 755 /usr/local/bin/v2ray
sudo chmod 755 /usr/local/bin/v2ctl
放置配置文件 V2Ray 默认会从 /etc/v2ray/config.json 读取配置文件。
sudo mkdir -p /etc/v2ray
sudo cp config.json /etc/v2ray/
sudo chmod 644 /etc/v2ray/config.json
配置 systemd 服务文件 在 /etc/systemd/system/ 下创建 v2ray.service:
sudo nano /etc/systemd/system/v2ray.service
写入以下内容:
[Unit]
Description=V2Ray Service
Documentation=https://www.v2fly.org/
After=network.target nss-lookup.target
[Service]
User=nobody
CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE
NoNewPrivileges=true
ExecStart=/usr/local/bin/v2ray -config /etc/v2ray/config.json
Restart=on-failure
RestartPreventExitStatus=23
LimitNPROC=10000
LimitNOFILE=1000000
[Install]
WantedBy=multi-user.target
重新加载 systemd,启用并启动 V2Ray
sudo systemctl daemon-reload
sudo systemctl enable v2ray
sudo systemctl start v2ray
查看运行状态和日志
sudo systemctl status v2ray
journalctl -u v2ray -e
这样三部分(可执行文件、配置文件、systemd 服务)就全部到位了,可以通过 systemctl 控制 V2Ray。
ai还是有点笨的,他不知道现在v2ray已经没有v2ctl了。他很喜欢用nano,而我一般用vi。反正就供你参考吧。
我服了,你会的也太少了吧。 我给你捋捋,第一步你要搞清楚自己设备是什么架构,你可以翻设备说明书,找到设备型号,贴到搜索引擎来搜索。但我更建议你使用类似uname -a的命令,说实话,不同的linux发行版要查看cpu架构得使用不同的命令,反正命令五花八门的。你最好还是在搜索引擎里搜索:“怎么查看linux系统cpu架构?”然后一条条试命令吧。 就这么一个复杂的情况,我根本说不清楚呀。我想省力点,那我就说该问你自己咯。让你觉得我态度不好了,我只是不想多费口舌。我晚上原定的活动被取消了,有时间跟你多说两句,你现在满意了吧? 你在搞定第一步之后,就知道应该下载v2ray哪个版本了。接下来你要搞定去哪里下载的问题。 我建议你放弃通过包管理器下载v2ray。我尝试过yum和apt这两种包管理器,这两种包管理器里的官方源里都没有收录v2ray。你的尝试表明opkg中亦没有收录。 你之前提到很多url都是404的,那不是你的问题。所以不要再想他了。 既然一键脚本你执行的过程中遇到很多问题,我建议你手动安装v2ray吧。 点一下这个项目边上的release。找到你自己的机器对应的版本,直接下载下来zip。你担心解压问题?直接下载到windows解压,然后用wscp传输到linux设备上,反正你已经做过了,应该是会的。 然后就是我前边提到的复制与配置v2ray那三个部分。 这里你必须要会使用几个命令: ls -a -l 用来查看文件和文件权限 --即便你让v2ray以root权限工作,也是要搞定文件的权限问题的呀 cp 用来复制文件与目录 systemctl linux中的自启动管理器,通常v2ray都是要开机自启动的,所以肯定会用到他 chmod 很重要,没有的话也请用opkg安装下来
然后是你最好会的命令: vi 命令行中的文本编辑器,用来修改配置 --如果你不会,或者不想学,你可以用windows电脑修改配置,然后用wscp传输过去
接下来是实操,敲键盘很累,所以我请AI来帮你详细说明吧:
将二进制文件放到合适的位置 假设你已经下载并解压好了 V2Ray 包,会得到 v2ray 和 v2ctl 等可执行文件。 建议放到 /usr/local/bin:
sudo cp v2ray /usr/local/bin/ sudo cp v2ctl /usr/local/bin/ sudo chmod 755 /usr/local/bin/v2ray sudo chmod 755 /usr/local/bin/v2ctl放置配置文件 V2Ray 默认会从 /etc/v2ray/config.json 读取配置文件。
sudo mkdir -p /etc/v2ray sudo cp config.json /etc/v2ray/ sudo chmod 644 /etc/v2ray/config.json配置 systemd 服务文件 在 /etc/systemd/system/ 下创建 v2ray.service:
sudo nano /etc/systemd/system/v2ray.service写入以下内容:
[Unit] Description=V2Ray Service Documentation=https://www.v2fly.org/ After=network.target nss-lookup.target [Service] User=nobody CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE NoNewPrivileges=true ExecStart=/usr/local/bin/v2ray -config /etc/v2ray/config.json Restart=on-failure RestartPreventExitStatus=23 LimitNPROC=10000 LimitNOFILE=1000000 [Install] WantedBy=multi-user.target重新加载 systemd,启用并启动 V2Ray
sudo systemctl daemon-reload sudo systemctl enable v2ray sudo systemctl start v2ray查看运行状态和日志
sudo systemctl status v2ray journalctl -u v2ray -e这样三部分(可执行文件、配置文件、systemd 服务)就全部到位了,可以通过 systemctl 控制 V2Ray。
ai还是有点笨的,他不知道现在v2ray已经没有v2ctl了。他很喜欢用nano,而我一般用vi。反正就供你参考吧。
mips的,上面有了而且我早发了
你的方法里面和我百度的方案差不多,基本上他要什么命令什么命令就是-ash not found的
你的方法里面和我百度的方案差不多,基本上他要什么命令什么命令就是-ash not found的
![]()
nano可以不用,我说过了,你用windows编辑了文件然后用wscp传输过去也是可以的 sudo通通去掉,你已经是root权限了,不需要带这个命令 journalctl用不着,没出故障的话你不需要看他,而你还没安装,自然不可能需要他 systemctl比较重要,虽然开机自启动也能通过其他方式做到。但用systemctl还是比较简单,你能否通过opkg安装systemctl? 由于墙的存在,诸如opkg的镜像源在国内并不好用,你有没有为opkg换过镜像源?
Please upgrade OpenWrt to latest stable version.
nano可以不用,我说过了,你用windows编辑了文件然后用wscp传输过去也是可以的 sudo通通去掉,你已经是root权限了,不需要带这个命令 journalctl用不着,没出故障的话你不需要看他,而你还没安装,自然不可能需要他 systemctl比较重要,虽然开机自启动也能通过其他方式做到。但用systemctl还是比较简单,你能否通过opkg安装systemctl? 由于墙的存在,诸如opkg的镜像源在国内并不好用,你有没有为opkg换过镜像源?
你说的这些命令都没有啊,直接在清华大学源的opkg里搜索也没这个命令存在
@tomandjerry27 你说的那些我也都考虑过了,包括什么墙 镜像源,文件权限问题,cp到位,实际上都是无关紧要的对这个问题治标不治本的,这个问题根本就不是这么简单,讨论了这么久还是还是找到原因没有结果,管理员直接来一句更新openwrt,这系统也不是openwrt,到时候刷机刷坏了路由器都变砖了,是小米路由器官方的版本如果有看到openwrt也可能只是说明是小米基于openwrt开发的,可能很多路由器本质上都是openwrt系统,不过官方的硬件以及系统肯定不会安装纯openwrt原生那样还有更多进阶设置的那种路由器管理后台的openwrt,这个版本也是无可更新了刷openwrt的话也是超出了我的所能做到的范围,可能导致变砖不是一个可靠的意见。路由器也并不是什么软件都安装不了之前clash shell也是可以装的不过项目已经废弃了就没有用它。
Two key points:
- OpenWrt doesn’t use systemd as its init service.
- V2Ray is not in the repo of old OpenWrt.
You can complie V2Ray with CGO disabled and softfloat, then upload it to your device by SFTP. BTW, I think your device is too old to run V2Ray, OOM may be caused by insufficient memory.
这看着也太累了。两个建议:
- 代码和日志直接复制粘贴,前后用一行 ``` 包裹,不要截图。
- 如非必要,不要引用。issue 的评论所有人都会收到提醒。如果要跟谁直接对话,可以使用 @。
你的架构看起来是 mips,那就下载 mips 架构的文件。你下载的 v2ray-linux-32 是 x86 的。
脚本不能用,是因为它针对的是比较完整的 Linux。
另外不知道你为什么要在路由器上使用,是为了透明代理吗?那个对于不熟悉 Linux 的并不容易。
- 代码和日志直接复制粘贴,前后用一行 ``` 包裹,不要截图。
- 如非必要,不要引用。issue 的评论所有人都会收到提醒。如果要跟谁直接对话,可以使用 @。
嗯嗯,好的,其实上面很多终端的截图我自己看都有点分不清哪是输出,还有重复引用的回复非常占空间,很感谢你的有价值的指导以及感谢你的耐心浏览了整体issue。 关于为什么要在路由器上使用,是因为偶然发现v2ray软件并不总是要和软件本机运行,而且自动模式或PAC也是在代理设置中填上了一个地址,那么用户设备上实际什么软件都不需要,就干脆把v2ray安装在路由器上,这也本应该是路由器所适合做的工作。 最后我还是在前几天换成了shell clash尝试,虽然如我所言项目虽然停止维护,实际上不影响正常运行,之前遇到安装后总是自己变全局模式了,结果正常上网也上不了,还有ipstable依赖项未找到的错误,怎么也安装不了以为是程序出现了错误,已经通过选择另一防火墙模式规避。 本问题将关闭处理,由于问题已解决,issue将会被关闭。
终端内容直接一起复制,别人可以区分命令和输出。
适合路由器的是透明代理,因为很多软件不支持设置代理。如果要查询非 A/AAAA 记录,还要另外配置 DNS 软件。
如果只是使用 http 或 socks 代理,可以在一台设备上 v2ray 绑定局域网地址,另一台设备就可以直接用。但就像上面说的,很多软件不支持代理。
我猜你想说的是 iptables,实际上透明代理也是用它实现的。
额,曾经我也认为http代理根本没用就只是浏览器上网的才会代理,后来又实际上很多软件都遵循http代理。设置了http代理后,基本上很多软件均会遵循。(可能是软件内置浏览器的原因,深入研究的话就是,应用中包含浏览器,又统一需要Webview的支持,WV遵循httpproxy,而应用内内置浏览器的应用占比相当高,其他的就没仔细观察了)。 感谢你提供的内容,您一定是个善解人意的人。
不要下载预编译的 V2Ray,你使用的 CPU ISA 不支持浮点指令,运行时可能产生非法指令错误。请你自行根据源代码编译启用软浮点标志的二进制。
Do not download the pre-compiled V2Ray. Your CPU ISA does not support floating-point instructions, which may cause illegal instruction aborts at runtime. Please compile the binary with the soft floating-point flag enabled from the source code.