局域网内Linux主机传输文件到windows主机(mount挂载方法)

最近遇到程序代码在windows, 用到的数据在linux的问题,想着让linux把数据传到windows上,使用了Linux使用mount挂载Windows共享文件夹。

1.在windows主机上添加共享文件夹

,右键选择属性
![在这里插入图片描述](https://img-blog.csdnimg.cn/6d546713ecc74c2199c215f8bcfc52f2.png)
在共享页面选择高级共享
![在这里插入图片描述](https://img-blog.csdnimg.cn/839ca62dfc764647830d1f125169fa08.png)
勾选共享此文件夹,并设置权限
![在这里插入图片描述](https://img-blog.csdnimg.cn/ea703c0b4a1f4d36985de4ffc5adc07c.png)
共享设定完成后,客户端访问共享文件夹
Windows系统直接使用
\IP的方式访问即可
在这里插入图片描述
或者用net share,在windows上打开命令面板,查看共享
在这里插入图片描述

2.linux主机上利用 mount 命令进行挂载

例如,我想将windows的192.168.5.59的datasets目录挂载到linux的192.168.5.74的 /opt/xxx/data/adc_datasets 目录:

mkdir adc_datasets
sudo mount -t cifs -o username=xxx,password=xxxxxx,gid=1000,uid=1000,dir_mode=0777,file_mode=0777 //192.168.5.79/datasets /opt/xxx/data/adc_datasets 

属性中的

  • username、password是windows主机的登录账号和密码
  • gid、uid 是你想要让挂载属于哪个用户的gid和uid。至于这个gid和uid,你可以使用id username 来获得,其中 username是linux上的用户名。比如说我的xxx,用户获得的gid和uid就是1000;
  • ** dir_mode、file_mode用于设定挂载目录的读写权限。** 如果不添加这两个参数,会在挂载成功之后在Linux中发现可以访问挂载目录,但不能修改。同时使用ls -l adc_datasets 会发现adc_datasets目录所有者和用户组均是root,即使使用sudo chmodsudo chown修改权限也提示权限不够。这样修改挂载以后,该gid用户可以正常读写目录adc_datasets了;
3.查看挂载在状态

使用

df -h
#或
mount

查看挂载是否成功

4. 卸载mount文件

如果想取消挂载,可以

# umount /xjl/share/data
5.可能遇到的错误

问题: umount 时提示错误 target is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1))
解决办法: 你可以先切换到别的目录再试一次 , 原因也可能是其他进程可能在使用目录 , 可以先关闭使用该目录的进程 , 然后再 umount
命令如下:
(使用 fuser 需安装 psmisc # yum install psmisc)

# fuser -m /usr/local/bin/code
/usr/local/bin/code:  2806c
# ps aux | grep 2806
root      2806  0.0  0.5 116040  2836 pts/0    Ss   11:31   0:00 -bash
root      2925  0.0  0.1 112648   960 pts/0    S+   14:36   0:00 grep --color=auto 2806
# kill -9 2806
# umount /usr/local/bin/code
参考:

【1】将windows共享文件夹挂载到Linux系统
【2】linux挂载文件夹没有权限,Linux上mount 挂载windows共享文件后的权限问题
【3】操作系统——Linux使用mount挂载Windows共享文件夹
【4】linux 命令系列之 mount命令–挂载出现只读,解决方案
【5】linux 下 mount 挂载 无写文件权限问题解决
【6】samba服务端配置和客户端使用【含windows共享文件到linux】

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Delphi是一种常用的编程语言和集成开发环境(IDE),可以用于开发各种应用程序,包括网络应用程序。在局域网内进行文件传输,特别是大文件传输,我们可以使用Delphi来实现。 在Delphi中,我们可以使用TCP/IP协议来进行文件传输。首先,我们需要创建一个服务器程序和一个客户端程序来实现文件的发送和接收。 服务器程序负责监听局域网上的指定端口,等待客户端的连接请求。一旦接收到连接请求,服务器程序会创建一个新的线程来处理每个连接,并开始接受文件数据。服务器程序可以使用TIdTCPServer组件来实现。 客户端程序负责连接到服务器,并将文件数据发送给服务器。客户端程序可以使用TIdTCPClient组件来实现。 在文件传输过程中,可以将大文件分成多个小块进行传输,以减少传输时间和资源占用。服务器程序和客户端程序可以通过TCP连接发送和接收这些文件块,并将它们重新组合成完整的文件。 在Delphi中,可以使用TFileStream类来读取和写入文件数据。可以使用TIdTCPStream类将文件数据发送和接收到服务器和客户端之间的TCP连接。 为了确保文件传输的可靠性,可以使用校验和或哈希算法对文件进行完整性校验。在传输过程中,可以检查接收到的文件块的校验和或哈希值,以确保它们与原始文件的值匹配。 另外,为了提高文件传输的效率,可以使用压缩算法对文件进行压缩。Delphi中有一些常见的压缩库,如Zlib、ZipForge等,可以用来压缩和解压缩文件。 总结起来,使用Delphi可以方便地实现局域网内大文件传输。通过建立TCP连接、分块传输、完整性校验和压缩等技术,可以确保文件的安全、可靠和高效传输

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值