专业的事情让专业的设备来做,比如说用Own Cloud私有云搭建Linux家庭服务器!

2018-06-27 20:25:15 107点赞 857收藏 81评论
  • 前言

以前我在某原创中一句“专业的事情让专业的设备来做”得到了很多值友的赞同,我也很想把我自己家中的网络布局方案分享一下,可是一没时间,二来设备也实在都是些性价比高的廉价货,实在是拿不出手。设备不行,手艺来顶吧。接下来我会通过超详细的命令行及截图步骤告诉你如何用最少的money搭建一个性能足够的Linux家庭服务器

硬件选型

本文出现的目的其实是希望大家能把家里的老旧硬件利用起来,因此硬件配置根本不是事,当然土豪完全可以参考张大妈里的一篇原创选型。专业的事情让专业的设备来做,比如说用Own Cloud私有云搭建Linux家庭服务器! 传送门:

浅谈家庭NAS的组装与应用 篇一:硬件选购篇追加修改(2015-08-0315:50:47):这篇帖子发布出来之后,收到了值友们的许多评论,感谢值友们的热心回复。对于部分评论中提出的问题,我在此一并做出回复。关于这篇文章我写的这篇文章的目的是分享知识,我认为只要有人从这篇文章中获得了他之前所没有了解到的知识,那么这篇文章就是有意义的。从这篇文scottwong| 2k 评论1k 收藏12k查看详情


作为一个穷逼,我自己选择了利旧库存,以前组装的一台HTPC被用来搭建这个平台

机箱:立人E-T3 Thin-ITX机箱

主板:APU E-350 DC输入主板

CPU:主板集成

内存:4GB DDR3 SO-DIMM

硬盘:128GB mSATA(SANDISK)

硬盘2:东芝2TB 2.5英寸 5400转128M 9.5mm SATA 笔记本硬盘

JD 6.18购入(作为PT下载的硬盘还是选JD靠谱一点)

立人Thin-ITX机箱立人Thin-ITX机箱

主板安装示意图主板安装示意图


硬件选型依据:

1、我希望体积越小越好,随便扔在那个角落都行,因此选择了最便宜的Thin-ITX机箱

2、CPU没有要求,但是必须千兆网卡,我是利旧了以前HTPC的一块AMD E-350的工控主板

3、我有私有同步盘和PT下载两种需求,数据安全性要求不同。因此选择了128GB mSATA SSD+ 2TB 2.5英寸机械盘。SSD里保留100G空间出来放owncloud数据,2TB 机械盘就用来PT,坏了也不影响重要数据。

操作系统安装

首先为了最大化利用硬件资源,我选择Linux并且是只安装需要的组件。CentOS作为RedHat的开源版本,驱动已经网上的相关文章都比较多,成为了我的首选。

下载地址:


推荐下载everything版本,有备无患。然后就是写入U盘,制作安装盘了,制作工具有很多,比如Etcher、UltraISO等工具,这里就不一一介绍了。

为了方便截图,我这里用了我的ESXi服务器进行了虚拟机演示操作。2GB内存+128G+500GB模拟,配置如下:

ESXi模拟双硬盘配置ESXi模拟双硬盘配置

启动界面启动界面

选择安装位置2选择安装位置2

这里要选择我要配置分区,因为分区比较重要,后期要改很麻烦。

分区方案分区方案

我把/根分区减小到20GB,/home分区增加到100GB,因为我准备owncloud数据放在/home分区。owncloud私有云主要用来放置笔记本与其他电脑之间的同步数据,不需要也不建议同步大量数据,100GB足够用了。

选择最小安装并配置网络和主机名选择最小安装并配置网络和主机名

选择最小安装,这样没有图形界面,也不会安装多余的软件包,并且加快安装速度。

网卡信息配置网卡信息配置

最好在安装前配置好网卡,不然系统安装完成后还要通过命令行配置,比较麻烦。

开始安装的同时可以配置root密码开始安装的同时可以配置root密码

安装完成安装完成

大约8分钟后安装完成,嗯!最小安装就是这么快。重启进入命令行模式。

Login interfaceLogin interface

如果网络正常了,这个机器就可以告别显示器和键鼠了,随便找个可以联网的角落一丢就OK了。

