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

在Linux下访问Windows共享文件夹

说明

以下操作以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服务器的域管理功能,统一管理内部的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、账户密码正确,但连接失败

错误信息是permission denied。这种情况可能是(1)在Linux系统中,你没有挂载权限;(2)Windows目标主机访问时权限不足

解决方法

如果是第一种情况,那么请使用有挂载权限的账户操作,比如root。

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

4、断网的情况下假死

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

解决方法

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/346285.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

oracle 11gdata guard,Oracle 11g Data Guard配置

操作环境说明:两台服务器使用相同的Redhat 5.5内核版本为:2.6.18-194.el5在主库(primary database)中提前安装好了Oracle 11gR2软件,通过DBCA创建了数据库,实例名为PRIMARY备库(standby database)中只安装了Oracle 11gR2软件&…

java 可变参数方法_Java方法中的参数太多,第7部分:可变状态

java 可变参数方法在我的系列文章的第七篇中,有关解决Java方法或构造函数中过多参数的问题 ,我着眼于使用状态来减少传递参数的需要。 我等到本系列的第七篇文章来解决这个问题的原因之一是,它是我最不喜欢的减少传递给方法和构造函数的参数的…

联想笔记本e480恢复出厂设置_联想e480进入bios设置_thinkpade480进入bios的方法

ThinkPad E480笔记本win10改win7如何修改BIOS设置?想要将预装win10系统换成win7系统,最重要的一步就是修改bios设置,这样才能在装机过程中不受到报错困扰,所以今天快启动小编为大家分享了详细图文教程,一起来看看吧。ThinkPad E4…

oracle一页显示15行,oracle rownum分页与显示记录小测

同事问及关于rownum表记录不显示问题,经查阅官方手册,附上测试笔记:SQL> insert into t_rownum select level from dual connect by level<5;5 rows insertedSQL> commit;Commit completeSQL> select * from t_rownum;A---------------------------------------123…

自动化用户特定实体的访问控制

实际上&#xff0c;每个Web应用程序都应该有多个用户&#xff0c;每个用户都有一些数据-帖子&#xff0c;文档&#xff0c;消息等等。 最明显的事情是保护这些实体免遭非这些资源合法所有者的用户获取。 不幸的是&#xff0c;这不是最容易的事情。 我并不是说很难&#xff0c;…

sqlserver安装显示句柄无效_Sqlserver 2016 R Service环境安装的各种错误(坑)解决办法...

相信很多朋友都会慕名Sqlserver 2016的R语言功能&#xff0c;将自己的数据库升级到Sqlserver 2016&#xff0c;但是当你安装完Sqlserver 2016的R语言组件之后&#xff0c;你会发现并不能直接使用&#xff0c;比如当你在SSMS中执行下面这段测试R语言命令的时候&#xff0c;Sqlse…

oracle用一个字段往上递归,深入sql oracle递归查询

获取数据库所有表名&#xff0c;表的所有列名 select name from sysobjects where xtypeuselect name from syscolumns where id(select max(id) from sysobjects where xtypeu and name表名)查询数据sql语句里的递归查询 sqlServer2005和Oracle 两个版本以前使用Oracle&#x…

如何在Spring Boot App中集成H2数据库

你好朋友&#xff0c; 在本教程中&#xff0c;我们将尝试探索如何在Spring Boot应用程序中与H2数据库集成。 在进行检查之前&#xff0c;让我们了解有关H2数据库的一些基础知识&#xff0c;如下所述&#xff0c;然后我们将讨论H2数据库与Spring Boot的集成。 什么是H2数据库…

python在路径里添加变量_想学Python?那就先从头开始吧!

作为人工智能和大数据时代最具竞争力的 Python 语言&#xff0c;越来越多的出现在各大编程热搜排行榜上。首先你要了解什么是python了解Python语言Python是一种解释型, 面向对象, 动态数据类型的高级程序设计语言.Python由Guido van Rossum&#xff08;荷兰&#xff09; 于1989…

php生成16位不重复随机码,PHP n个不重复的随机数生成代码

复制代码代码如下://range是将1到100列成一个数组$numbersrange(1,100);//shuffle将数组顺序随即打乱shuffle($numbers);//array_slice取该数组中的某一段$no6;$resultarray_slice($numbers,0,$no);for($i0;$iecho$result[$i]."";}print_r($result);?>复制代码代…

