一、原由

K3已经够老了,总想着淘汰它。又感觉还能用,真是食之无味,弃之可惜!最近挺闲,决定来玩个大的,最后利用它一下。

二、现状

现在用的是某山正流行的梅林版本,之前用的小宝哥的。宝哥的梅林还挺不错的,就是不更新了,插件太老,不能适应人民群众日益增长的需求了。结果换成这版本后,可能是这机子实在不行吧,被我改散热,加风扇折腾过。老是断流,不光2.4G断,5G也断!网页还经常登陆不了,虽然功能足够满足我的要求,但这断流实在忍受不了!

三、需求

笔者的要求其实一点也不高,得有nfs用来存储摄像机的录像,嗯,笔者的摄像机带nfs网络存储。专门挂了一个分区作监控存储。一个分区用来给MAC当外挂硬盘。MAC的硬盘足够快,可惜实在太小… 所以nfs是刚需,上网要求不高,无线正常就行,有线接了监控摄像机和一台装了ubuntu20.04的工控机。因为有远程办公室电脑的需要,所以得做内网穿透。

四、方案考虑

目前免费的适用于K3的,只有openwrt还在不断更新了,所以固件只能是openwrt了。正好L大的固件也支持我的所以要求,就它了。实际上开工才知道,还是有很多问题要解决…

五、刷机

这里笔者的梅林刷回LEDE其实挺麻烦的,要先刷回官改(宝哥版)。结果刷回去wan口挂了… 说实话,笔者用的这版梅林挺坑的,当然也可能是笔者运气问题。某山找到解决办法,把备份的mtd0刷回去就好了,幸好我备份了,当然没备份的也有办法,改mac地址就行,不难,也没试过就不说了。反正一通折腾刷到宝哥官改固件的lede了。
然后某山找了个编译好的openwrt,下载量最大那个。刷好发现没有nfs,不能挂usb硬盘… 太无语了!现在人都nas自由了啊!我还活在20世纪,穷人伤心了!换吧,换了下载量第二的LEDE编译固件。这回挂上硬盘了,可还是没有nfs… 这回好了,头疼了。一咬牙一跺脚,哥们自己装行吧!一顿操作猛如虎,强制核心不对也给nfs装上了!结果还是不能用!
索性一不做,二不休!哥们找LEDE的源码自己编行吧!正好ubuntu都是现成的呢,照着L大的说明又一顿操作,编译了三回,第一回花了两天,后面两回倒是没用几小时。终于搞定了nfs等一切我要的功能!

六、配置

刷回好不容易弄出来的固件,心情顿好!LEDE固件现在确实很成熟了,除了无线功率不太行,啥都好用!
废话一大通重点来了,因为众所周知的原因。收费的云盘用不起,免费的太慢!openwrt上带kod。界面漂亮,使用习惯切合国人。可是,可是K3是32位的armV7,可道云的技术方案,它不支持2G以上文件!怪不得别人都不编译这功能!就我傻傻的弄个可道云在K3上。
知错就改,换个云盘方案嘛,不是事。正好ubuntu上有docker,有postgresql,直接上企业级的nextcloud,docker安装老简单了,教程很多就不水了。然后问题又来了,nextcloud支持外部存储,但这功能很坑!又是权限问题,又是不能分享!我又不想把硬盘挂在ubuntu上。然后笔者想啊想找到了一个办法,我在nextcloud的docker里挂上nfs,挂到

/var/www/html/data/user/files/

这里要注意了,默认是不让挂的,因为mount要sudo,而容器内的root是假的root,其实就是普通用户。要给特权才行,网上说改docker的配置文件

/var/lib/docker/containers/一长串字符对应容器/hostconfig.json

事实上我试了,不行。我把json配置的privileged:改成true,重启docker后又改回false了!
笔者找到二个办法,一是:

docker stop nextcloud  # 停止服务
docker commit nextcloud nextcloudbak  # 创建新镜像
docker run -d --name nextcloudnew --restart=always --privileged=true -p8086:80 -v /home/user/docker-date/nextcloud:/var/www/html -v  nextcloudbak  # 使用新镜像运行容器
docker rm nextcloud   # 删除老容器
docker rename nextcloudnew nextcloud  # 修改容器名

办法二就简单了,反正容器里啥也没有,删除了重新run。

然后就可以

docker exec -it nextcloud /bin/bash# 以下容器内挂载
mount -t nfs4 -o async,nolock,vers=3 -v 192.168.2.1:/mnt/sda3/soft(要挂载的目录)/ /var/www/html/data/user/files/soft(挂载的目录)/

这里vers=3,或4,和nfs版本有关。
这个命令只能手动挂载,总不能重启一次来手工干一次活吧,我尝试把它写入fstab这个linux专门负责挂载的文件里,然后用mount -a试了一下,可以挂载,可惜重启还是不会自动挂载,因为容器里的linux不会自动执行挂载动作。最后在根目录发现有entrypoint.sh文件,那就好办了,给它加一行嘛。

docker cp nextcloud:/entrypoint.sh ./  # 先把文件复制出来# vim在倒数第二行加上:
mount -t nfs4 -o sync,nolock,vers=3 -v 192.168.2.1:/mnt/sda3/soft/ /var/www/html/data/user/files/soft/# 再把文件复制回去
docker cp ./entrypoint.sh nextcloud:/entrypoint.sh

这样就解决挂载问题了。未完待续…

