$(subj),它似乎是默认情况下拒绝所有共享的 root 用户。我正在尝试重现 Windows 管理共享。
我的本地机器运行的是 Windows 7,它支持最新发布的 SMB 协议版本 (SMB 2.1)。我也有一个远程主机,但我不知道该远程主机上安装了什么操作系统或支持 SMB 的软件;我只知道远程主机支持某些版本的 SMB 协议。
如何从我的 Windows 7 计算机的命令提示符(或 PowerShell)中找出该远程主机支持哪个版本的 SMB?
编辑:虽然我在上面提到了 Windows 7,但我确信这个问题与许多系统/网络管理员或桌面支持人员有关,因此我在这里而不是在 superuser.com 上发布问题。
我希望 Windows 客户端可以访问 *nix Samba 共享。
Samba 有一个选项来启用或禁用文件名区分大小写。通常对于 Windows 访问,这是禁用的,因此 fred==FRED=fReD。
然而,这导致了一个主要问题,AFAICT:
所以,我的问题是,如果区分大小写的标志设置为“ON”,Samba 在 Windows 上的表现如何?用户是否仍然可以看到这两个文件夹,并以一致的方式进行文件操作?
这里我有一个配置为托管 Windows XP 配置文件的 Samba 服务器(Debian 5.0)。
客户端连接到此服务器并直接在 samba 共享上处理他们的配置文件(配置文件不在本地复制)。
有时,客户端可能无法正常关闭,因此 Windows 不会释放文件锁。查看 samba 锁定表时,我们可以看到即使客户端不再连接,许多文件仍然被锁定。在我们的例子中,这似乎发生在 Mozilla Thunderbird 和 Firefox 创建的锁定文件中。下面是一个 samba 锁定表的例子:
# smbstatus -L | grep DENY_ALL | head -n5
Pid Uid DenyMode Access R/W Oplock SharePath Name Time
--------------------------------------------------------------------------------------------------
15494 10345 DENY_ALL 0x3019f RDWR EXCLUSIVE+BATCH /home/CORP/user1 app.profile/user1.thunderbird/parent.lock Mon Nov 22 07:12:45 2010
18040 10454 DENY_ALL 0x3019f RDWR EXCLUSIVE+BATCH /home/CORP/user2 app.profile/user2.thunderbird/parent.lock Mon Nov 22 11:20:45 2010
26466 10056 DENY_ALL 0x3019f RDWR EXCLUSIVE+BATCH /home/CORP/user3 app.profile/user3.firefox/parent.lock Mon Nov 22 08:48:23 2010 …Run Code Online (Sandbox Code Playgroud) 我正在尝试确定连接到我的 Windows Server 2016 上的共享文件夹的客户端正在使用哪个版本的 SMB/CIFS。如果我Get-SmbConnection在 Windows Server 上运行 powershell 命令,它将显示共享文件夹上正在使用的 SMB 版本服务器已连接到,而不是连接到它的客户端的 SMB 版本。
在运行 Samba (3.0.33-3.29) 的 CentOS 5.2 机器上,我创建了一个名为/upload.
在 samba 中,我配置了这样的共享:
[上传]
评论 = 上传文件夹
路径 = /上传
有效用户 = kevin root
公共 = 是
可写 = 是
可浏览 = 是
创建面具 = 0777
目录掩码 = 0777
客人好 = 是
我chown将/upload文件夹添加到我的帐户“kevin”并检查我是否可以通过 shell 创建文件和文件夹。
我可以从 Windows 7 浏览到机器,以“kevin”身份进行身份验证并查看我的主目录共享和upload共享,但我无法访问它们。
Windows 报告:
网络错误 Windows 无法访问 \\cos-01\upload 检查名称的拼写。否则,您的网络可能有问题。要尝试识别和解决网络问题,请单击诊断。 错误代码:0x80070035 找不到网络路径。
这是我所做的检查清单:
kevin已添加到 samba,同时使用smbpasswd -a kevin和设置我的密码。samba 和 centos 密码都是一样的。cos-01在/etc/hosts文件中,即 …我正在继承一个 Windows 2012 R2 服务器,该服务器特别为 Mac OS X 客户端体验了糟糕的 SMB/CIFS 性能。该服务器正在执行文件服务并且是 Active Directory 域控制器(域的两个之一)。它是 PDC 模拟器。另一个域控制器是 Windows 2003 Server。
客户端环境混合了 Windows 7 和 Mac OS X 10.9 Mavericks 机器。所有机器都在同一个物理和逻辑千兆局域网上。Windows 7 用户体验的性能符合预期。Mac OS X 10.9 Mavericks 客户端体验极差的性能,包括:缓慢的目录列表、遍历、文件读取和文件写入。读/写性能似乎存在明显的不对称,其中写入性能明显变慢。
我们尝试强制 OS X 客户端使用 SMBv1 和 CIFS,而不是较新的 SMBX/SMB2 实现。该问题在所有版本中仍然存在。我们还安装了 Thursby DAVE 进行测试。列表/遍历性能略有缓解,但仍然慢得令人无法接受。
我挂载了一个共享,用于dd读取/dev/random和写入一个 1GB 的文本文件到共享。写入性能为 0.33 Mbps。我tcpdump在写入过程中运行以捕获通信。请原谅缺少格式 - 我似乎无法回拨转义此块:
编辑
我为 Windows Server 启用了 NFS 服务器并安装在 Mac OS X 客户端上。我进行了上述相同的dd测试,结果/性能相似。
15:45:45.221337 IP 10.0.1.53.59596 > server.example.local.microsoft-ds: Flags …Run Code Online (Sandbox Code Playgroud) networking windows server-message-block mac-osx windows-server-2012
当Mac OS X客户在Windows共享文件复制,他们会创造像一些文件.DS_Store和._前缀隐藏文件(我认为这些文件的存储资源叉)。
如何防止这些文件污染这些共享?
也可以使用适用于其他媒体(例如闪存驱动程序)的解决方案。
为什么,当我复制文件(Windows 资源管理器复制、粘贴)时,我是否从使用命令提示符中的“net use”命令映射的驱动器获得了大约 100KB/s 的传输速率,而当我在 25-50MB/s 的传输速率之间使用 Windows 资源管理器映射驱动器?这两种会影响传输速度的方法有什么不同?
给定/环境:
共享服务器:Windows 2012R2,在http://benchmarks.cisecurity.org/downloads/show-single/?file=windows2012R2.110使用 CIS 基准锁定
共享服务器连接到同一网络上的域控制器,我们称之为“mydomain.local”
连接到共享的服务器:Windows 2008R2,远程位置,不同的域,我们称之为“mydomain.remote”
删除所有 CIS 推荐设置可以加快两种类型的网络驱动器映射的速度。
连接和共享服务器位于两个不同的数据中心,通过互联网连接
无论使用哪个连接(网络使用/Windows 资源管理器),都提供相同的凭据。让我们称这个帐户为:mydomain.local\myuser
我相信因此速度很慢(http://jrs-s.net/2013/04/15/windows-server-2012-slow-networksmbcifs-problem/),但我不知道为什么会这样不同取决于是否使用“网络使用”而不是 Windows 资源管理器。
在执行小型写入时,我一直在努力解决 SMB/CIFS 共享的性能问题。
首先,让我描述一下我当前的网络设置:
服务器
客户端(同一台计算机双启动有线 Gig-E)
配置文件
[global]
printcap name=cups
winbind enum groups=yes
include=/var/tmp/nginx/smb.netbios.aliases.conf
socket options=TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=65536 SO_SNDBUF=65536
security=user
local master=no
realm=*
passdb backend=smbpasswd
printing=cups
max protocol=SMB3
winbind enum users=yes
load printers=yes
workgroup=WORKGROUP
Run Code Online (Sandbox Code Playgroud)
我目前正在使用以下用 C++ 编写的程序(在此处的GitHub 上)测试小型写入性能:
#include <iostream>
#include <fstream>
#include <sstream>
using namespace std;
int main(int argc, char* argv[])
{
ofstream outFile(argv[1]);
for(int i = 0; i < 1000000; i++)
{
outFile << "Line …Run Code Online (Sandbox Code Playgroud)