根据习惯选择命令行工具,我这里选择了最简单的putty来进行操作。

专业的事情让专业的设备来做,比如说用Own Cloud私有云搭建Linux家庭服务器!

下载putty工具

当然你也可以下载别的命令行工具进行服务器的连接操作。

由于我们的系统都是最小安装,在安装完成后还需要更新并下载一些工具以方便后续操作。

安装相关工具包和yum源,

后面的都是干货,准备好复制粘贴大法

yum -y install net-tools.x86_64 //安装网络工具包

yum -y install wget //安装wget命令(最小安装居然没这个)

添加yum源:

yum -y install epel-release

cp/etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

cd/etc/yum.repos.d/

wgethttp://mirrors.163.com/.help/CentOS7-Base-163.repo

yum makecache

yum-y update //时间较长,可选择后期更新

禁用相关安全设置

iptables -F

chkconfig firewalld off

setenforce 0

vi/var/selinux/config (vim小常识:insert键插入模式,ESC退出插入模式,:wq保存退出)

SELINUX=disabled //禁用SELINUX



格式化第二块数据盘并挂载为/share目录

fdisk /dev/sdb

m查看帮助,按g创建gpt分区,再m看帮助,n创建分区

一切按默认三次回车,创建分区完成,m看帮助,w写入table并退出。

mkfs -t ext4 /dev/sdb

mkdir /share

mount /dev/sdb /share

df -h查看分区状态

/share分区挂载没问题/share分区挂载没问题


vi /etc/fstab

在最后加入/dev/sdb ext4 defaults 0 0 让系统启动自动挂载

vi /etc/fstabvi /etc/fstab

准备工作都完成了。

Owncloud私有云安装篇

owncloud需要一个web服务器来支持,这里我选择了php7

安装php7

来复制粘贴吧:

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

yum install php70w.x86_64 php70w-bcmath.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-dba.x86_64 php70w-devel.x86_64 php70w-embedded.x86_64 php70w-enchant.x86_64 php70w-fpm.x86_64 php70w-gd.x86_64 php70w-imap.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64 php70w-mysqlnd.x86_64 php70w-odbc.x86_64 php70w-opcache.x86_64 php70w-pdo.x86_64 php70w-pdo_dblib.x86_64 php70w-pear.noarch php70w-pecl-apcu.x86_64 php70w-pecl-apcu-devel.x86_64 php70w-pecl-imagick.x86_64 php70w-pecl-imagick-devel.x86_64 php70w-pecl-mongodb.x86_64 php70w-pecl-redis.x86_64 php70w-pecl-xdebug.x86_64 php70w-pgsql.x86_64 php70w-xml.x86_64 php70w-xmlrpc.x86_64 nginx php70w-intl -y

安装owncloud

rpm --import https://download.owncloud.org/download/repositories/production/CentOS_7/repodata/repomd.xml.key

wget http://download.owncloud.org/download/repositories/production/CentOS_7/ce:stable.repo -O /etc/yum.repos.d/ce:stable.repo

yum clean all

rm -rf /var/cache/yum

yum install owncloud-files

38MB,几分钟的事情38MB,几分钟的事情

测试及配置篇

开启httpd服务,并设置为开机启动

service httpdstart

chkconfig httpd on

通过http://IP地址/ownccloud已经可以访问到页面了

这里还需要做存储和数据库的配置这里还需要做存储和数据库的配置


系统默认使用SQLite作为数据库,并且不推荐,处女座不能忍。让我们来安装miradb吧。

数据库MariaDB安装

yum -y install mariadb mariadb-server //安装

systemctl start mariadb //启动服务

chkconfig mariadb on //设置为开机启动

mysql -u root mysql //mysql配置模式

UPDATE user SET Password=PASSWORD('newpassword') where USER='root'; //设置root密码为newpassword (注意SQL语句的“;”分号必须输入再回车,另外这里的root和系统root不是一个账号)

创建owncloud数据库创建owncloud数据库

mysql -u root -p 输入newpassword密码

create database owncloud; (再次强调,分号必须输入后再回车)

show databases;(再次强调,分号必须输入后再回车)

在/home目录下创建owncloud数据目录,并赋予php权限