K3终极折腾记<一>相关推荐

  1. K3终极折腾记<三> --通过ipv6域名远程访问openwrt、https证书安装配置

    七.远程访问 通过前面的折腾,笔者实现了基本上所有需求.以后就结束了,谁知道chrome.Edge内网打都打不开openwrt首页!只好把Safari拉出来用一下.这肯定不行啊,继续折腾: 很显然,是 ...

  2. linux卸载桌面Ubuntu,Ubuntu安装卸载KDE桌面之折腾记

    记得几年前刚开始用的是OpenSUSE,桌面环境好像是KED1.5的,经常性崩溃阿,太让人无语了,动不动就崩溃,但是对Linux也不熟悉,没有比较好的方法,后来就转Ubuntu了. 今天看到nenew ...

  3. n1运行linux,斐讯N1折腾记:运行 Linux 及优化

    此教程同样适用于斐讯 P1 咳咳咳,上篇教程教大家给斐讯 N1 降级并且刷了官改系统,可以当作一个电视盒子和下载机来使用. 有些小伙伴可能不想把它当作电视盒子,就想把它当作 NAS 或者是服务器,但是 ...

  4. React 折腾记 - (4) 侧边栏联动Tabs菜单-增强版(结合Mobx)

    前言 有小伙伴留言有前进后退没法联动的问题.我仔细梳理下了. 简化了代码逻辑和代码量,重写了一遍,执行逻辑和上个版本有所差异; 上个版本 :React 折腾记 - (3) 结合Mobx实现一个比较靠谱 ...

  5. React 折腾记 - (1) React Router V4 和antd侧边栏的正确关联及动态title的实现

    前言 一如既往,实战出真理. 有兴趣的可以瞧瞧,没兴趣的大佬请止步于此. 免得浪费您的时间 效果图 基于antd的sidebar组件封装 折腾记的技术栈选型 Mobx & mobx-react ...

  6. rtl8811au黑苹果10.15_荣耀MagicBook I5黑苹果折腾记(超详细教程与排坑)

    本文主要介绍如何安装Win10 + Mac OS双系统,以及安装过程中可能遇到的一些坑. 本人的机型是:MagicBook I5-8250U MX150独显 8GB+256GB (VLT-W50),更 ...

  7. 水星路器服务器无响应,联想M720Q、光网卡、Pon stick、Openwrt我的完美软路由折腾记...

    联想M720Q.光网卡.Pon stick.Openwrt我的完美软路由折腾记 2020-11-11 15:43:09 26点赞 208收藏 74评论 一直以来就是个完美党(其实就是zuo) ,之前的 ...

  8. 联想微型计算机m910q6,一台比较完美的黑苹果小主机 联想M910Q折腾记 opencore EFI分享...

    一台比较完美的黑苹果小主机 联想M910Q折腾记 opencore EFI分享 2020-05-27 13:23:39 77点赞 487收藏 93评论 追加修改(2020-05-27 19:27:06 ...

  9. 第二空间计算机最新破解,我的J4125黑群晖折腾记 - 软件篇:无需U盘引导及固态硬盘扩充空间容量法...

    我的J4125黑群晖折腾记 - 软件篇:无需U盘引导及固态硬盘扩充空间容量法 2020-10-16 18:33:49 53点赞 418收藏 25评论 [前言]:继上一篇<我的J4125黑群晖折腾 ...

  10. Ubuntu子系统折腾记

    文章目录 Ubuntu子系统折腾记 让WSL代替cmd和PowerShell 将Ubuntu子系统放到桌面 操作Windows上的硬盘文件 调用Windows中安装的Python 搭载Windows ...

最新文章

  1. xp系统安装oracle乱码,linux中安装Oracle汉字乱码完整解决方案
  2. 情感分析之电影评论分析-基于Tensorflow的LSTM
  3. cocos2dx ios入口类_2.cocos2d-x 第一个项目
  4. java方向好看的书
  5. 查询各个年级的平均分_艰难困苦终生志,玉汝于成竟英才——高三年级期中考试总结暨优秀学生表彰会...
  6. BZOJ4737 组合数问题 【Lucas定理 + 数位dp】
  7. Linux学习总结(52)——主流 Linux 发行版性能对比
  8. JS调用webservice的两种方式
  9. 基于Springboot的物业管理系统_代码
  10. 【全栈软件测试】二、Windows服务器(2-2)搭建web服务器(2-2-1)架设一个网站--使用四种方法
  11. php不使用框架,导出Excel,这里有代码,全解
  12. android ssl双向验证 X509证书信任管理器类的实现及应用
  13. 郑捷《机器学习算法原理与编程实践》学习笔记(第二章 中文文本分类(一))...
  14. web service 优缺点
  15. 小米3 打开开发者选项
  16. (大集合)Linux进程和线程的基本编程、通讯和例程【杂记】
  17. how can i check the error of Journal import date source
  18. IT十年人生过客-十五-回京
  19. 计算机网络利弊的作文英语作文,网络的利弊英语作文模板及范文赏析
  20. 北航华科计算机,2021年北航,同济,北理,南开,华科大和中坚九校的此起彼伏...

热门文章

  1. RS-485 工作逻辑
  2. 【改写历史】--历史谁书写?谁将改写历史?
  3. 常用面试问题50问(转载)及回答技巧
  4. react项目中使用消息订阅(subscribe)-发布(publish)机制
  5. 密码学基础(三)密码分析
  6. 解决Android图片剪切返回崩溃问题
  7. 将进酒:写在26岁生日这一天
  8. 计算机语言描述正确,关于计算机语言的描述,正确的是( )
  9. [通信技术]Iub接口协议——专用传输信道(DCH)的用户平面协议
  10. RecSys'22|CARCA:交叉注意力感知上下文和属性进行推荐