ant 走马灯面板指示显示不出来_触摸屏报警信息显示设置方法

人机界面(HMI)是自动化设备中非常常用的器件&#xff0c;用于替代操作面板上的实体按钮或者显示指示。人机界面的适用极大的减小了设备操作面板的尺寸&#xff0c;提升了设备的整体美观度。随着自动化设备的自动化程度的提高&#xff0c;也对设备的报警信息提出了更高的要求。如…

oracle bbed 使用,Oracle BBED使用 四步快速启动Oracle BBED

Oracle BBED使用&#xff0c;四步快速启动Oracle BBED&#xff0c;环境&#xff1a;Oracle 10g RHEL 5.8&#xff0c;介绍&#xff1a;BBED全称为数据块浏览和编辑。用于对Oracle blo环境&#xff1a;Oracle 10g RHEL 5.8介绍&#xff1a;BBED全称为数据块浏览和编辑。用于对Or…

python打包加版本信息_使用pyi-set_version为PyInstaller打包出来的程序附加版本信息...

本文将讲述如何使用 pyi-grab_version获取版本信息的模板文件&#xff0c;以及使用 pyi-set_version为打包好的程序附加版本信息。当然了&#xff0c;在开始前&#xff0c;需要你已经安装好了 PyInstaller 这个工具。如果已经安装&#xff0c;你可以在 Python 的安装目录&#…

linux读取.data文件,[20121227]v$datafile访问是从数据文件获取信息吗.txt

[20121227]v$datafile访问是从数据文件获取信息吗.txt记得以前开始学习oracle的时候,被问及访问v$datafile从哪里获取信息,当时想都没想,从数据文件.虽然当时对方并没有告诉答案,显然认为水平不再同一档次上.直到有一次看一篇blog:SELECT controlfile "SCN location"…

java 常见错误_Java常见错误的十大列表(前100名!)

java 常见错误前10名名单非常受欢迎&#xff0c;有趣且内容丰富。 但是有很多&#xff01; 如何选择合适的&#xff1f; 这是一个元前10名列表&#xff0c;可帮助您找到前10名的前10名列表。 在更令人讨厌的笔记上&#xff1a; SELECT TOP 10 mistake FROM source1 UNION ALL …

dll侧加载_win7系统开机提示xxxdll模块已加载但找不到入口点的解决方法

很多小伙伴都遇到过win7系统开机提示xxxdll模块已加载但找不到入口点的困惑吧&#xff0c;一些朋友看过网上零散的win7系统开机提示xxxdll模块已加载但找不到入口点的处理方法&#xff0c;并没有完完全全明白win7系统开机提示xxxdll模块已加载但找不到入口点是如何解决的&#…

linux md5加密文件,Linux下对字符串进行MD5加密

深入学习golang&lpar;1&rpar;—数组与切片数据(array)与切片(slice) 数组声明: ArrayType "[" ArrayLength "]" ElementType . 例如: va ...使用apt-fast 来加速你的Ubuntu 的apt使用apt-fast 来加速你的Ubuntu 的apt sudo add-apt-repository …

JDK 12:实际中的切换语句/表达式

我的上一篇文章“ 玩JDK 12的Switch表达式 ”讨论了如何使用JDK 12 Early Access Builds尝试JEP 325 switch 表达式和语句&#xff0c;并提供了一个简单的示例。 这篇文章使用相同的JDK 12 Early Access Build 10来演示switch表达式和增强的switch语句的不同功能。 我在博客文…

broker可以禁用吗 time_Win8.1系统Runtime Broker是什么进程?可以禁用吗?

我们知道电脑一开启就有很多进程了&#xff0c;其中有一个Runtime Broker是大家比较疑惑的&#xff0c;很多人会问Win8.1系统Runtime Broker是什么进程&#xff1f;可以禁用吗&#xff1f;带着这两个问题&#xff0c;小编现在就来为大家讲解一下。一、RuntimeBroker进程介绍Run…

2. linux的日志文件在哪个目录,位于/var/log目录下的20个Linux日志文件

如果你多数时间都在使用Linux系统&#xff0c;那么你有必要知道系统的日志文件位于哪里&#xff0c;以及每个日志文件是关于哪些内容的。在系统正常的时候学习理解各种日志文件的内容&#xff0c;有助于在遇到紧急情况时通过日志文件定位问题所在。/etc/rsyslog.conf文件决定了…