1. 前言
本文主要讲解如何在Linux系统上访问Windows共享文件夹,即Windows为共享服务器,Linux为客户端,客户端读取服务器的目录。以CentOS系统为例,使用samba-client客户端,其他Linux发行版的配置大同小异,同样可以作为参考标准。
如果是反过来,即Linux为共享服务器,Windows系统读取Linux的共享文件夹,即Windows系统为客户端,请跳转到本站这篇文章。
Linux与Windows怎样共享文件夹
2. 安装samba命令行客户端
默认情况,绝大部分的Linux发行版并没有集成samba客户端,需要额外安装。
CentOS安装samba命令行客户端
[root@centos7 ~]# yum -y install samba-client
ubuntu安装samba命令行客户端
ocr@zcwyou:~# sudo apt install -y smbclient
看到下图表示安装成功:
安装samba命令行客户端
3. 使用samba命令行客户端测试连接
假设用户名为user01,远程服务器IP为172.16.87.137
[root@centos6 ~]# smbclient -L 172.16.87.137 -U user01
按提示输入密码:
Enter user01's password:
输入正确密码后,可以看到共享的信息
#
Domain=[SAMBA] OS=[Windows 6.1] Server=[Samba 4.8.3]
Sharename Type Comment
IPC IPC Service (Samba 4.8.3)
xingzheng Disk Home Directories
Domain=[SAMBA] OS=[Windows 6.1] Server=[Samba 4.8.3]
Server Comment
CENTOS7 Samba 4.8.3
Workgroup Master
SAMBA CENTOS7
#
以上输出信息表示共享目录连接测试成功, 密码正确。
4. 准备好本地的挂载点
[root@centos6 ~]# mkdir -p /mnt/samba/xingzheng
5. 临时连接共享服务器
本实例使用的用户名为user01,密码为password123,共享目录路径为//172.16.87.137/xingzheng,本地挂载目录为/mnt/samba/xingzheng
[root@centos6 ~]# mount -t cifs -o user=user01,password=password123 //172.16.87.137/xingzheng /mnt/samba/xingzheng
如果没有任何提示表示连接正常。
检查挂载点目录的文件:
[root@centos6 ~]# ll /mnt/samba/xingzheng/
以下是执行结果:
总用量 0
-rwxr-xr-x. 1 root root 0 12月 22 22:25 001.txt
6. 向远程共享服务器写入文件
尝试创建一个文件,createbysmbclient.txt
[root@centos6 ~]# touch /mnt/samba/xingzheng/createbysmbclient.txt
应该不会有提示,没有报错
验证:
[root@centos6 ~]# ll /mnt/samba/xingzheng/
可以看到目录里确实有一个createbysmbclient.txt文件。
-rwxr-xr-x. 1 root root 0 12月 22 22:25 001.txt
-rwxr-xr-x. 1 root root 0 12月 24 00:39 createbysmbclient.txt
登录到共享服务器(可能是一台Linux,也可能是一台Windows系统)查看是否已经存在一个createbysmbclient.txt文件。
7. 卸载文件系统
当不再使用时,可以考虑卸载远程文件系统
[root@centos6 ~]# umount /mnt/samba/xingzheng/
8. 开机自动挂载远程共享
[root@centos6 ~]# vi /etc/fstab
在配置文件最后加入以下内容,用于下次开机自动挂载目录。
//172.16.87.137/xingzheng /mnt/samba/xingzheng/ cifs username=user01,password=password123,soft,rw 0 0
开机自动挂载远程共享目录
以上配置是下次开机时自动读取。
如果要马上生效,使用以下命令马上重新加载/etc/fstab配置文件。
[root@centos6 ~]# mount -a