说明

以下操作以Ubuntu为例,大家可以参考。

我在Ubuntu 14.04和16.04都试过了。

Windows共享文件夹

如果局域网内有一台Windows主机,将指定文件夹设为共享,就可以在局域网内访问了。

如果要从Linux下访问该如何操作呢?

使用 mount.cifs

Windows共享文件夹使用的协议是SMB/CIFS。因而可以使用Linux下的smbclient在命令行中进行操作。

如果想更方便地在图形桌面环境使用,则可以使用mount.cifs指令,将共享文件夹挂载到指定位置,然后就可以像访问一个本地文件夹一样访问了。

首先安装依赖的包

使用mount.cifs需要cifs-utils软件包(以及cifs-utils依赖的软件包)。

$ sudo apt install cifs-utils

(插一句嘴:现在apt安装可以直接使用apt而不用apt-get了)

挂载共享文件夹

可以使用如下两种指令(效果是一样的)

sudo mount.cifs //[address]/[folder] [mount point] -o user=[username],passwd=[pw]

或者

sudo mount -t cifs //[address]/[folder] [mount point] -o user=[username],passwd=[pw]

其中共享文件夹的地址是Windows主机的地址加上文件夹名称,这个可以在Windows主机上看到。例如//192.168.0.100/share

挂载点是Linux本地的一个空文件夹。

后面的选项指定了用户名和密码。

文件操作

挂载成功后,通过图形化的文件管理器就可以直接操作了。复制、粘贴、删除等等。

不过,然而,可是……你很快就会发现,这个文件夹可读不可写!只能往外面复制,不能新建文件或者向里面复制。

查看文件夹属性后会发现,原来这个文件夹在挂载之后,owner变成了root。怎么办呢?不能每次拷个文件还要sudo吧?那还得打开命令行,不直观,多麻烦。

别急,mount.cifs还提供了一个选项,那就是指定挂载后的owner!用法如下:

sudo mount.cifs //[address]/[folder] [mount point] -o user=[username],passwd=[pw],uid=[UID]

在选项中指定用户的UID就可以了。

查看某个用户UID的方法:

id -u [username]

之后就可以正常操作了!

卸载

最后如果要卸载共享文件夹,使用umount即可

sudo umount [mount point]

Enjoy!

可能遇到的问题

使用过程中可能遇到各种各样的问题,其结果往往是一样的:无法访问目标文件夹。这里列出几个可能遇到的问题以及可能的原因和解决办法。

1、目标主机在某个域中

一般个人电脑不会使用域管理(Windows PC版压根儿就没有域管理服务),但是在一个企业或者组织中,可能会用Windows server的域管理功能,统一管理内部的Windows电脑。登录在域中的计算机时,登录界面会显示域名。

用上面的指令就没有办法登录处于域中的计算机共享文件夹,可能的报错是input/output error。

解决方法:

使用domain选项来指定域名:

sudo mount.cifs //[address]/[folder] [mount point] -o domain=[domain_name],user=[username],passwd=[pw],uid=[UID]

2、希望免密码登录

有些时候,为了方便起见希望不使用密码登录。

解决方法

使用guest选项。

sudo mount.cifs //[address]/[folder] [mount point] -o user=[username],guest,uid=[UID]

不过需要注意的是,如果要免密码登录,不仅客户端的登录指令要变,更重要的是在目标主机上要进行相关设置,允许Guest账户登录,或者允许免密码登录。具体设置方式,这里就不涉及了,与Windows系统版本有关,不过大同小异。

3、账户密码正确,但连接失败

错误信息是mount error(13): Permission denied。遇到这种错误请首先确定用户名和密码是否正确。

其他导致这种情况的原因有(1)安全协议不匹配(2)在Linux系统中,你没有挂载权限;(3)Windows目标主机访问时权限不足

解决方法

情况1:可使用sec=选项指定安全协议。如果Linux内核版本低于3.8,则默认的安全协议是sec=ntlm,而3.8及以后的版本使用sec=ntlmssp作为默认安全协议。对于版本较低的Windows(如Windows XP),可能不支持新的ntlmssp,此时需要指明使用ntlm协议。可使用man mount.cifs查看详细说明。

情况2:请使用有挂载权限的账户操作,比如root。

情况3:请进入Windows共享文件设置相关界面进行设置。因为可能原因是(1)你使用的账户不能访问这个文件夹;(2)Windows针对当前的网络连接关闭了文件共享;(3)其他配置原因。

4、断网的情况下假死

如果在已经连接成功的情况下断网,此时对已经挂载的共享文件夹进行任何操作(包括读取和卸载),都会导致假死(可能要卡住1-2分钟才能恢复)。这是网络文件系统(NFS)的特性决定的,修改挂载指令是没办法优化这个问题的。

解决方法

