R2S+ZeroTier+Trilium

软路由使用ZeroTier搭建远程笔记

  • 软路由使用ZeroTier搭建远程笔记
    • 环境
    • 部署
      • 安装ZeroTier
      • 安装trilium

环境

  • 软路由硬件:友善 Nanopo R2S
  • 软路由系统:OpenWrt,使用第三方固件nanopi-openwrt。
  • 内网穿透:ZeroTier。
  • 远程笔记:Trilium。

部署

安装ZeroTier

  • ZeroTier的作用是实现内网穿透,使得远程设备可以访问内网中的服务。安装ZeroTier的步骤请参考官方文档,软路由安装的系统为OpenWrt,因此使用OpenWrt ZeroTier插件进行安装。本文安装系统中已经自带ZeroTier插件,因此无需再次安装。

  • 安装完成后,在浏览器中输入http://192.168.2.1,进入ZeroTier的管理页面,添加网络ID,启动ZeroTier。网络ID需要在ZeroTier官网注册获取。在这里插入图片描述

  • 在管理页面中,点击网络——>接口,新建网络接口ZEROTIER。在这里插入图片描述基本设置在这里插入图片描述

物理设置(z字母开头的以太网适配器)在这里插入图片描述
防火墙设置 在这里插入图片描述

  • 网络——>防火墙设置,使得ZeroTier接口的数据和WAN接口的数据可以互通。在这里插入图片描述

  • 在ZeroTier网站查看是否有新节点接入,如果有的话,点击Join Network按钮,将新节点加入网络。

  • 如果ZeroTier网站没有新节点接入,则需要检查软路由的防火墙设置,确保ZeroTier接口的数据和WAN接口的数据可以互通。

安装trilium

  • trilium是一个开源的笔记软件,支持Markdown语法,支持多平台同步,支持插件扩展。可以运行在服务器端,也可以运行在客户端。本文使用服务器端部署,因此需要安装trilium。

  • 安装trilium的步骤请参考官方文档,软路由为Nanopi R2S,为ARM架构,因此需要使用trilium的docker安装方式。

  • 由于本系统也预装了docker,因此无需再次安装docker。但是由于根目录空间不足,因此需要切换docker的数据存储目录。一下是切换docker数据存储目录的步骤,有文心一眼生成,亲测有效,可根据实际情况修改:
    在OpenWrt系统中更改Docker的存储路径,可以按照以下步骤进行:

    1. 安装Docker(如果尚未安装):
      使用以下命令更新软件包列表并安装Docker:

      opkg update
      opkg install docker
      
    2. 停止Docker服务
      在修改Docker配置文件之前,需要停止Docker服务。使用以下命令:

      /etc/init.d/docker stop
      

      或者在某些OpenWrt版本中,可以使用:

      systemctl stop docker
      
    3. 创建新的存储目录
      选择一个磁盘空间更大的位置来作为新的Docker存储目录,例如/mnt/docker。然后创建该目录:

      mkdir -p /mnt/docker
      
    4. 修改Docker配置文件
      使用文本编辑器(如vinano)打开Docker的配置文件/etc/config/docker

      vi /etc/config/docker
      

      在配置文件中,找到并修改option data_root的值为新创建的存储目录的路径,例如:

      config docker 'docker'option data_root '/mnt/docker'# 其他配置项...
      

      保存并退出编辑器。

    5. (可选)安装适当的存储驱动
      如果需要更改Docker的存储驱动(如使用overlay2),则需要先安装相应的驱动。例如,安装overlay2驱动:

      opkg update
      opkg install kmod-fs-overlay2
      

      然后,在Docker配置文件中指定新的存储驱动(但通常这一步不是必需的,除非有特殊需求)。

    6. 重启Docker服务
      重新启动Docker服务以使更改生效:

      /etc/init.d/docker start
      

      或者在某些OpenWrt版本中,可以使用:

      systemctl start docker
      
    7. 验证更改
      确认Docker服务正在运行,并且Docker的存储路径已更改为新的目录。你可以通过查看Docker的日志或使用Docker命令来验证。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/685813.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据分析:基于sparcc的co-occurrence网络