专业的事情让专业的设备来做,比如说用Own Cloud私有云搭建Linux家庭服务器!

mkdir /home/owncloud

chown -R apache:apache /home/owncloud

owncloud 配置页面

回到http://ip/owncloud配置界面

专业的事情让专业的设备来做,比如说用Own Cloud私有云搭建Linux家庭服务器!

安装完成后界面就没有配置模式了,可以直接admin登录

登录界面登录界面

欢迎页有PC/IOS/安卓三种APP下载的地址,后期根据情况下载。

第一次登录,欢迎页的APP下载地址第一次登录,欢迎页的APP下载地址

owncloud优化篇

本来到这里本文就应该结束了,但是作为处女作专业的事情让专业的设备来做,比如说用Own Cloud私有云搭建Linux家庭服务器! ,各种告警提示绝对不能忍。

专业的事情让专业的设备来做,比如说用Own Cloud私有云搭建Linux家庭服务器!


修改计划消除cron告警

这个简单,页面下拉,修改计划任务为cron就可以了。

专业的事情让专业的设备来做,比如说用Own Cloud私有云搭建Linux家庭服务器!

消除内存锁定及缓存设置告警

yum -y install redis //安装redis服务

service redis start //启动redis服务

chkconfig redis on //设置服务开机启动

修改php.ini文件

vi /etc/php.ini (vim小常识2:粘贴内容的时候先进入INS插入模式,否则会丢字符)

专业的事情让专业的设备来做,比如说用Own Cloud私有云搭建Linux家庭服务器!

在END前添加

; Redis php extension

extension=redis.so

修改owncloud配置文件

vi /var/www/html/owncloud/config/config.php

专业的事情让专业的设备来做,比如说用Own Cloud私有云搭建Linux家庭服务器!

在 ); 前添加以下内容

'memcache.local' => 'OCMemcacheRedis',

'redis' => array(

'host' => 'localhost',

'port' => 6379,

),

'memcache.locking' => 'OCMemcacheRedis', //使用Redis来管理事务文件锁定

:wq保存退出后重启httpd服务

service httpd restart

HTTP 警告HTTP 警告

就剩下最后一项https告警了

为owncloud配置https安全连接模式

yum -y install mod_ssl //安装SSL模块

mkdir /etc/ssl/private

chmod 700 /etc/ssl/private

创建证书

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/apache-selfsigned.key -out /etc/ssl/certs/apache-selfsigned.crt

专业的事情让专业的设备来做,比如说用Own Cloud私有云搭建Linux家庭服务器!

手动添加自签名证书到SSL认证里

openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048

cat /etc/ssl/certs/dhparam.pem | sudo tee -a /etc/ssl/certs/apache-selfsigned.crt

修改SSL模块配置文件

vi /etc/httpd/conf.d/ssl.conf

找到相关字段修改服务器名称 (vim小常识3:vi里用斜杠/可以快速查找字段)

找到SSLProtocol 和SSLCipherSuite并用#注释掉

找到SSLCertificateFile 和 SSLCertificateKeyFile字段修改为

SSLCertificateFile /etc/ssl/certs/apache-selfsigned.crt

SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key

修改替换SSL配置文件字段修改替换SSL配置文件字段

在文件最后的VirtualHost后面添加

SSLCipherSuiteEECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH

SSLProtocol All-SSLv2 -SSLv3

SSLHonorCipherOrderOn

Header always setStrict-Transport-Security "max-age=63072000; includeSubdomains"

SSLCompression off

SSLUseStapling on

SSLStaplingCache"shmcb:logs/stapling-cache(150000)"

:wq保存退出

SSL配置文件尾部增加内容SSL配置文件尾部增加内容


重启httpd服务,然后连接网页。

service httpd restart

HTTPS安全连接HTTPS安全连接

所有警告消失所有警告消失

局域网内的owncloud配置已经完美了。

外网访问设置篇

很显然我们的owncloud是需要通过外网访问才有意义。

首先你需要有一个外网IP地址(没有就自己想办法投诉电信,或者找其他的花生壳之类内网穿透工具,此项不在本文讨论范围内)设置一个不常用的https端口号,比如8443,端口映射到内网IP 192.168.2.200的443端口上。

