家庭服务器构建|如何基于Linux实现文件的共享服务?

2018-07-12 07:01:25 70点赞 842收藏 59评论

我的第一篇原创是关于如何在Linux环境下搭建私有云(owncloud),得到了很多值友的打赏,让我也有了接下来的分享动力。跳转链接:

专业的事情让专业的设备来做,比如说用Own Cloud私有云搭建Linux家庭服务器!小编注:此篇文章来自#原创新人#活动,成功参与活动将获得额外200金币奖励。详细活动规则,请猛戳此链接!前言以前我在某原创中一句“专业的事情让专业的设备来做”得到了很多值友的赞同,我也很想把我自己家中的网络布局方案分享一下,可是一没时间,二来设备也实在都是些性价比高的廉价货,实在是拿不出手。设备不行kaaye| 94 评论74 收藏786查看详情

很显然作为家庭服务器,不仅仅是提供私有云文件服务,我们还需要在局域网内更方便的在各个设备间共享文件,比如windows桌面,比如蓝光播放器,比如从外网上传回家等等,虽然owncloud也能完成内外网的文件上传,但是毕竟不如FTP简单直接。当然,这些最基本的服务在Linux服务器下也是需要安装配置的。接下来的分享希望能给一些Linux入门值友一些帮助。

SAMBA篇

可能很多值友对SAMBA这个名称很陌生,但是我相信绝大部分值友其实都有用到。因为windows的网上邻居背后使用的就是NetBIOS和SMB协议。我这里就不科普SMB协议,SAMBA服务器和客户端这些基础名词了,您只需要知道安装好这个协议,我们的Linux服务器就可以作为一个网络共享文件夹给笔记本或者其他支持SAMBA客户端的设备提供文件服务就行了。

yum install -y samba //安装samba服务器

yum install -y samba-client //安装samba客户端 (本地测试连接用的)

备份配置文件

mv /etc/samba/smb.conf /etc/samba/smb.conf.bak

vi /etc/samba/smb.conf

直接创建一个新文件,复制以下配置信息:

[global]

workgroup =MYGROUP

netbios name =Homeserver

server string =Samba Server Version %v

log file =/var/log/samba/log.%m

max log size =50

security = user

passdb backend= smbpasswd

[Share]

comment =Public Stuff

path = /share

available = yes

writable =yes

browseable =yes

public = yes

write list =+staff

如果你要共享多个文件夹,可以按照[Share]的格式在后面继续添加即可,只需要修改path路径。

重启smb服务:

systemctl restart smb.service

smbpasswd–a root #添加SMB用户

添加一个用户添加一个用户

[root@localhost/]# smbclient -L localhost -U root 本地测试通过

家庭服务器构建|如何基于Linux实现文件的共享服务?

通过windows桌面局域网测试共享文件夹是否OK,输入账号密码,测试通过。

Win+R输入服务器IP地址Win+R输入服务器IP地址

Share共享文件夹Share共享文件夹

NFS篇

由于很多蓝光播放器都支持NFS,因此这里也把NFS共享的方法介绍一下。

(蓝光播放器在添加SAMBA服务器的时候用遥控器输入账号密码是件超级麻烦的事情,并且SAMBA传输效率不及NFS,我曾在100Mb的网络上做过蓝光原盘播放测试,SAMBA却无法达到播放原盘的要求,NFS却没有问题)

yum-y install nfs-utils rpcbind

vi/etc/exports //添加以下即可(默认192.168.2.0网段内所有IP都可以访问)

/share192.168.2.0/24(insecure,rw,sync)

启动服务

startrpcbind.service

start nfs.service

设置开机启动

chkconfigrpcbind on

chkconfignfs on

如果有蓝光播放器就直接测试搜索NFS服务器,没有的话可以在windows下安装一个NFS客户端。打开我的电脑,应该可以看到新挂载的网络驱动器

挂载NFS网络共享硬盘挂载NFS网络共享硬盘

FTP篇