介绍 Sparcc是基于16s或metagenomics数据等计算组成数据之间关联关系的算法。通常使用count matrix数据。 安装Sparcc软件 git clone gitgithub.com:JCSzamosi/SparCC3.git export PATH/path/SparCC3:$PATHwhich SparCC.py导入数据 注:使用rarefy抽平的count ma…

自动驾驶学习2-毫米波雷达

1、简介 1.1 频段 毫米波波长短、频段宽,比较容易实现窄波束,雷达分辨率高,不易受干扰。波长介于1~10mm的电磁波,频率大致范围是30GHz~300GHz 毫米波雷达是测量被测物体相对距离、相对速度、方位的高精度传感器。 车载毫米波雷达主要有24GHz、60GHz、77GHz、79GHz四个频段。 …

Redis数据结构-Dict

1.3 Redis数据结构-Dict 我们知道Redis是一个键值型(Key-Value Pair)的数据库,我们可以根据键实现快速的增删改查。而键与值的映射关系正是通过Dict来实现的。 Dict由三部分组成,分别是:哈希表(DictHashTa…

【InternLM】书生·浦语大模型报名地址

【InternLM】书生浦语大模型报名地址: 扫码报名

药物代谢动力学学习笔记

一、基本概念 二、经典房室模型 三、非线性药物代谢动力学 四、非房室模型 五、药代动力学与药效动力学 六、生物等效性评价 七、生物样品分析方法 基本概念 生物样品:生物机体的全血、血浆、血清、粪便、尿液或其他组织的样品 特异性,specificity&…

cmake调用MSVC编译时报C2071、C2061、C2059、C2449等错误的解决方案

文章目录 1. 问题复述2. 问题原因3. 解决方案 1. 问题复述 项目一直在linux下编译,这次偶然要在windows下使用msvc编译,结果一堆报错,根据报错信息发现语法也没有问题,报错信息如下: 查找文献说是因为有中文注释导致…

Rocketmq如何保证消息不丢失和幂等性

生产者 生产者通过RocketMQ提供的事务消息(两阶段提交)能保证消息的一致性。 第一阶段给Broker发送一个半事务消息,半事务消息是不能消费的消息,broker已经收到生产者发送的消息,但是并未收到生产者的二次确认&#x…

基于Springboot+Vue+Java的校园资料分享平台

💞 文末获取源码联系 🙉 👇🏻 精选专栏推荐收藏订阅 👇🏻 🎀《Java 精选实战项目-计算机毕业设计题目推荐-期末大作业》😘 更多实战项目~ https://www.yuque.com/liuyixin-rotwn/ei3…

JavaScript使用 BigInt

在 JavaScript 中,最大的安全整数是 2 的 53 次方减 1,即 Number.MAX_SAFE_INTEGER,其值为 9007199254740991。这是因为 JavaScript 中使用双精度浮点数表示数字,双精度浮点数的符号位占 1 位,指数位占 11 位&#xff…

2024洗地机选购指南 | 怎么选洗地机不会被坑?

家里的地板总是需要打扫,但工作忙碌的我们往往没有足够的时间来打理。洗地机不仅能够帮助我们节省宝贵的时间,还能让我们的家变得一尘不染。今天,笔者将为大家讲讲挑选洗地机的技巧,告诉大家怎么挑选洗地机不会被坑,顺…

ArrayList底层结构和源码分析

ArrayList的注意事项 1,permits all, including null, ArrayList 甚至可以加入多个null,并且可放多个 2,ArrayList 是由数组来实现数据存储的 3,ArrayList 基本等同于Vector,除了ArrayList 是线程不安全但执行效率高…

ICode国际青少年编程竞赛- Python-4级训练场-while语句入门

ICode国际青少年编程竞赛- Python-4级训练场-while语句入门 1、 while Flyer.disappear():wait() Dev.step(2)2、 Dev.step(1) while Flyer.disappear():wait() Dev.step(5)3、 while Flyer[0].disappear():wait() Dev.step(3) Dev.step(-1) while Flyer[0].disappear():…