如果是命令行操作,那么就只好等待了。如果是在应用程序中使用,则建议使用多线程操作,单开一个临时线程卸载挂载的文件夹,临时线程的假死不会影响主线程。

linux 内网共享文件夹_在Linux下访问Windows共享文件夹相关推荐

  1. kali查看共享 linux_在Linux下访问Windows共享文件夹

    在Linux下访问Windows共享文件夹 说明 以下操作以Ubuntu为例,大家可以参考. 我在Ubuntu 14.04和16.04都试过了. Windows共享文件夹 如果局域网内有一台Windo ...

  2. 在Ubuntu下访问Windows共享文件夹

    文章目录 要求 操作流程 1. 安装必要的文件 2. 验证安装是否正常 3. 将Windows共享文件夹与本地文件夹关联 注意 要求 在Ubuntu下进行配置,从而可以访问 192.168.3.6 的 ...

  3. linux下访问windows共享文件夹

    我在我的主机里设置了一个文件夹,共享的名字是test,然后我主机的IP地址是192.168.1.100,而我的主机的当前登录的用户名为Bill,然后我就按网上的方法让我的虚拟机里的Linux系统访问到 ...

  4. Linux内网测试80端口带宽,Linux Centos测试服务器上行下行带宽,服务器带宽测速...

    服务器增加了带宽,总有人要测试一下带宽是否足够,测试服务器峰值带宽工具在github上有工具可以直接使用. 我一般使用这个工具 :https://github.com/sivel/speedtest- ...

  5. mac操作系统如何访问共享计算机,Mac系统访问Windows共享文件的详细步骤

    苹果Mac与Windows是两个不同的操作系统,无论是操作界面还是方式上都有所不同,有些用户询问说如果我们想用MAC系统访问windows系统中的共享文件应该如何操作?针对此问题,小编研究整理出操作步 ...

  6. 记录一次linux内网完整渗透测试

    21年六月中做完的项目文章,流程概览 信息发现与收集 寻找网域内主机目标 注意,web机每关机开机一次都要重新启动php5.3 kali机中命令(在10的网域内寻找) nmap -sn 192.168 ...

  7. linux 内网环境搭建 maven 私库

    linux 内网环境搭建 maven 私库 参考资料: https://www.codenong.com/cs106446840/ https://blog.csdn.net/lch_wyl/arti ...

  8. frp配置实现内网穿透(阿里云linux服务器[公网]+内网windows)

    Frp配置实现内网穿透 一.下载linux和windows环境的安装包 注意:server和目标主机下载的frp要同一个版本 GitHub下载地址:https://github.com/fatedie ...

  9. linux共享文件夹 redhat_Linux怎么访问Windows共享文件夹

    请关注本头条号,每天坚持更新原创干货技术文章. 如需学习视频,请在微信搜索公众号"智传网优"直接开始自助视频学习 1. 前言 本文主要讲解如何在Linux系统上访问Windows共 ...

最新文章

  1. 03Django基本应用结构
  2. linuxmysql乱码
  3. 个人成长:2021年9月记
  4. python基础之01数据类型-变量-运算浅解
  5. mysql dts_云树·DTS - 产品系列 - 分布式数据库系统_MySQL数据库性能优化-爱可生...
  6. 八.创建型设计模式——Singleton Pattern(单例模式)
  7. 搭建携程Apollo分布式配置中心
  8. 中文字符:中国 的unicode/UTF-8/GBK编码
  9. DirectX中文手册
  10. 【qt+opencv】实现人脸识别打卡系统2.0
  11. subli快速度创建html,Shortcut to comment out a block of code with subli
  12. 360全景倒车影像怎么看_360全景影像怎么看
  13. opencv 将白色变透明
  14. Linux:UID和EUID
  15. 二建考生速看 拿到二级建造师证书后该如何进行注册?
  16. Hive SQL查询效率提升之Analyze方案的实施
  17. Redis源码阅读,从入门到放弃
  18. java实现高德地图app,Android 高德地图入门demo,最新高德地图实现方法,附源码及apk...
  19. investment
  20. Linux 下 mv 覆盖相同文件,centos7 覆盖重复文件

热门文章

  1. “Attention is All You Need 翻译
  2. torch.nn.Linear()函数的理解
  3. 用TVM在硬件平台上部署深度学习工作负载的端到端 IR 堆栈
  4. 计图(Jittor) 1.1版本:新增骨干网络、JIT功能升级、支持多卡训练
  5. ffmpeg architecture(下)
  6. 快手推荐系统及 Redis 升级存储
  7. 汽车车灯灯具系统(上)
  8. Java 线程 知识
  9. 「日常训练」Bad Luck Island(Codeforces Round 301 Div.2 D)
  10. 2022-2028年中国润滑油基础油行业市场研究及前瞻分析报告