V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
nfroot
V2EX  ›  问与答

一脸懵逼, zerotier moon 的配置文件要放在 Openwrt/LEDE 的哪个文件夹

  •  
  •   nfroot · 2019-03-01 10:36:37 +08:00 · 8662 次点击
    这是一个创建于 2120 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目前在 LEDE X64 上搭建 zerotier moon,官方文档的意思是要在 Linux 的 /var/lib/zerotier-one 放置一个 moons.d 文件夹,里面放上 000000xxxxxxxxxx.moon 签名文件。。

    文件我是生成好了,但是 Openwrt/LEDE 的这个文件夹,是临时文件夹啊。。cd /var/lib/zerotier-one 进入到的是 /tmp/lib/zerotier-one 文件夹。。。文件放进去了,然后重启 Openwrt/LEDE,然后我放的文件夹和文件理所当然的消失了(毕竟是临时文件夹嘛,是在内存里,重启自然就没了)

    那就很疑惑了,那应该放哪呢?难不成只能放在 /root 里,每次开机的时候抢在 zerotier 运行前放过去?但是我不知道如何做到唉。。。

    为了探索可能可以存放的位置,我打了个查找文件的命令,试图找到我想存放的位置,但是都进去看了一遍更不知道放哪里了。。。实在是不熟悉 linux,所以想请教下熟悉的朋友。谢谢!

    root@OpenWrt:/# find -name *zerotier*
    ./etc/config/zerotier
    ./etc/init.d/zerotier
    ./etc/rc.d/S90zerotier
    ./tmp/lib/zerotier-one
    ./tmp/lib/zerotier-one/zerotier-one.port
    ./tmp/lib/zerotier-one/zerotier-one.pid
    ./tmp/lock/procd_zerotier.lock
    ./usr/bin/zerotier-cli
    ./usr/bin/zerotier-idtool
    ./usr/bin/zerotier-one
    ./usr/lib/opkg/info/zerotier.control
    ./usr/lib/opkg/info/zerotier.postinst
    ./usr/lib/opkg/info/zerotier.prerm
    ./usr/lib/opkg/info/zerotier.list
    
    13 条回复    2020-03-27 00:29:30 +08:00
    nfroot
        1
    nfroot  
    OP
       2019-03-01 10:40:23 +08:00
    百度谷歌搜了一圈,可能关键词不对,总是搜不到,也没有搜到别人用 Openwrt/LEDE 搭建的案例。。。这就很尴尬了。。。毕竟是觉得这个系统资源占用低还有不错的软件中心。。。暂时不想换别的。。。
    oott123
        2
    oott123  
       2019-03-01 11:11:31 +08:00
    当然就是放这里咯。
    你想办法持久化它就行了,比如修改服务启动脚本,在启动进程之前把文件拷贝进去,或者是把这个文件夹当挂载点持久化,诸如此类的。
    yzwduck
        3
    yzwduck  
       2019-03-01 11:12:13 +08:00
    试试把 /etc/config/zerotier 里 option config_path 的注释去掉,然后 moons.d 放在 config_path 下?
    看 /etc/init.d/zerotier 里的启动逻辑,貌似可以这么做,但上述只是个猜测,没有验证。
    nfroot
        4
    nfroot  
    OP
       2019-03-01 11:19:58 +08:00
    @yzwduck 这个文件没有你说的这个选项,里面就 4 行内容。。。config_path 是指 /etc/config/zerotier 吗

    config zerotier 'sample_config'
    option enabled '1'
    list join '8056c2e21c7XXXXX'
    option secret '
    yzwduck
        5
    yzwduck  
       2019-03-01 11:27:09 +08:00
    不是…目测你的 zerotier 配置文件被改过了,看源代码:
    https://github.com/openwrt/packages/blob/master/net/zerotier/files/etc/config/zerotier
    nfroot
        6
    nfroot  
    OP
       2019-03-01 11:41:44 +08:00
    @yzwduck 昨天我配置的时候看到过你这个格式的文件,忘记是哪一个了。好像就是我贴的这个,记不清了。

    我把我的 /etc/init.d/zerotier 贴上来了,能否麻烦你帮忙修改一下,启动 zerotier 前把 /root/moons.d 这个文件夹复制到 /var/lib/zerotier-one (我 cd 的时候会直接进到 /tmp/lib/zerotier-one ),这样应该就可以了吧。。
    下面是我的 zerotier 文件,谢谢!(我会 vb 和 php,但是对 linux 系实在是不熟,拜托啦!)
    http://paste.debian.net/1070770/
    nfroot
        7
    nfroot  
    OP
       2019-03-01 12:04:58 +08:00
    我在 mkdir -p XXXXXXX 下面加了一行建立文件夹,和复制文件,但是文件夹建立了,文件没复制过去。。。算了下午再研究,谢谢
    yzwduck
        8
    yzwduck  
       2019-03-01 12:15:44 +08:00   ❤️ 1
    不用修改 /etc/init.d/zerotier,它自身就能满足你的需求,但强烈建议把它看一遍;
    你需要照着源代码里的配置文件,修改 /etc/config/zerotier,加一行 option config_path '/etc/zerotier';
    然后把 /etc/zerotier 当作 /var/lib/zerotier 配置 moons。

    但是我没法测试验证,因为 zerotier 是那台远程 openWRT 路由器唯一连通的手段。
    nfroot
        9
    nfroot  
    OP
       2019-03-01 13:27:39 +08:00 via Android
    @yzwduck 我还是在 init.d 里改了,在本来的 mkdir 下面一行加了一个 ln -s 文件是在那里了,不过好像还是搭建失败 9993 端口想公网可以看到开起来了。。但是连不进这个网络,复制 000000xxx.moon 去目标计算机重启电脑还是失败了。。。这玩意日志也没看到有。。。想客户端找不到,服务器这边不会找,晕了。。眼看这客户端这边提示什么 200 xxx ok 以为加入成功,重启一看就是没有。
    nfroot
        10
    nfroot  
    OP
       2019-03-01 13:30:33 +08:00 via Android
    我是在两个内网服务器配置的,一起配置。。一起加入网络,然后进行 moon 配置,不知道是不是步骤错了
    nfroot
        11
    nfroot  
    OP
       2019-03-01 14:54:17 +08:00
    @yzwduck 找到一个内容,说是因为这个版本的缘故导致问题,没办法搭建 moon。。。哎,我还是换个系统试试吧。在 LEDE 上,这个版本是最新了,去其他系统试试别的版本了。谢谢了
    ju0594
        12
    ju0594  
       2019-03-15 00:20:53 +08:00
    @yzwduck 感谢,实测可行 。
    需要先复制一份 /var/lib/zerotier-one 到 /etc/zerotier 然后在配置文件加入 option config_path '/etc/zerotier'
    此后 zerotier 都会从这个文件夹读取配置 包括 moon 节点
    429632952
        13
    429632952  
       2020-03-27 00:29:30 +08:00
    如果是 Lean 的 OpenWrt 固件,只需在 /etc/config/zero/中新建一个叫 moons.d 的文件夹,然后将从服务器下载回来的 moon 文件放进去,重启 zerotier 即可使用
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1195 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 18:26 · PVG 02:26 · LAX 10:26 · JFK 13:26
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.