问题标签 [smb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - Windows 文件共享:为什么有时新创建的文件在一段时间内不可见?
我们面临着非常奇怪的问题,这让我们发疯了。有时,我们的文件共享 PC 上新创建的文件在一段时间内“不存在”。要重现问题,您应该至少拥有两台计算机,调用它们alpha
并beta
. beta
在PC ( )上创建文件共享\\beta\share\bug
并从 PC 运行此 PowerShell 脚本alpha
:
启动此脚本后,您应该能够看到以下消息:
现在:打开cmd.exe
并运行以下命令:
if exist \\beta\share\bug\foo.txt echo 1
在此之后大约 10 秒,您将看到以下消息:
我们发现该错误是由枚举正在创建新文件的共享目录引起的。在Python
调用os.listdir('//beta/share/bug')
以重现错误。在C#
:Directory.GetDirectories(@"\\beta\share\bug")
。您甚至可以简单地通过 shell 导航到共享目录并调用ls
或dir
.
发现错误Windows Server 2008 R2
请注意,您不能alpha
在 Windows Explorer 中实时查看 PC 上的目录内容,因为如果您在 Explorer 中打开此目录,则不会出现错误!因此,请确保在尝试重现错误之前关闭所有此类窗口。每次脚本重新启动后,您应该手动从共享中删除所有已创建的文件(因为脚本相当愚蠢并且总是从 0.txt 开始)。
对于这个问题,我们目前有 2 个解决方法:
- 如果客户看到这种情况,它会在有问题的目录中创建一些临时文件 - 在这些文件神奇地出现之后。
- 禁用 SMB 2.0:http ://www.petri.co.il/how-to-disable-smb-2-on-windows-vista-or-server-2008.htm
有没有人发现过类似的问题并且可以解释它为什么会发生以及如何“正确修复”它?
谢谢
c# - 从 asp.net 应用程序访问网络共享。在 Visual Studio 中工作,但在 IIS 中不工作,为什么?
我在 Intranet 中有一个网络共享,允许每个人(访客)进行写访问
所以,我在 c# 中编写了一个程序(mojoportal 模块,无论如何它是相同的,我认为),它在该路径中写入一些文件,并且在 Visual Studio 中效果很好。
现在,在 IIS 7.5 中使用相同的程序不起作用,我得到了这个异常:
System.Net.WebException:在 WebClient 请求期间发生异常。---> System.IO.IOException - 登录失败:未知用户名或密码错误。
好吧......因为每个人都可以访问 smb 共享,所以我不明白为什么它在 IIS 上不起作用......
代码是这样的:
它可以是什么?谢谢
java - 如何使用 JCIFS 库有效地验证大量文件的存在?
我有一个读取数据库的进程来收集大约 200,000 个文件(并且还在增长)的服务器和路径信息。我使用 JCIFS 库来检查文件是否存在于指定位置,一次使用类似:
完成该过程需要几个小时。我试图找到一种方法来加快这个过程。需要验证的文件分布在 40 个目录中。每个目录可以包含几千个文件。SmbFile API有一个listFiles ()函数,它允许我打开一个目录并取回该文件夹中的SmbFile数组。我想知道我是否走在正确的轨道上,是否有人有更好的主意。谢谢!
log4j - 配置 Chainsaw 以通过网络共享从文件中读取日志
我需要通过 Windows 网络共享读取存储在远程位置的 Log4j 日志。
我尝试将该共享安装为 Windows 中的本地驱动器(L:,真是个幻想...),然后尝试LogFilePatternReceiver
使用我知道的模式配置 Chainsaw 中的共享。
问题是,虽然我仍然能够从 Windows 读取文件,但我无法让 Chainsaw 开始监听日志。
Chainsaw 中的文件路径是file://l:/catalina.out
,但我得到了
如果我尝试用 更改l:
,c:
只是为了尝试,我会发现该文件不可用(因为它在 C: 上不存在)。
这个问题的可能解释是什么?L: 驱动器,即使是远程驱动器,也安装在 Windows 中,我可以通过 shell 访问它。
谢谢你。
linux - 用于从多台 Windows 机器复制文件的 Linux 脚本
尝试制作一个 bash 脚本时遇到问题,该脚本将从在 Windows 上挂载到该共享的连接的文件中读取 IP 地址和用户名,然后将任何文件类型复制到名为用户名的新文件夹中。目前它还不能正常工作,如果找不到 Windows 共享,它会创建数百个名为 *.ano 的文件夹。
请帮忙
文本文件:
bash脚本:
大家好,感谢您如此快速的回复,我已将代码更改如下,但仍然得到多个文件,我在这里做错了什么
php - 从 PHP 修改 smb.conf?
我需要通过 PHP 或 SSH(来自 PHP 的 ssh 链接)添加/删除 SAMBA 共享。
到目前为止,我发现的唯一解决方案是一个用于原始处理文件的类,我对它的可靠性不太信任。(http://www.phpclasses.org/package/1546-PHP-Parse-and-recreate-the-Samba-smb-conf-file.html)
你能推荐一种方法吗?
ftp - 通过 Internet 共享文件 - WebDAV / SMB / FTP
我们正在开发一个基于 Web 的应用程序,它提供用户案例文件的存储库。希望用户能够从具有完整读写能力的 Web 浏览器访问这些内容。
对于我们的早期系统,它托管在带有 Windows 客户端的本地 Linux 服务器上,我们能够共享一个文件夹并使用 \\server\share_name\file.doc 类型的链接访问它。如果这些类型的链接包含在网页中(在 Internet Explorer 中)并单击在 MS Word 中打开的文件并可以直接保存到共享文件夹中。然而,这些类型的链接仅在 IE 中有效 - 而不是 FF 或 Chrome
现在转向我们下一代系统中基于互联网的解决方案,我们需要类似的功能。
我们正在考虑拥有一个 WebDAV(或 FTP/SFTP)共享并将每台客户端计算机上的本地驱动器映射到它以提供类似功能的想法。不过,这可能不适用于带有 \\server\share_name... 类型链接的 FF 或 Chrome。我们已经进行了简短的测试,并且 file:// 链接在打开文件后不提供写入功能。
作为最后的手段,我们将能够使用手动文件上传对话框,但这并不理想,需要额外的最终用户培训。
有没有人在这个领域有任何类似的经验和任何可能的解决方案/最佳实践。
windows - 在 Windows 7 中断开共享时如何避免 12 秒延迟?
我正在制作一些使用 NetUseAdd 和 NetUseDel 函数来连接/断开以共享的实用程序。在 Windows 7 中,我注意到在调用 NetUseDel 和真正的断开连接之间经过了将近 12 秒。我进行了一些调查,发现 net use \server /del 也仅在 12 秒后断开连接。这是小脚本和 Wireshark 输出,对应于脚本的运行:
http://i.stack.imgur.com/5CyCw.png
设置 last tree connect smb 命令作为参考,我们可以看到,树断开延迟了 12 秒。
有谁知道如何减少这样的超时?
php - 如何跨 SMB 挂载进行 PHP 复制
我有一个简单的脚本,它将文件从一个 SMB 挂载复制到另一个。源文件系统相同,但 Web 服务器不同。我正在使用 PHP 通过将文件复制到临时目录来处理文件,然后对其执行其他任务。此设置在某个时间点有效,但似乎不再正常工作。有人可以指出我正确的方向吗?
fstab 挂载:
php代码:
错误:
文件夹权限(不是挂载,而是文件服务器上的源文件夹):