然后编辑owncloud配置文件

vi /var/www/html/owncloud/config/config.php

在0 =>’192.168.2.200’,下面增加一行域名

比如1 =>’kaaye.smzdm.com’,不要漏掉逗号

专业的事情让专业的设备来做,比如说用Own Cloud私有云搭建Linux家庭服务器!

一切都完美了。

不知道什么时候有空还会发文,自认为处女作首秀还是有一定干货的。谨以此文纪念我即将逝去的IBM SystemX 3500M4

SystemX x3500M4SystemX x3500M4


展开 收起

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

1849元起

ZSpace 极空间 私有云 Z4Pro 8G版 4盘位NAS存储(N97、8GB)

ZSpace 极空间 私有云 Z4Pro 8G版 4盘位NAS存储(N97、8GB)

2499元起

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

1749元起

ZSpace 极空间 私有云 Z4Pro 性能版 NAS存储(N305、16GB)

ZSpace 极空间 私有云 Z4Pro 性能版 NAS存储(N305、16GB)

3499元起

UGREEN 绿联 DX4600+ 4盘位NAS(赛扬N5105、8GB)

UGREEN 绿联 DX4600+ 4盘位NAS(赛扬N5105、8GB)

1999元起

ZSpace 极空间 私有云 Z423 旗舰版 8盘位NAS存储(锐龙R7-5825U、64GB)

ZSpace 极空间 私有云 Z423 旗舰版 8盘位NAS存储(锐龙R7-5825U、64GB)

5899元起

QNAP 威联通 TS-464C2 四盘位 NAS网络存储(赛扬N5095、8GB)黑色

QNAP 威联通 TS-464C2 四盘位 NAS网络存储(赛扬N5095、8GB)黑色

2582.5元起

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

2849元起

ZSpace 极空间 私有云 Z4Pro 16G版 4盘位NAS存储(N97、16GB)

ZSpace 极空间 私有云 Z4Pro 16G版 4盘位NAS存储(N97、16GB)

2799元起

QNAP 威联通 TS-466C 四盘位NAS(奔腾N6005、8GB)

QNAP 威联通 TS-466C 四盘位NAS(奔腾N6005、8GB)

3199元起

UGREEN 绿联 DH2600 双盘位NAS (N5105、4GB)

UGREEN 绿联 DH2600 双盘位NAS (N5105、4GB)

1349元起

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

2179元起

ZSpace 极空间 私有云Z2Pro 四核2盘位NAS家庭个人云网络存储服务器手机平板扩容适用iPhone15 水

ZSpace 极空间 私有云Z2Pro 四核2盘位NAS家庭个人云网络存储服务器手机平板扩容适用iPhone15 水

1299元起

TERRAMASTER 铁威马 F4-424 Pro 四盘位NAS(Intel Core i3、32GB)黑色

TERRAMASTER 铁威马 F4-424 Pro 四盘位NAS(Intel Core i3、32GB)黑色

2499元起

ZSpace 极空间 私有云 T2 2盘位NAS存储(RK 3568、4GB)

ZSpace 极空间 私有云 T2 2盘位NAS存储(RK 3568、4GB)

1699元起

sgwbox 拾光坞 N3 星光版V(瑞芯微RK3566,2G,支持docker)

sgwbox 拾光坞 N3 星光版V(瑞芯微RK3566,2G,支持docker)

