一、目标
通过Windows 10系统访问Linux服务器的共享文件夹,可将Linux服务器的文件夹映射到Windows 10系统,实现在Windows 10系统方便的读、写Linux服务器的文件夹和文件。
二、需要的条件
1、安装有Ubuntu或者是CentOS *** 作系统的服务器。
2、Windows 10和Linux服务器处于同一个局域网内。
三、实现步骤
1、在Linux服务器安装Samba服务软件,安装命令如下:
Ubuntu系统:
sudo apt update
sudo apt install samba -y
CentOS系统:
yum install samba -y
安装完成后,可运行命令 whereis samba 检查是否安装成果,以下应该是它的输出:
samba: /usr/sbin/samba /usr/lib/samba /etc/samba /usr/share/samba /usr/share/man/man7/samba.7.gz /usr/share/man/man8/samba.8.gz
2、在Linux服务器设置用于共享的文件夹
新建一个目录:
mkdir /home/ /sambashare/
编辑配置文件 /etc/samba/smb.conf 设置共享目录,如下所示:
sudo vim /etc/samba/smb.conf
[sambashare]
comment = Samba on Ubuntu
path = /home/username/sambashare
read only = no
browsable = yes
3、设置用户账号并连接共享文件夹
由于 Samba 不使用系统账户密码,我们需要为我们的用户账户设置一个 Samba 密码:
sudo smbpasswd -a username
在Windows 10 系统连接共享文件夹,在资源管理器里输入:
ip-addresssambashare
注:ip-address是 Samba 服务器的 IP 地址,sambashare是共享的名称。
四、参考资料
https://ubuntu.com/tutorials/install-and-configure-samba#1-overview。
笔者最近经常需要在windows和树莓派之前来回拷贝文件,最开始是使用U盘,然后使用VNC自带的文件传输工具,支持来回传输文件。也有一些SSH工具支持传递文件,但是频繁拷贝来说确实繁琐了些。windows的开发平台和工具用起来更加的和谐友好,比如写php文件,笔者一般在windows写好再上传到服务器,传递也很耗时间。最近闲逛才知道可以linux可以挂载windows共享目录,孤陋寡闻的认为只能挂载硬盘、U盘等。那我们开始吧。
1、在linux下要挂载windows的共享文件,需要安装cifs-utils软件包。
dpkg -l|grep cifs-utils可以查看是否安装了这个软件包,which mount.cifs可以查看这个软件包安装在哪里。sudo apt-get install cifs-utils可以安装软件包。
2、建立一个目录用来作挂载点。
笔者准备将共享目录挂载在mnt目录下,在mnt目录下建立share目录,sudo mkdir share 。
3、window共享share文件夹
文件夹上右键属性,设置共享属性。
4、挂载 *** 作
sudo mount -t cifs -o username=Administrator,password=123456 //192.168.31.33/share /mnt/share。
192.168.31.33为windows的IP地址,Administrator为windows的用户名,123456为用户密码。在测试时,笔者不会不设置密码会出现告警,“mount error(13): Permission denied;Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)“,设置windows的用户名密码后才能挂载成功。还有注意用户名Administrator第一个字母有可能是是大写的,所以一定要对应好用户名。
5、测试大功告成
在windows新建修改文件,在linux可以自由查看,修改就需要root权限了。
6、取消挂载
sudo umount /mnt/share 。当然,重启linux后挂载自动会取消。需要重新挂载。
7、脚本控制来挂载共享文件夹
为了方便起见,在开启linux后需要重新挂载共享文件夹,这一串命令可要让人头疼了,那么脚本来帮助!执行效果如下。如果挂载路径不一样,可要修改脚本用参数定位到新路径,那笔者就不尝试了。$? 执行上一个指令的返回值 ,显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误。
欢迎取用:
在Linux中设置共享目录,需要使用samba服务,流程如下:
1.是否安装了samba服务
sudo apt-get install sambasudo apt-get install smbfs
2.创建需要共享的目录/ home/usr/share
#在目录/home/xxxx/share xxx为用户名mkdir share
3.修改该目录权限
chmod 777 share4.备份并编辑smb.conf允许网络用户访问
Sudo cp /etc/samba/smb.conf /etc/samba/smb.confSudo gedit /etc/samba/smb.conf#搜索security=user
#加入
security = user
username map = /etc/samba/sambausers
#文件最后加入:允许访问用户为 user1 贡献目录/home/xxxxx/share
[Share]
comment = Share Folder with username and password
path = /home/xxxx/share
public = yes
writable = yes
vaild users = user1
create mask = 0700
directory mask =0700
force user = nobody
force group = nogroup
available = yes
browerable = yes
#防止显示中文出现乱码
#在global workgroup=MSHOME改为WORKGROUP增加
display charset = UTF-8
unix charset = UTF-6
dos charset = cp936
5.增加网络访问用户user1 /删除用户 sudo userdel – r user1
sudo useradd user1#该用户将只能从远程访问,不能从本机登录。而且samba的登录密码能和本机登录密码不相同。
6.目前要新增网络使用者的帐号:
sudo smbpasswd -a user1sudo gedit /etc/samba/smbusers
7.在新建立的文件内加入下面这一行并保存
user1 = "network username"8.需要更改newsfan的网络访问密码,也用这个命令更改
sudo smbpasswd -a user19.删除网络使用者的帐号的命令把上面的 -a 改成 -x
sudo testparmsudo /etc/init.d/samba restart
10.最后退出重新登录或重新启动一下机器,在linux终端中查询ip
ifconfig -a#ip为192.168.128.128
11.然后在window运行\\192.168.128.128 访问share 用户名为user1 密码输入已设置的密码。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)