问题标签 [windows-share]
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.
python - Python 无法使用 smb 客户端访问文件
使用这个库:https ://pypi.python.org/pypi/PySmbClient我正在尝试通过smb
Windows 机器的共享从我的 Ubuntu 机器访问文件。
共享已启动并运行良好,我可以看到文件,但是当我尝试从 Phyton 脚本访问文件时,我不断收到此错误:
我的代码:
ubuntu - Ubuntu 17.10 挂载 smb 共享一直失败
我已经在互联网上搜索了大约 2 个小时,但所有建议的修复都不起作用。希望这里有人知道解决此问题的好方法,或者可以为我指明正确的方向。
SMB 服务器是 Synology NAS。
我从 Ubuntu 12 开始就使用这种方法,但现在它不起作用。我做了以下
- 安装 cifs
编辑 /etc/fstab 并添加下一行
/li>
我已经做过的故障排除
- 确保挂载路径存在且为空(/media//windowsshare)
- 尝试了所有可用的 sec= 选项
- 将 .smbcredentials 文件的权限从 600 设置为 777
- 将服务器名称添加到主机文件以防万一
- 尝试添加正确的用户名 = 和密码 = 而不是文件
- 尝试使用命令行而不是 fstab
在文件资源管理器(其他位置 -> 连接到服务器)中使用相同的凭据连接到共享时,它可以正常工作。
PS 这是 Ubuntu 17.10 的全新安装
sudo mount -a 显示的错误是:
mount error(95): Operation not supported 请参阅 mount.cifs(8) 手册页(例如 man mount.cifs)
如果我需要提供更多信息,请告诉我。
提前致谢。克里斯
multithreading - FileSystemWatcher 报告文件在网络共享上可用,但找不到文件
背景
我有一个服务器,它有一个\\Server\Share
包含 4 个子文件夹的共享文件夹:
- 出站决赛
- 出站暂存
- 入站决赛
- 入站暂存
所有文件夹都驻留在同一个物理磁盘和分区上,不使用连接点。
我还有几个 WinForms 客户端(最多 10 个)向这个共享写入和读取文件,每个客户端都在多个线程上工作(最多 5 个)。文件由客户端(总共最多 50 个线程)写入\\Server\Share\OutboundStaging
文件夹。每个文件都有一个 GUID 的名称,因此不会被覆盖。一旦文件被完全写入,它就会被客户端移动到\\Server\Share\OutboundFinal
文件夹中。在同一台服务器上运行的 Windows 服务会将其拾取、删除、处理,然后将具有相同名称的文件写入文件\\Server\Share\InboundStaging
夹。一旦文件被完全写入,它就会被\\Server\Share\InboundFinal
服务移动到该文件夹中。
此 \\Server\Share\InboundFinal 文件夹由每个 WinForms 客户端的每个线程FileSystemWatcher.WaitForChanged(WatcherChangeTypes.Changed | WatcherChangeTypes.Created, timeOut);
使用FileSystemWatcher.Filter
直到文件夹中显示特定文件。
我已经阅读了几个关于FileSystemWatcher
行为不正常和不报告 UNC 股票变化的 SO 问题。然而,这对我来说不是这样。
我使用的代码如下所示:
这是抛出异常的使用行。
问题
我会假设 fileWatcher.WaitForChanged 只有在具有正确 GUID 名称的文件位于\\Server\Share\InboundFinal
文件夹中时才会继续。这正是 FileSystemWatcher 在本地文件夹上的工作方式,但不适用于通过网络访问的文件共享(本地文件,即使通过共享访问,也倾向于工作)。FileSystemWatcher 报告线程正在等待的文件在 FileSystemWatcher\\Server\Share\InboundFinal
文件夹中。但是,当我尝试读取文件时,我得到了 FileNotFoundException。读取线程必须等待 3-15 秒才能读取文件。我尝试使用带有Read
共享的 FileStream 打开文件。
什么可能导致这种行为?我该如何解决它?理想情况下,FileSystemWatcher.WaitForChanged(WatcherChangeTypes.Changed | WatcherChangeTypes.Created, timeOut);
只有在可以读取文件或发生超时时才应继续执行。
node.js - 节点 fs.writefile 从 Mac 到 Windows 共享
在 Mac 上开发 Node 应用程序时,我尝试使用 fs 模块将文件写入 Windows 共享。它似乎将整个路径视为文件名,而不是将文件保存到正确的目录,而是将其保存到工作目录。
有没有一种简单的方法可以从 Mac 访问此共享?
wix - Windows 服务仅在启动时无法通过 UNC 路径访问本地共享
我的 Windows 服务在启动时尝试通过其 UNC 路径访问本地共享。
它具有完整的权限并且路径存在,我可以说,因为在启动后很长时间启动我的服务时,一切正常。
但是,在启动时我遇到了错误
我添加了一个重试机制,如果我不受限制地重试,它就可以工作,但这是一个糟糕的设计,可能会导致掩盖实际错误。
我的服务在安装时配置为依赖LanmanServer
( svchost.exe
),但我不确定这是否是负责在启动时设置网络共享的服务。找不到关于哪个服务或其他组件的文档。也可能是我错误配置了依赖项。从我的wixproj
:
kubernetes - 从 Kubernetes 部署应用程序使用 Windows SMB 共享
我们正在将旧版 java 和 .net 应用程序从本地 VM 迁移到本地 Kubernetes 集群。
许多这些应用程序利用 Windows 文件共享在其他现有系统之间传输文件。与重新设计所有解决方案以避免使用 samba 共享相比,部署到 Kubernetes 的优先级较低,因此如果我们想要迁移,我们将不得不找到一种方法来保持许多东西的原样。
我们使用 Kubeadm 和 Canal 在 3 台 centos 7 机器上设置了一个 3 节点集群。
除了天蓝色卷,我找不到任何积极维护的插件或库来挂载 SMB。
我想出的是在所有节点上使用相同的挂载点在每个 centos 节点上挂载 SMB 共享,即:“/data/share1”,然后我创建了一个本地 PersistentVolume
和索赔,
并将索赔分配给该应用程序。
它适用于每个副本,但是对于在生产中使用本地卷有很大的警告。我不知道有任何其他方法可以做到这一点,也不知道使用此配置的实际注意事项是什么。
我可以用另一种方式吗?如果我监视挂载点并在挂载失败时禁用 kubernetes 中的节点,这可以吗?
docker - 将 Windows 共享挂载到 Kubernetes pod
我们正在将一些 Windows 组件 (.net 4.5) 迁移到 Linux 容器 (.net core)。现有系统是一个文件处理器,它监视共享位置并从那里处理文件。我们不能强制现有系统开始在其他位置放置文件,因此新的容器化应用程序必须从相同的共享位置访问。可以从 docker 容器中看到 Windows 共享吗?如果是,那我该如何使用 Kubernetes 部署文件来实现呢?请指教。问候,
powershell - Powershell 使 RemoteDrive 会话保持打开状态
最小问题:
执行以下操作后,如何正确处理遗留的远程会话连接:
我正在运行的代码大致如下所示:
我的意图是让一组远程机器都调用exe
我机器上的一个坐席,通过远程共享公开。
从广义上讲,我:
- 以我自己的身份连接到远程机器。
- 捕捉这种联系。
- 设置一个连接到我的远程驱动器
- (这是避免双跳问题所必需的,而无需求助
CredSsp
参见:https ://docs.microsoft.com/en-us/powershell/scripting/setup/ps-remoting-second-hop )
- (这是避免双跳问题所必需的,而无需求助
- 做一些事情
- 对所有机器重复此操作。
- 等到远程进程完成。
- 重新连接到所有机器以删除驱动器和连接会话。
这些会话最终似乎会衰减,但并不可靠,并且它能够使允许的最大会话数饱和,从而导致错误说:
更新:
感谢@jrider 的建议Get-SmbSession
。在我的脚本的其余部分返回之后运行它:
我显然不希望这个脚本盲目地关闭每个会话,无论它是否与这个脚本相关,所以我想我想将我的会话映射到 IP 地址并关闭任何具有该 IP 地址的东西?有没有人 JustKnow 必要的 PowerShell 咒语来实现这一目标?
docker - 挂载错误(13):权限被拒绝 - 在 docker/kubernetes
我对 kubernetes 和 docker 还很陌生,所以请耐心等待。
我正在尝试在 linux 中挂载一个 Windows 共享,该共享包含在 docker 中,这是一个 kubernetes pod。
我设法在 kubernetes 和 docker 中获得了所有正确的权限来手动挂载共享。但是我需要通过 Dockerfile 来完成,因为它需要自动化。
这是我的 Dockerfile:
这是我的 start-script.sh:
现在应该注意的是,我无权访问任何 docker 命令,它们都是由 kubernetes 处理的。Kubernetes 创建 pod 后,日志将显示:
挂载错误(13):权限被拒绝
参考 mount.cifs(8) 手册页(例如 man mount.cifs)
这让我很困惑,因为如果我登录到 kubernetes pod 并手动运行 mount 命令,它就可以正常安装。我错过了什么?
php - 如何使用 php 中的凭据访问网络驱动器文件夹?
我正在编写如下所示的 php 代码,其中我想使用 php 中的凭据访问网络驱动器文件夹(音乐)。正在设置凭据,因为我只想将完全访问权限授予特定用户。
$src_dir = '\\\INVEST-OP-001\test\music';
//线#A
音乐文件夹的完整权限/访问权限授予以下凭据:
问题陈述:
我想知道我应该在 Line#A 的 php 代码中进行哪些更改,以便我可以使用 php.ini 中的凭据访问音乐文件夹。