编程教育资源分享平台

网站首页 > 后端开发 正文

Linux 、windows相互共享磁盘或文件夹

luoriw 2024-02-01 14:24:35 后端开发 11 ℃ 0 评论

Linux 、windows相互共享磁盘或文件夹

磁盘、目录共享、挂载一般使用iSCSI、smb、NFS、NAS、NSA等服务方式向客户端提供服务。如下等。。

① 存储,为各服务器提供磁盘或目录(客户端为windows server ,centos、Redhat等服务器)

② windows 作为服务器,设立共享文件夹,外部系统作为客户端访问服务器的共享文件夹(外部设备可以是windows系统,linux 系统,macOS系统,ipad,iphone ,Android电视等)

③ linux作为服务器,设立共享目录,其他外部系统访问、挂载共享目录(外部系统可为linux、windows、macOS 等)

一、windows smb共享,linux挂载

通过SMB协议可以实现主设备共享文件夹,及外部设备访问共享文件夹。

外部设备可以是windows系统,linux 系统,macOS系统,ipad,iphone ,Android电视等。

1:[windows]开启SMB协议

方法一:打开控制面板---程序---添加windows 功能。安装SMB/CIFS文件共享支持,安装完重启计算机。

2:[windows]创建新的用户账号

目的:该用户账号是其他设备后续登录并查看共享文件需要使用的。

打开控制面板->点击“用户账户”->点击“管理其他账户”

3:[windows]共享文件夹

属性-共享-共享-选择要共享的账号

找到你想要共享的文件夹,右键属性,点击“共享”选项卡,再点下面的“共享”按钮

然后将刚刚创建的新的用户账号添加进去,并且可以修改用户权限为“读取”或者“读取/写入”,然后点击共享,再点击完成。

属性-共享-高级共享

对共享的文件夹,右键属性,点击“共享”选项卡,再点击“高级共享”,设置共享账号的权限。

4、[windows]查看共享文件的主机在局域网内的IP地址

windows系统在命令行输入ipconfig查看ip地址

5、[ipad]打开文件,连接主设备(服务器)

首先必须确保ipad和主设备在同一个局域网内。
然后在ipad中打开文件,点击”连接服务器“

在连接服务器中输入smb://步骤4得到的IP地址(如果外部设备是windows系统,则不需要带smb),并点击连接

6、[linux]挂载共享文件夹

yum install cifs-utils #安装cifs工具包,cifs是liunx上的smb服务的客户端。

创建被挂载的目录:

mkdir windows

共享文件夹挂载到windows文件夹

mount -t cifs -o username=ankar,password=123456,vers=1.0,sec=ntlm //192.168.133.1/share windows

vi /etc/fstab #添加以下内容让操作系统启动后自动挂载windows机器上的共享文件夹到挂载点,/etc/.smbpasswd中写用户smb服务用户名密码

//192.168.133.1/share /data/windows cifs rw,credentials=/etc/.smbpasswd 0 0

mount -a #(让系统重新挂载所有在/etc/fstab文件里面定义的挂载点)


二、linux nfs共享,windows 挂载

1、Linux安装nfs服务,并配置/etc/exports,设置要共享的目录,共享给哪些主机,及相关配置。

开启NFS服务,防火墙相关配置。

rxportfs -r 刷新共享配置。

rxportfs -v 查看恭喜配置

exportfs命令:

功能说明 :NFS共享管理

server上执行此命令时,读取/etc/exports中的信息,并将有关的directories(或filesystems)分享给NFS clients.

语法格式
exportfs [必要参数][选择参数][目录]
功能描述
exportfs 命令:用于管理NFS(Network File System)文件系统,在不直接编辑/etc/exports文件的情况下,可用exportfs来操作 命令属性 磁盘管理 命令属权限 超级用户 普通用户
-a 递增式更新,对/etc/exports 增加或修改的部分进行挂载和卸载
-i<文件> 指定配置文件
-r 更新配置,重新读取/etc/exports
-u 卸载指定目录
-o 使用指定参数
-v 显示共享详细情况


【NFS共享的常用参数】/etc/exports

ro 只读访问
rw 读写访问
sync 所有数据在请求时写入共享
async NFS在写入数据前可以相应请求
secure NFS通过1024以下的安全TCP/IP端口发送
insecure NFS通过1024以上的端口发送
wdelay 如果多个用户要写入NFS目录,则归组写入(默认)
no_wdelay 如果多个用户要写入NFS目录,则立即写入,当使用async时,无需此设置。
hide 在NFS共享目录中不共享其子目录
no_hide 共享NFS目录的子目录
subtree_check 如果共享/usr/bin之类的子目录时,强制NFS检查父目录的权限(默认)
no_subtree_check 和上面相对,不检查父目录权限
all_squash 共享文件的UID和GID映射匿名用户anonymous,适合公用目录。
no_all_squash 保留共享文件的UID和GID(默认)
root_squash root用户的所有请求映射成如anonymous用户一样的权限(默认)
no_root_squash root用户具有根目录的完全管理访问权限
anonuid=xxx 指定NFS服务器/etc/passwd文件中匿名用户的UID
anongid=xxx 指定NFS服务器/etc/passwd文件中匿名用户的GID

2、在Windows系统中,首先需要开启NFS服务。打开控制面板,选择“程序”,再选择“打开或关闭Windows功能”。在Windows功能界面中,找到“适用于NFS的文件服务”选项,并勾选之。点击“确定”按钮,等待系统安装NFS服务。

在此电脑上添加网络映射共享磁盘。


需要读写权限的需要修改注册表
通过修改注册表将windows访问NFS时的UID和GID改成0即可,步骤如下
1、在运行中输入regedit,打开注册表编辑器;
2、进入HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default条目;
3、选择新建----QWORD值,新建AnonymousUid,AnonymousGid两个值,值为0;
4、
重启电脑 注册表才会生效;重启后修改共享目录读写属性。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表
最新留言