FTP服务可以很方便的在自己的设备上和家里的服务器之间做文件复制。其实现在我用的也很少了,毕竟用owncloud也能满足这种需求,只有在一些大文件复制的时候我才会用到。这个服务配置比较复杂,大家一定要注意拼写错误问题,这个问题困扰过很多次。

yum install vsftpd

开启ftp服务

systemctl start vsftpd.service

默认是允许匿名登录的,直接通过网页输入地址验证服务状态是否正常。

默认支持匿名登录默认支持匿名登录

安装超级简单,但是这个FTP允许匿名太不安全了,为了系统安全,为FTP创建虚拟用户,并指定目录。

第一步,修改/etc下的vsftpd.conf文件

先备份文件

mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak

原来的文件里注释内容太多了,我们新建一个吧。

anonymous_enable=NO

local_enable=YES

write_enable=YES

local_umask=022

dirmessage_enable=YES

xferlog_enable=YES

connect_from_port_20=YES

xferlog_std_format=YES

listen=NO

listen_ipv6=YES

pam_service_name=vsftpd

userlist_enable=YES

tcp_wrappers=YES

anon_world_readable_only=NO

anon_mkdir_write_enable=YES

anon_upload_enable=YES

anon_other_write_enable=YES

virtual_use_local_privs=YES

guest_enable=YES

guest_username=vuser

user_sub_token=$USER

local_root=/share/ftp/$USER

chroot_local_user=YES

hide_ids=YES

allow_writeable_chroot=YES

上面加粗字体部分可以根据实际情况进行修改。

在/etc/vsftpd目录下创建一个虚拟用户密码文档

vi /etc/vsftpd/vuser.txt

奇数行为账号名,偶数行为密码,我这里只创建了一个test用户,密码password

test

password

:wq保存退出

通过db_load命令生成密码数据库

db_load -T -t hash -f /etc/vsftpd/vuser.txt/etc/vsftpd/vuser.db

chmod 600 /etc/vsftpd/vuser.db

然后txt文件就可以删除了,保留也无所谓。

修改/etc/pam.d/vsftpd文件,将原有内容注释掉,删除也行。添加最后两行

auth required /lib64/security/pam_userdb.sodb=/etc/vsftpd/vuser

account required/lib64/security/pam_userdb.so db=/etc/vsftpd/vuser

:wq保存退出

mkdir -p /share/ftp/test //很重要,不然可能会出现登录500 OOPS报错

创建虚拟用户vuser

useradd -d /share/ftp -s /sbin/nologinvuser

忽略目录已存在的警告

为vuser添加访问权限

[root@localhost share]# chown -Rvuser:vuser /share/ftp

重启服务

systemctl restart vsftpd.service

这时候就可以通过test password登录了,创建一个文件夹测试权限。OK

测试新建文件夹测试新建文件夹

基于Linux的文件共享服务就分享到这里了,希望对大家有所帮助,谢谢!


展开 收起

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

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

1749元起

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

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

2499元起

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

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

1849元起

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)黑色

2599元起

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

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

2849元起

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

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

3199元起

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

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

1349元起

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

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

2799元起

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

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

2179元起

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元起

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

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

1299元起

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

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

