
将Nas共享到虚拟局域网内
起因:局域网内有个Nas,但没法安装Docker,不能安装Zerotier;
目的:通过Zerotier创建个虚拟局域网,让Nas被虚拟局域网其它设备使用
做法:
- 把Nas挂载到局域网内的Ubuntu设备上
- Ubuntu上运行Zerotier并加入到虚拟局域网
- Ubuntu上将挂载的目录共享,从而让虚拟局域网内的其它设备访问到这个目录
挂载Nas到ubuntu
目的:把局域网的Nas设备挂载到Ubuntu电脑上
单次挂载
首先在Ubuntu 的 /mnt 目录下新建一个 NAS 挂载目录 nas:
sudo mkdir /mnt/nas
# 下面这个命令是为了共享时,允许匿名直接访问,解决权限问题
sudo chmod 777 /mnt/nas安装 cifs-utils
sudo apt-get install cifs-utils查看用户的 uid 和 gid
id root运行下面的命令,完成单次挂载
sudo mount -t cifs -o uid=root,username=admin,password=xxxx,iocharset=utf8,file_mode=0777,dir_mode=0777 //192.168.6.154/public /mnt/nas/ - uid 选择ubuntu系统上普通用户或root
- username 是nas上的用户名
- password 是nas上的密码
- iocharset=utf8 防止有中文路径
- //192.168.6.154/public 是nas下的public目录
- /mnt/nas/ 挂载到ubuntu的这个目录下
- file_mode=0777,dir_mode=0777 权限全开
开机自动挂载
编辑启动挂载文件 fstab
sudo vim /etc/fstab在文件最后追加一行
# 仅给root用户全部权限
//192.168.6.154/public /mnt/nas/ cifs uid=root,username=admin,password=xxx,iocharset=utf8 0 0
# 下面这行是将权限全部开放
//192.168.6.154/public /mnt/nas cifs uid=root,username=admin,password=xxxx,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0在重启之前,你可以手动测试这个配置是否有效。
首先,卸载之前可能已经手动挂载的共享:
sudo umount /mnt/nas/运行以下命令来挂载所有在/etc/fstab中定义的文件系统:
sudo mount -a如果没有错误提示,说明配置成功。
重启系统,并检查CIFS共享是否自动挂载了。
通过上述步骤,每次系统启动时,CIFS共享就会自动挂载到指定的挂载点。如果遇到问题,检查日志文件(如/var/log/syslog)中的错误信息
Ubuntu上运行Zerotier
参考早前的一篇文章
Ubuntu共享文件
ubuntu共享其目录给局域网内的其它设备
这里注意下,如果使用了下面的方法,就不要在“桌面版”上进行操作了(对某个目录右键,选择局域网共享,设置名字之类的),容易冲突
通过 Samba 共享目录
安装samba
sudo apt install samba编辑 Samba 配置文件:
sudo vim /etc/samba/smb.conf在文件末尾添加以下内容:
[nas]
path = /mnt/nas
browseable = yes
read only = no
guest ok = yes
force user = nobody
create mask = 0777
directory mask = 0777重启 Samba 服务
每次修改配置文件后,都需要重启 Samba 服务以使更改生效:
sudo systemctl restart smbd测试 Samba 共享
你现在可以从其他计算机访问共享目录。比如在 Windows 上,通过文件资源管理器访问:
(可以从物理局域网内进行访问,也可以直接使用虚拟ip进行访问)
\\your_ubuntu_ip\nas在 Linux 上,可以使用以下命令挂载共享目录:
sudo mount -t cifs //your_ubuntu_ip/nas /path/to/mount -o guest- 文章作者:
- Lthero博客
- 版权声明:
- 本博客所有文章除特别声明外,均采用CC BY-NC-SA 4.0许可协议。转载请注明来自 Lthero博客!