385.78元起
81评论

  • 精彩
  • 最新
  • 14年的IT工程师表示,身边的同事没有一个自己这么折腾的。
    都是直接买群晖或威联通。
    折腾这些也学不到什么东西,不如学点真正有用的加加薪水。

    校验提示文案

    提交
    嗯嗯,说明你和你的同事都比我年轻。

    校验提示文案

    提交
    同意,白群晖解决一切问题。节省的时间可以做太多事

    校验提示文案

    提交
    还有7条回复
    收起所有回复
  • 用久了之后才发现dropbox是最好的。而且需要同步的东西没那么多。

    校验提示文案

    提交
    数据安全,再说家里本来就需要一个NAS,后续会增加共享下载设置系列

    校验提示文案

    提交
    收起所有回复
  • 太专业了,就想问一下这样弄带来的便利是什么?

    校验提示文案

    提交
    额,其实最大的好处就是能学习到新知识 [观察] 其实我用上owncloud也属于偶然,以前用金山快盘的,木有了,就自己搭了一个。

    校验提示文案

    提交
    收起所有回复
  • 都已经用7了为啥还用service来启动应用?

    校验提示文案

    提交
    额,习惯了,你不觉得service命令好用吗?反正系统会自动转换 [高兴]

    校验提示文案

    提交
    收起所有回复
  • 无视163、阿里云的镜像,你贴个国外的下载地址就算了,还推荐别人下载Everything …… 这玩意大小有近9G,然后真正的系统1G都不到,都是一些90%都用不到的rpm,下载DVD就完全够用了。

    校验提示文案

    提交
    一般netinstall就行。 [高兴]

    校验提示文案

    提交
    额,我推荐下载everything是为了有备无患,就目前来说的确用不到。用IDM哈,很快的!

    校验提示文案

    提交
    还有3条回复
    收起所有回复
  • 你这个太复杂了,适合玩,不适合用。还是群晖好。什么功能都有。用起来不折腾。

    校验提示文案

    提交
    贵且不够灵活

    校验提示文案

    提交
    虚拟机跑软路由,顺便跑个黑群晖,比你单独一nas好多了,还能顺便弄个php。

    校验提示文案

    提交
    收起所有回复
  • 再用nextcloud,其实有个简单安装方法。sudo apt-get install snap
    sudo apt-get install snapd
    sudo snap install nextcloud

    校验提示文案

    提交
    处女座喜欢各种精简系列 [龇牙]

    校验提示文案

    提交
    sudo snap install nextcloud 解决问题,ubuntu我的爱

    校验提示文案

    提交
    收起所有回复
  • 高端,看不懂系列。

    校验提示文案

    提交
    不需要懂,实践后就都懂了

    校验提示文案

    提交
    收起所有回复
  • 一看就很专业,说明挺详细的

    校验提示文案

    提交
    有时间试试,Linux小白也可以的

    校验提示文案

    提交
    收起所有回复
  • 我就直接上个win2008完事

    校验提示文案

    提交
    命令行远程管理太方便了

    校验提示文案

    提交
    收起所有回复
  • owncloud 慢

    校验提示文案

    提交
    不会啊,我觉得和onedrive体验差不多。

    校验提示文案

    提交
    收起所有回复
  • 说实话 自己配花时间不少的 而且综合能力不强的还做不到 还是搞nas 或者wins

    校验提示文案

    提交
    能力可以在学习中提高啊,我这些都是自己东一榔头西一棒子弄出来的,如果不介意控制面板里的告警,其实很简单,甚至可以装一个docker直接从网上拉一个镜像就可以用了。

    校验提示文案

    提交
    收起所有回复
  • 建议:
    要么做个owncloud的docker镜像给大家, 要么直接google搜索"一键 owncloud".
    要贴子重点放在owncloud的用处, 好处和怎么用.

    校验提示文案

    提交
  • 为什么这么复杂的东西都能够分享出来

    校验提示文案

    提交
  • 装FreeNAS啊 里头自带owncloud插件,开箱即用哦,就不需要那么多麻烦事了

    校验提示文案

    提交
  • 太闲了。。。。。 [尴尬]

    校验提示文案

    提交
  • 对于喜欢折腾的人来说还算有乐趣的

    校验提示文案

    提交
  • 这么专业的文章,必须支持,有机会也尝试一下~ [吐舌]

    校验提示文案

    提交
    几行命令,几个配置文件而已,没那么夸张吧

    校验提示文案

    提交
    不不不,像我们不专业Linux折腾者来说最麻烦的就是制作一个靠谱的配置文件。有时候配置出错真的莫名其喵,花了半天功夫不见得能搞好。

    校验提示文案

    提交
    收起所有回复
  • 相当专业,完全看不懂 [喜极而泣] [喜极而泣] ,家里用的win2016,没有图形化界面会觉得很惶恐

    校验提示文案

    提交
  • 点赞👍,为楼主的共享精神点赞👍 另外 你那些命令行空格异常 小白复制了估计不会排错

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
857
扫一下,分享更方便,购买更轻松