ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Ubuntu中挂载使用nas服务器

2021-10-29 14:33:47  阅读:318  来源: 互联网

标签:samba mount sudo nas Ubuntu 挂载


Ubuntu中挂载使用nas服务器

建好群晖nas后,在Windows上做映射很简单,但在Ubuntu上使用,还是耗费了一些时间。
尝试过如下三种方法:

  1. smb
  2. Ubuntu自带的网络共享-afp
  3. mount

最终选择的方法是mount到本地,读写及用Python代码等直接访问很方便。

1. smb(尝试一,不用)

之前一直用smb在Windows和Ubuntu之间共享数据,所以第一个尝试使用samba连接nas服务器。
结果是可以访问,可以读写,但自己写代码读取数据比较困难,应该是有方法的,但没深究。

1.1 安装samba环境

环境安装参考:Ubuntu 18.04安装Samba服务器及配置

  1. 更新当前软件
sudo apt-get upgrade 
sudo apt-get update 
sudo apt-get dist-upgrade
  1. 安装samba服务器
sudo apt-get install samba samba-common

设置共享文件夹略…

1.2 访问nas

打开文件管理器,在【other locatios】中的【connect to server】中输入nas地址,弹出用户验证框输入用户名及密码即可。

2. Ubuntu自带的网络共享(尝试二,不用)

打开Ubuntu文件管理器,在【other locatios】中的【Networks】列表中即可找到nas共享文件夹,点击在弹出的验证框中输入用户名及密码即可。

3. mount到本地(非常好用)

前边两种方法对于读写来说都很好用,但是我要写代码与nas做数据交互,都比较困难,所以考虑直接mount。但中途又遇到了一些问题,最耗时的就是mount完后,归属与root,在普通用户下只能读,不能写,找了好久才解决。

3.1 安装cifs-utils

sudo apt install cifs-utils

3.2 新建一个目标文件夹

将nas挂载到/mnt/nas下

cd /mnt/
sudo mkdir nas

3.3 执行挂载操作

sudo mount -t cifs -o uid=***,username=***,password=***,iocharset=utf8 nas地址 本地地址

各参数解析如下:

  • uid:最关键,可以指定所有者,解决只能root权限的问题,这里=Ubuntu用户名
  • username:在nas上的用户名
  • password:nas上用户名对应的密码,可以不写,回车后会有密码输入行
  • iocharset:路径中如有中文则添加此项,支持中文路径
  • nas地址:如"//192.168.0.1/share"
  • 本地地址:如"/mnt/nas"

3.4 设置开机自动挂载

sudo vim /etc/fstab

添加一行信息

nas地址 本地挂载地址 cifs uid=***,username=***,password=***,iocharset=utf8 0 0

保存退出后,输入

sudo mount -a

可以看到,已经挂载成功。

3.5 配置/etc/fstab后还不能开机自动挂载的解决方法

一般不需要进行此项配置,在执行3.4后,重启后不自动挂载,可以执行此操作。

  1. 开启服务
systemctl start remote-fs.target
systemctl enable remote-fs.target
  1. 提升用户权限为root和sudo
sudo vi /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults	env_reset
Defaults	mail_badpass
Defaults	secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root	ALL=(ALL:ALL) ALL
# add user
[username] ALL=(ALL:ALL) ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo	ALL=(ALL:ALL) ALL
# add user
[username] ALL=(ALL:ALL) NOPASSWD:ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d

添加两处[# add user],[username]为当前Ubuntu用户名称。

  1. 开机执行命令
cd && vi .bashrc

在最后一行加入下面命令

sudo mount -a

保存退出。

标签:samba,mount,sudo,nas,Ubuntu,挂载
来源: https://blog.csdn.net/ShareProgress/article/details/121033909

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有