电子工程师技术服务社区
公告
登录
|
注册
首页
技术问答
课程
芯视听
DIY视频
厂商活动
正点原子
板卡试用
电子赛事
RM机甲大师赛
电子设计竞赛
智能汽车竞赛
资源库
下载
文章
社区首页
文章
家庭nas系统u-nas的高级定制部署
分 享
扫描二维码分享
家庭nas系统u-nas的高级定制部署
u-nas,
iscsi,
xdsnet
关注
发布时间: 2020-01-08
丨
阅读: 2203
## 0. 导言 u-nas是国人基于debian定制开发的方便的nas基础系统,现在发展到4.0版本,对个人用户是免费的。 本文主要涉及u-nas安装配置,和其他相类文章的主要区别(网上也没有其他参考的),主要涉及iscsi客户端的使用,即可以挂载其他iscsi服务提供的磁盘lun。 另外一个比较特殊的是zerotier的使用,这个也是普通u-nas相关文章中未涉及的部分。 本文是以u-nas4.0 系统为基础介绍的。官方下载地址见[http://www.u-nas.cn/resources.html](http://www.u-nas.cn/resources.html) ## 1. 基本系统安装及设置 相关安装网上有很多很多的文章,官方帮助文档相关部分也介绍的比较详细,这里就不再赘述,这些设置包括了一般磁盘的初始化、共享目录的设置,这里主要谈一下几个相关重要设置 1. 基本系统密码设置:默认用户是`admin`,默认密码是`password`,这个当然需要第一时间修改,特别是需要用到u-anywhere的用户,更要设置好一个好的密码。 2. 建议设置一个一般用户来管理数据,这样和系统管理分割开,系统的安全稳定运行的程度会提高很多。 3. 修改root用户的密码,虽然基本上官方文档中没有介绍,但其实一直存在,默认密码是`yutech`也需要第一时间修改。因为后面的很多处理涉及到应用root用户,所以必须处理好这个问题。 安装后的U-NAS本地IP假设是`192.168.10.191` ## 2. iscsi客户端的安装使用(全网首发) 首先,需要注意默认u-nas中提供了iscsi管理,但这个实际上是提供iscsi服务器端的,默认u-nas并不能作为iscsi客户端,去访问其他iscsi提供出来的块设备,所以需要单独安装配置才能使用。具体的操作如下,注意下述命令都是在root用户下执行,关于root用户环境是执行(`web shell`终端中,输入`su`再输入root密码后) 1. 安装open-iscsi组件 ``` apt update apt install open-iscsi ``` 2. 搜索iscsi服务 ``` iscsiadm -m discovery -t st --portal 192.168.1.1 iscsiadm -m node -L all --op update -n node.startup -v automatic ``` 这里解释一下那个ip地址,是提供iscsi服务的ip地址,使用时需要自行替换为正确的地址 3. 执行了上述步骤后,在磁盘检测中,iscsi服务提供的可挂载点就会识别为磁盘,如图  其中2、3、4个磁盘就是我iscsi服务提供出来的磁盘,这些磁盘可以像普通本地磁盘一样用于卷组创建或者直接挂载使用。 **注意** 上述挂载的iscsi在重启后有时不会自动挂载,这是因为可能相应网络环境在尝试挂载时没有配置好,如果出现这样的情况,不要担心数据损坏,只需要重新执行一次`iscsiadm -m node -L all --op update -n node.startup -v automatic` 即可。 ## 3. zerotier的安装使用 zerotier是方便的自组网应用环境。相关的安装其实还是比较简单的,在`web shell`的root用户下执行 ``` apt install curl curl -s 'https://raw.githubusercontent.com/zerotier/ZeroTierOne/master/doc/contact%40zerotier.com.gpg' | gpg --import curl -s https://install.zerotier.com | sudo bash ``` 得利于debian方便的包管理系统,zerotier 就安装上去啦,然后执行 ``` zerotier-cli join 配置好的网络ID ``` 就可以添加到一个预定义网络,这里`配置好的网络ID`需要用你真实的信息予以替换。 这样完成后,再zerotier的管理网站上激活对应设备后,u-nas设备上就可以获取到设置的ip地址,在对应路由中就会有相应展示(因为zerotier是虚拟网卡,故unas`网络配置`中并不显示对应设备,但路由信息中会看到),对应的路由信息展示如图:  这个图中最下面的`ztukuz2xhh`接口就是zerotier安装配置好后的接口。 至此,就可以在其他也配置了zerotier虚拟网卡,且添加到同一网络中的机器中以unas的虚拟ip地址访问到它的各项服务,它是一种u-anywhere的替代,也可以穿透各种网络环境,毕竟u-anywhere更面向大众,对应的风险也就更高,有些人不愿意采用u-anywhere服务,就可以选用zerotier。 ## 4. syncthing的安装配置使用(全网首发) syncthing是一个方便的跨网(可以直接穿透局域网)的数据同步工具,而且有多种终端支持,包括了手机端、PC端(windows、linux、OSX)等等,我觉得是非常好的数据同步工具,不过U-NAS中并没有以APP等方式提供,所以需要定制安装。 syncthing其实安装还是很简单的,因为U-NAS是基于debian的,而syncthing是一个直接可以安装的软件包,所以可以直接apt安装,在终端中以root权限执行 ` apt install syncthing ` 就可以安装上syncthing,但安装好的syncthing其实没有什么用,它并不自动打开,当然也不能提供好的对外服务 这里比较难的是用admin用户来启动,并且保持持续服务(起码在unas运行期间可以自动保持服务)。有的人说为什么不用root权限启动服务,这是因为syncthing如果用root权限启动服务,则写入的数据也会是root权限的(文件所属是 `root:root` ),在共享中其他用户是不能直接访问的,所以会很不方便,建议还是以admin或者其他用户(如果添加有,文件所属是`admin:everyone`)来启动,这样有2个好处 1. syncthing服务数据不容易影响到整个系统的安全 2. syncthing写入的数据能在共享中直接访问到 相应配置还是有点麻烦的,需要按照下面的一步一步来做 1. 首先保证有一个可以放置数据的共享目录,比如设置的共享目录`all`,它的真实挂载路径比如是 `/mnt/iscsi500g/viscsi500g/all`(后面会介绍如何获取这个信息) ,这个最好记住,后面配置要用到 2. 用root权限建立目录`/home/admin` ,这个目录默认是不存在的,但要用admin启动syncthing需要用到,在终端root权限下执行: ``` mkdir -p /home/admin chown admin:everyone /home/admin ``` 3. 完全退出终端,然后重新打开终端,并以admin登入(以往打开终端,因为没有`/home/admin`目录,所以用户目录是无效的,需要重新登录才能保证用户目录生效) 4. 在终端命令行,admin用户下执行一次syncthing,让syncthing自动生成一下配置信息,然后按`Ctrl+C`直接退出 5. 此时在`/home/admin/.config/syncthing/`目录下就有很多配置相关文件啦,在终端中执行 ``` sed -i "s/127.0.0.1/0.0.0.0/g" /home/admin/.config/syncthing/config.xml ``` 修改配置让syncthing的管理界面能在本机所有IP上打开,以方便后续配置。 6. 安装`supervisor`以监控保持syncthing服务的自动持续运行,在终端root权限下执行 ``` apt install supervisor /etc/init.d/supervisor restart ``` 7. 为配置以admin启动syncthing的supervisor运行项,注意这里要用到前面的共享目录真实挂载路径,它的查询方法是 1. 登入超级终端 2. 运行 `df -h`,结果类似下图  其中的`/mnt/iscsi500g/viscsi500g`(它被称为分区挂载路径,下面用`PATH`代表) 就是我挂载的一个磁盘,在下面就会建有你在U-nas管理界面`共享文件夹`下建立的`共享文件`目录,你可以用 ``` cd PATH ls -1 ``` 查看到这些路径,比如我的执行上述操作后的结果如图:  里面的`all`,`dockerDatas`和`quchong`就是建立的共享文件夹  由此一个合适的完整共享目录路径为`PATH/你建立的共享目录名`,如`/mnt/iscsi500g/viscsi500g/all` 8. 正式配置syncthing的supervisor运行项: 1. 登入超级终端,并切换到root权限下 2. 执行 ``` vi /etc/supervisor/conf.d/syncthing.conf ``` 内容填入 ``` [program:syncthing] command = /usr/bin/syncthing -no-browser -home="/home/admin/.config/syncthing" directory = /mnt/iscsi500g/viscsi500g/all autorestart = True user = admin environment = STNORESTART="1", HOME="/mnt/iscsi500g/viscsi500g/all" ``` **注意**这里的`/mnt/iscsi500g/viscsi500g/all`需要用你自己的路径予以替换,有2处的。 9. 利用supervisor启动syncthing,在超级终端root权限下执行 ``` supervisorctl update supervisorctl start syncthing ``` 支出一个U-NAS下以admin权限运行的syncthing应用就启动了,可以U-NAS的IP去打开syncthing的web管理界面进行进一步配置啦 10. 打开界面如图  它提示我没有配置管理密码,点设置进行配置即可,当前默认的共享目录对应的路径就是前面的`/mnt/iscsi500g/viscsi500g/all`,也是我共享文件夹中的一个可用路径,以后共享其它设备可以直接在此基础上建立共享子目录(也是建议的方式)。 进一步的syncthing操作请参考网上大量的例子,这里只提一个从其他设备同步目录到U-NAS的具体处理。 11. 其它设备同步目录备份到U-NAS具体操作 1. 在需要同步的设备上安装syncthing相应程序并进行设置(具体参考网上文章)需要同步的源目录(建议类型选择为`只发送`,这样它只能作为源,其他地方修改不会反馈到这个目录上,当前具体类型选择依据你自己的需要)  2. 添加U-NAS设备的syncthing信息,它可以在U-NAS的管理界面上查询到,如图  点击`显示ID`即可  添加后就会显示  最下面的U-NAS就是新添加的设备 3. 这时U-NAS的syncthing管理界面中也会出现相应信息,进行设备添加就好  3. 在其他客户端需要同步的目录共享配置中选择同步到U-NAS  4. 在U-NAS的syncthing管理界面上就会出现类似  的消息,选择添加,则出现类型下面界面  根据需求填入信息,必须填入的是`文件夹路径`,注意那里标红的部分就是我们前面配置的默认路径信息,可以复制,再添加子目录,比如  确认后就会自动进行同步,更多选项使用请参考网上其它文档。 下图就是U-NAS同步完成情况  至此,关于U-NAS下安装配置syncthing的介绍就完成啦。 ## 后记 更多U-NAS定制使用有待去发掘。
原创作品,未经权利人授权禁止转载。详情见
转载须知
。
举报文章
点赞
(
0
)
xdsnet
擅长:科研教育
关注
评论
(0)
登录后可评论,请
登录
或
注册
相关文章推荐
Beetle ESP32 C3 蓝牙数据收发
Beetle ESP32 C3 wifi联网获取实时天气信息
开箱测评Beetle ESP32-C3 (RISC-V芯片)模块
正点原子数控电源DP100测评
DP100试用评测-----开箱+初体验
Beetle ESP32 C3环境搭建
【花雕体验】16 使用Beetle ESP32 C3控制8X32位WS2812硬屏之二
【花雕体验】15 尝试搭建Beetle ESP32 C3之Arduino开发环境之二
X
你的打赏是对原创作者最大的认可
请选择打赏IC币的数量,一经提交无法退回 !
100IC币
500IC币
1000IC币
自定义
IC币
确定
X
提交成功 ! 谢谢您的支持
返回
我要举报该内容理由
×
广告及垃圾信息
抄袭或未经授权
其它举报理由
请输入您举报的理由(50字以内)
取消
提交