专注4K家庭影音, 服务千万家庭影音发烧友!

在线
客服

QQ咨询服务时间: 9:00-21:00

选择下列客服马上在线沟通:

快速
发帖

暂无
7*24小时客服服务热线

关注
微信

顶部

[NAS组装] 群晖NAS利用方式心得分享之debian + nextcloud

Kyriosli 发表于 2019-11-28 21:57:27 | 显示全部楼层
群晖nas利用方式心得分享之debian + nextcloud; l7 b- u5 J9 F) f% X( \8 y, Y% [7 `" ]
5 V; E9 s) V$ `& d
前言( V! W9 \8 [/ A9 v, v; x$ B
在我心目中一向有一个完善的 NAS,它与众分歧最时髦(舞蹈一定棒),既能满足我的折腾愿望,又可以丰富平常生活,传传照片听听音乐岂不美哉。然鹅从N年前买 Gen8 然后弃坑到今年重拾起来接盘蜗牛并折腾了很久黑裙,总感受差点意义(在这里不能不吐槽 DS Photo 的渣体验,间接劝退),其中纠结踩坑不敷为外人性也。% c0 ~' ?/ Q  f& m/ P- _
直到前两天,决议转开源NAS,先是试了下水 freenas,预备装 nextcloud 试试,成果被插件安装不上劝退,然后重拾了我最爱的 debian。
+ _& `+ y8 c( g+ I& M: p5 m( r啊~回到了熟悉的 debian 怀抱,一切都变得那末天真烂漫,不管是磁盘挂载、远程登录、安装软件等(一路头我还哼哧哼哧装了 OMV,最初发现并不是我想要的,因而就纯号令行了)。6 U; m- L% I- \5 Z5 J# W/ S6 ]
本文会记录为了到达最好体验,折腾中的各个方面,K友们请自取所需,不必故步自封一步步来。
6 d3 z6 Y  _& `# ~一、公网 IP + 静态剖析  u3 b: _( p; }
要到达最好体验,必定还是公网 IP 最好。不管是转发式还是打洞式的内网穿透(包括白裙的quickconnect),体验都比不上有一个公网 IP。我由于用的联通光纤所以题目很是简单:打 10010 要求改成公网 IP,搞定。
9 \' J$ N( C, v; H" p- A: _  y至于静态剖析我是采用的阿里云 DNS。事理很简单,就是经过挪用 API 来更新剖析记录。最早在折腾 Gen8 年月,我就写过一个剧本,后来还封成插件挂到了 KoolShare 上(没错第一版 aliddns 就是我写的)。不外由于 KoolShare 的插件运转机制有题目经常挂掉,所今后来就还是间接走剧本了。
9 `# R$ h) z) ~, ^固然,阿里云 DNS 实在是静态剖析里的 hard 形式,easy 形式还是很多的,很多路由器都自带这个功用,好欠好用另说,必定没这么折腾。这里简单做个对照:
0 n9 Y6 P8 k  e/ M第三方 ddns  y- ^! T  i3 }7 ]6 d3 Y
优点:很是简单,根基不需要花钱- G5 h7 p* B5 V  W: l" A. k
弱点:凡是不支持 https,偶然更新慢,不成靠
: A, L" ?) c! b- p  X阿里云 DNS; f% w5 [' ?8 j! g
优点:稳定,牢靠,几年不用费心,支持 https; R' x( R( S* T- ]
弱点:流程复杂,需要专业常识较多: P* A1 D! R/ K, h/ }5 w5 \
那末下面我们就简单概括下阿里云 DNS 做静态剖析的进程和道理:
% I7 R1 f- w/ k3 G. L5 {8 e) p第一步 具有一个自己的域名8 ~. I! x$ k" a/ m
是的!这是一切的条件。固然这不会花太多钱。只要不选支流的 .com/.net/.cn 域名,你只需要花一顿盒饭的钱,就能买下一个域名 1 年的利用权。具体报价可以参考这里。) ?4 o, M% F  x* w, j. V% k/ G
倡议一次性买断10年,.press 只要 ¥149,.site/.website/.space 也只要 ¥179。6 c* _4 a8 M, [3 I" D

6 l( B$ C* l" }$ X& ^% ]0 t第二步 设备 DNS 剖析
, e3 _! S% w8 \+ |假如之前没有在阿里云买过域名,新注册的域名需要过实名认证才能开通剖析。实名认证也很简单,付出宝扫一下便可以了。
+ b' h% M+ G5 w3 e9 j4 A- [, b3 I+ a) n. t& j6 a
必须实名认证才能剖析
, L) a0 J7 g7 b( q# k1 I- L, E3 J接下来翻开云剖析控制台,应当可以看到你的域名,已经可以剖析了。; b( Q* E# H* J  A( k
自动更新 IP 就是经过挪用云剖析的 API 来设备域名的剖析。API 认证经过 AccessKey 实现,我们可以翻开阿里云的 AccessKey 界面,建立新的 AccessKey,记录下 key 和 secret,用鄙人一步的剧本里。
! S6 B* J7 x/ z/ D3 y: x第三步 自动更新 IP
) b" n* b! d! k2 p, t不愿意折腾剧本的同学可以看下自己的路由器利用市场有没有 aliddns。没有的话也没关系,可以自己在路由器上大概 nas 办事器上安插一个按时剧本。按时剧本的功用就是按时的取本机的公网 IP,跟 DNS 办事器设备的 IP 对照,假如不婚配,就更新一下。
1 ]1 G$ D8 |( M0 F) H) W剧本的内容可以从这里获得,你需要手动点窜一些设置并停止测试。具体的若何远程登录、编辑或上传文件到路由器或办事器等在这里不再赘述。4 x( d0 I/ U$ {; z. v
需要留意两点:
, G; b4 v/ M) c/ L这个剧本是在路由器的 shell 情况里测试经过的,在此外平台上没有具体测试过,也许会有兼容性题目。假如你想移植到此外平台,大概用别的说话改写,可以联系我
% @* U2 U9 J1 r5 h* T0 j0 j/ L0 f路由器的文件系同通常为只读的 squashfs,也就是说间接将文件上传到普通目录是不答应的,大概断电会丧失。这时辰需要配合 jffs 分区大概内部存储(如 u 盘、SD 卡等)来停止持久化存储。
; ?1 Y8 k9 D5 P" Y! s测试成功后,需要设备按时触发剧本。一般有 crontab 等方式。需要留意的是,一般路由器的 crontab 也是断电不成保存的,所以需要利用系统的按时剧本等功用。
6 D6 `! G. a# M/ d# y二、安装 debian3 L! ]. \$ n# v; `
debian 的安装教程很多,在这也不再赘述。我保举的计划是收集安装,只装系统根本组件和 ssh server。作为一个装 debian 内行,在这里只告诉你们一点人生的经历:6 ?4 S9 g, E6 i7 e
挑选镜像/ ^8 o! C! b3 R
安装的时辰一定要选好镜像,可以预先测一下速度,看国内的哪个镜像最快。可选的镜像有:0 n  B, M: l  X1 B1 c, N: L
网易
5 W0 n" B$ p& }0 a* ^- }阿里云
8 ^  R: Y) V$ {- d7 U搜狐
' ]7 j; m2 p" K( f; ]: b: v1 X中科大:教育网首选! ~; f8 f% k! F2 n! E- R
更多的镜像可以看这里
1 \' a) l9 g4 h+ P" a7 S% [分区的时辰倡议把 /boot、/home、/var 都朋分进来,方便系统重装。以一个 128G 的启动盘为例,可以大致这样去朋分:
$ X" o" j. }4 NEFI:100M
  o4 E* ^0 @& O& J; L$ N# |$ Cboot:1G4 O$ k# t7 G6 b! }
根目录:20G5 h! N) H5 V) W
swap: 8G2 T3 J: V% m) j/ t5 H4 V
home: 60G
: x- L5 `5 G* X9 A$ H( P9 cvar: 20G8 P/ [0 K: c" M( E( a3 h( Y
安装必须软件
6 b7 E$ i: H; n% P9 b7 a' I安装完成后,一些趁手的工具是需要的,下面是一些系统默许不会装的软件,且都不大,可以自行无脑安装:
1 r3 k/ w2 q6 C' T7 r系统治理、剧本:' M) }" E3 l: R
sudo、screen、curl
& m  Y8 {8 F1 }3 p; G8 f+ B& b文件系统支持:, Q0 H! v5 G% n  y6 N6 t, W
exfat-fuse、
) O3 n! n) j% O& m# C- v1 l( Cexfat-utils、ntfs-3g' K  X- L, t  ]; O4 ^% V
编辑器:
3 F0 }( ~% M$ i' }) T. N% `: b" Avim& @% u8 {; a! \; @/ Y! {- b
多媒体处置:3 Q6 Y4 n6 _2 a2 R
imagemagick、ufraw-batch、ffmpeg、exiftool
1 W( Y: X  y* |2 aNAT 穿透
+ I9 J9 v& R" Y0 x0 m2 b, ^4 c& J很多时辰办事器放在路由器的前面,为了让办事在外网可以拜候,需要做 NAT 穿透设置。在这里我只想说:DMZ 大法好!只需要在路由器里设备一下办事器的内网 IP,便可以一键转发一切办事了
( n7 H! ~: k4 y1 h" S
* n1 u* m6 }* H$ s$ h) K2 M在联通光猫上设备 DMZ 的地方0 m/ ~% B6 h6 e- E" X, Q$ e
三、安装 nextcloud
; }; X6 P7 p* x$ a+ a0 a6 p1 v. ?致到此还没被劝退的K友一句话:恭喜你终究对峙到了这一步,下面的步调能够更麻烦!nextcloud 虽然架构简单,可是要玩转还是需要一些功夫,我们一步步来看一下:
% v9 L$ T5 M! Y安装 nginx5 H9 d  E9 x5 R; V* N7 e) [
虽然网上的教程偏向于利用 Apache,可是我倡议利用 nginx,究竟效力更高,设置逻辑更简单,而且对 HTTP/2 支持更好:
  V+ z( N0 H# {8 v/ V& c安装完成后,可以试试拜候下办事器的 80 端口能否启动成功。nginx 要想到达最好结果,需要设备 worker thread 等,但默许设备已经很好用了,所以在这里就不再赘述。9 S: b' d+ G5 k; ~
申请 HTTPS 证书0 z# L: d6 ]5 }
很久很久之前,这是一个可以当可骇故事讲的工作,可是现在不用了,我们有 letsencrypt ! letsencrypt 是一个免费证书供给网站,网上有很多教程。经过上一步安装的 nginx 可以完成你的域名的一切权认证,从而发给你证书,不外这个对我不适用,由于联通不答应 80 端口供给办事。所以我利用了 DNS 认证方式。* Z; `3 c9 y5 z+ \- D
讲真,证书的申请是一件很是麻烦的工作,需要天生私钥、建立证书签发请求、签名等步调,很是合适劝退初学者。不外现在好了,letsencrypt 供给一个号令行工具 certbot 来完成一切工作:
- x4 C8 L/ B7 Y上面的号令会当地天生私钥和签发所需的文件,并向办事器请求签发。办事器会随机天生一段文本,并让你设备到你的 DNS 办事器上( G7 |1 N- f+ W/ S# j' F
. s- O/ A' V. }5 ~; Q6 C: K9 U
certbot 请求证书
7 f5 W% E0 G+ f  o$ |下面,翻开阿里云的云剖析控制台,在域名里增加一条 TXT 记录,子域名为 _acme-challenge,值为上面的考证文本:! ?) M% ~) |$ _9 j/ l& ?

) Z+ b, n, H( r3 C. C$ _2 Q  s利用别的 DNS 供给商的同学可以用响应的方式停止设备。
! d- R% ?; ?. ?2 Y) `3 f% l设备成功后,可以在另一个终端经过号令行考证一下:! [$ H) c, u( Z+ Q, {* p5 ]
考证通事后,按回车继续证书天生进程。天生好的证书会放在/etc/letsencrypt/ 下面。倡议将证书拷贝到别的目录以供利用和备份:$ l" b9 ?7 i5 I; c# X/ v6 e6 k7 O
我们在 nginx 默许办事器里改一下设置,试试能不能经过阅读器考证:2 p# o4 R1 H0 l4 `: N) T# S, u
, x# e1 e0 {. R' x# X% w) B- ~
nginx 设置证书% ~" \2 |- D2 a2 L. I5 ~, {
设置成功后,运转 systemctl reload nginx.service,假如启动成功,可以拜候下 https://你的域名:8443试下能否设置成功了,证书能否有用:
5 o7 G- F, F/ \0 r" ?) ^# G: O+ u
# ]( x3 x; R  f/ V3 y5 y0 k证书有用期只要3个月,到期需要重新更新证书
5 q* ^0 f( W; Q! X, x" O# g# O: e安装数据库
- {( o* \" D2 s! H" dnextcloud 利用 mysql 存储文件索引等信息,固然在 debian 里面我们需要安装mariadb。运转以下号令安装 mariadb:: E6 D1 E( X' T
安装数据库办事
. X# \. N! D1 P# `apt-get install -y mariadb-server; r$ r' X0 U) I2 a: k2 L
优化数据库平安性9 p+ Y( l8 B5 A) G
mysql_secure_installation
) z' a! O8 @# Q' B* l+ j1 P建立数据库$ T/ H7 f  ^3 h2 @
CREATE DATABASE nextcloud;
6 X% o) @$ a5 p. J% n8 N增加数据库用户. q3 c% U2 x* {& V2 v
CREATE USER nextcloud@localhost identified by &39;;
% E1 t& v8 g1 {设备数据库用户权限2 z* ]' e& {; G8 a  w( h- A
GRANT ALL PRIVILEGES on nextcloud.* to nextcloud@localhost;) f: Q& I9 @2 {3 S! o5 O2 f
FLUSH privileges;+ m( Q7 B! e- u; u" y! A" u& \
安装 php0 h% n" x$ p! W7 n6 U2 q
空话不多说:+ t! J: F6 Z, ~" u( c5 W
当前的 php 版本是 7.3,所以天生的设置文件在 /etc/php/7.3/ 下面。我们需要点窜以下设置:
& f8 G1 U6 Y0 R& p: K! ^! D/etc/php/7.3/fpm/pool.d/nextcloud.conf:5 W9 E! A# t3 P: P1 @& p
然后,点窜 nginx 设置文件,让你的域名指向 php:
; Q' V5 P1 n. \3 m# \# S# n, x  X4 E/etc/nginx/sites-available/nextcloud:
3 Z. ^" `! w& ?4 c6 a" n' d& |然后,别离重启 php-fpm 和 nginx:
* V& e+ s) r' e( S安装 nextcloud
+ c/ s3 B9 g4 m) v9 q终究到了这一步!由于 nextcloud 网上安装教程很是多,我们这里就不浪费大师流量贴一堆图片了,简述下安装进程。由于软件版本随时能够升级,请大师自行下载最新版
7 ~/ t" Z8 D+ W% s" e0 Q8 r3 c下载安装剧本
! H* X) M; L- d: [* y. N/ mcd /var/www/& ^/ ?$ |% J+ B: m" d& }* D
wgethttps://download.nextcloud.com/server/releases/nextcloud-17.0.1.zip7 E- e) _& Y. e6 n9 t9 L
unzip nextcloud-17.0.1.zip7 a4 d8 s) X3 W& [6 `
chown -Rwww-data:www-data nextcloud) `+ n1 y0 _' X# `5 F3 k
拜候你的域名完成安装! |6 u+ p8 ~5 B- y" Y- _+ W) ~
点窜 /var/www/nextcloud/config/config.php 完成优化1 \% `( ]2 |# Z4 j! Q" q+ Q
点窜dbhost 为&39; 经过当地 socket 毗连数据库" X4 i! f2 B$ W6 H! e
点窜 loglevel 为 4 削减日志内容
' M' ?9 K6 @! o' W( b' Z; V6 o增加字段 &39; => &39;- W, j2 O4 `: T
增加字段 &39; => array(&39;,&39;,&39;,&39;,&39;,&39;,&39;,&39;,&39;,),
' x' H: |: v) |2 J1 }3 c9 F- f6 I8 v检查安装/ Y# D6 N/ h4 T5 H) ?6 D
完成设置后,可以翻开 nextcloud 的设备->概览页面,看看有没有一些没配好的或可以优化的选项。具体的优化选项可以按照自己的需求停止设置- ]3 M) E7 l: O0 b/ O1 L
四、安装插件6 z9 K% `" ?1 \+ Y7 D* w) u3 o1 @
nextcloud 设置好后,一些好用的插件便可以放置上了。这里分享一个插件安装的技能:假如在设备界面安装超时,可以手动下载后,解压到 nextcloud 的目录中。以 music 为例:
! ~  G0 J1 j! P" U: ?Music
+ L* M, \2 s/ C4 Y% ]) k在线听音乐必备,可以对音乐文件停止索引
% G# X- N) T2 k# k5 y( w: c1 m* C0 c& y6 a' _' S4 C3 H. _3 q
Camera RAW Previews1 h9 ?# [+ u8 i$ P1 L9 ]
单反/微单用户必备,可以在线阅读 ARW、RAF 等文件格式。留意办事器必须安装 ufraw-batch 软件包才能一般工作。$ |' l) a! |0 G! Y/ z
Preview Generator: y0 V" G5 T4 j3 _) a
离线天生预览工具,导入一大票文件后,经过这个插件可以自动天生缩略图,提升拜候体验。具体利用方式是:
; u7 a. R! F4 z9 {$ B3 z可以手动指定要更新的途径以加速扫描,如 --path kyrios/files/Photos2 @$ k; P) d! J/ r" s1 z/ `
OwnBackup
3 Q% U# {! N" Y2 d1 m将 nextcloud 的数据库表备份到文件
0 H4 G5 A5 ]1 z, E& y五、最初...再来一点人生经历  g& W0 T& y* q/ r; ?1 e$ K
写到这里,根基上便可以用了,下面再分享一些最好理论:6 ?; ^! B% D/ ]' y# I8 A1 [# z$ Q
批量导入文件
! c  v1 z# F, [2 p5 L3 S假如图片或别的文件太多,一张张上传效力太低,我们可以经过文件操纵批量导入进去:
3 O$ [5 v( W2 Q; F1 u; e: H将文件拷贝到 nextcloud 的 files 中,如:
" ?2 C/ k7 i; |. y  P, acp -R /media/usb/xxxx /media/storage/nextcloud/data/kyrios/files/Photos/
, N* h7 q* }4 f; M# [' f' M4 o点窜权限,将刚拷入的文件一切权改成www-data:
5 h: a" j1 U/ G9 V2 W5 [/ x/ uchown -Rwww-data:www-data/media/storage/nextcloud/data/kyrios/files/Photos/7 I7 V6 u# L0 h
点窜文件点窜时候
! z: R3 f+ @0 F8 v* p9 Ynextcloud 经过文件的点窜时候来对文件停止索引,不会读取图片、视频的 EXIF 信息,我们可以用 exiftool 来将文件的点窜时候改成 EXIF 中的建立时候:2 U6 b8 ^: g! x9 R3 a" q% u
exiftool "-FileModifyDate
  r' M' j$ R- e: o  p; \) q' q2 T更新 nextcloud 索引
2 Z" M; c6 F0 hcd /var/www/nextcloud/; sudo -uwww-data ./occ files:scan kyrios; q$ |3 b" ~, p/ q" |
这里 files:scan 号令可以指定用户大概途径,如 kyrios/files/Photos.- E8 r1 k6 E4 M* d
重新天生缩略图. n& L( k( ^2 I. s! ^
如上,不再赘述
回复

使用道具 举报

 
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


关注

粉丝

帖子

排行榜
社区广告

关注微信公众号第一时间推送精彩

官方微信

手机访问

Hao4K影音

专注4k家庭影音,提供家庭影音社区,家庭影音器材库,影音问答平台,影音商城,服务千万家庭影音用户。

本站内容部分由用户自主分享和转载自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

如有侵权、违反国家法律政策行为,请联系我们,我们会第一时间及时清除和处理!

举报反馈邮箱:admin@hao4k.cn

Copyright   ©2019-2020  Hao4K影音粤公网安备 44030302001429号     ( 粤ICP备18155646号-1 )|网站地图