387.78元起
59评论

  • 精彩
  • 最新
  • 家庭用windows共享文件夹多省心。你这费半天劲也就开个samba服务,对于普通用户一点意义都没有,搞不好还要被selinux、权限、iptable搞死。

    校验提示文案

    提交
    linux远程管理方便很多,占用资源也少,硬件成本低,可玩性比windows高出一大截,比如owncloud在windows下就无法实现。

    校验提示文案

    提交
    论管理,win有power shell,有rdp,对应linux的ssh,vnc,有多大差别?论资源,windows core一样可以很省资源。可玩性就更没的比了,windows下有大量多媒体应用适合家庭使用,例如kodi,powerdvd满足不同需求,完全可以用一台机器来实现。实在不够用,爱折腾的你还可以考虑,docker on Windows, wsl(windows subsystem for Linux), 甚至hyperv再虚个coreos什么的,也任君选择。还有哪些owncloud能实现而windows无法实现的?虽然我也不喜欢windows,但是一句话,家庭用,没必要。

    校验提示文案

    提交
    还有3条回复
    收起所有回复
  • 我分享下我的经验吧,centos+zfs+iscsi共享给windows,共享盘格式化为ntfs,又有zfs的功能又能享受windows的everything快速搜索功能

    校验提示文案

    提交
    家里用iscsi真没必要,这种独占不如直接挂个移动硬盘!

    校验提示文案

    提交
    看清楚啊,不是普通的iscsi,我的iscsi是使用zfs创建的块设备,底层有zfs做保障

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 这也能晒? 我还以为能实现啥功能,就这几个服务300块的路由器也能做得比他好

    校验提示文案

    提交
    你可以看我另一篇私有云盘作文,我认为路由器就该做路由器的事情,做NAS还是用专门的设备比较好。

    校验提示文案

    提交
    收起所有回复
  • linux类太鸡肋了,看不懂的光看命令只会一头雾水,看得懂想知道的也不是命令,而是异常情况怎么处理。

    校验提示文案

    提交
    我这个是完全实践的流程,如果按照我的方法出问题,我可以答复。

    校验提示文案

    提交
    感觉没必要答复。

    校验提示文案

    提交
    收起所有回复
  • FTP非常的吃CPU,尤其是多线程(比如FileZilla10个文件同时下载)的时候,只要220Mbps的速度就足够吃掉整整一个核心的资源。要上千兆恐怕一个四核处理器就废了。

    校验提示文案

    提交
    自家带宽又不限速,为何要多线程下载呢?

    校验提示文案

    提交
    因为我会有大量小文件的传输需求,单线程的话太慢,经常连100M都跑不满,只能多开几个提高速度

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • nfs太坑了,情愿用ftp。

    校验提示文案

    提交
    请把故事说出来让大家开心一下哈

    校验提示文案

    提交
    收起所有回复
  • 文件管理器 的快捷提示 用的什么工具?

    校验提示文案

    提交
    我好像没有第三方工具,能具体点吗?

    校验提示文案

    提交
    文章第五张图片的字符提示 是按了alt键的结果

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 道理我都懂,为啥不用黑裙

    校验提示文案

    提交
    马上转白了一黑一白

    校验提示文案

    提交
    搞黑群也累!担黑群是正解!每个人需求不尽相同,每个人环境也不尽相同!我有个小服务一直开着esxi,上面跑win7,想在上面弄黑群,死活不能直通硬盘!不直通硬盘有啥用呢?

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 整理的很清晰,只是nfs部分的chkconfig命令少了空格,估计复制粘贴的初级用户会卡在那吧,题主辛苦了

    校验提示文案

    提交
    话说都systemctl了,还用个咩chkconfig

    校验提示文案

    提交
    收起所有回复
  • samba共享服务有个严重的缺点!!无法使用everything快速搜索

    校验提示文案

    提交
  • 推荐鸟哥学linux

    校验提示文案

    提交
  • 随便一个nas系统,不是比这个方便强大的多,freenas,nas4free,omv,还有国产的也不错

    校验提示文案

    提交
  • 这不是红帽初级考试题目吗 [观察]

    校验提示文案

    提交
  • 想学linux的自己搭个nas, samba玩挺好的

    校验提示文案

    提交
  • 都急于Linux了为啥不直接上openmediavault?

    校验提示文案

    提交
  • 写的还行 做为懂linux的人搭起来不难 但是没有群晖的界面方便 写个界面也麻烦

    校验提示文案

    提交
  • 太专业,看不懂

    校验提示文案

    提交
  • 如果学Linux要这么难,我要没有动力学了。如果是为了便于操作安装了带界面的版本该怎么操作?

    校验提示文案

    提交
    如果这也叫难。。那么真学linux你肯定是要昏死过去的。。所以放弃把。。

    校验提示文案

    提交
    这还难,这最多算九年义务教育小学版

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 家用还是推荐群晖,黑白都行

    校验提示文案

    提交
  • 为什么不上omv?这样啥功能都有了

    校验提示文案

    提交
提示信息

取消
确认
评论举报

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

相关文章推荐

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