我有两台 Windows 计算机联网,无法同时访问文件。我希望一次只有一个用户能够打开一个文件,我认为这是自动的,使用文件锁....如果用于访问该文件的程序正在锁定该文件。
我认为我遇到的问题是,我使用的一些程序没有锁定文件,因此可以由多个用户同时修改,这非常不是期望的。
目前,只有两台计算机遇到了这个问题,但只要我找到解决这个问题的方法,网络就会扩展到 6 台计算机,其中包括 Windows 7、Vista 和 XP,以及一个中央文件服务器(Samba)。
有没有办法确保所有在 Windows 中打开的文件都被锁定?我考虑过某种版本控制系统,但我看过的所有系统都太复杂了。我需要的只是确保多个用户不能同时写入一个文件。
欢迎提出任何建议,提前致谢。
编辑:
虽然这里只是我希望实现的一些指导方针,但我很感谢这些建议。
有大量文件和目录需要共享,这些文件和目录将由 Samba 文件服务器提供服务。因此无法使用 Windows 共享来管理共享访问。
多个人需要能够同时访问给定的文件夹。
Samba 支持文件锁定,因此理想情况下,我希望强制 Windows 对文件进行锁定,即使通常使用的程序不会这样做。(有没有可以做到这一点的程序?)
答案1
您可以创建共享文件夹并仅允许一个连接
答案2
大多数办公文件都接受网络上的修改。您应该查看共享选项。对于 exe 文件和文件夹,没有简单的方法。您可以将用户文件组织到仅对所有者+管理员可见的文件夹中,在 xp/2003 中有一个众所周知的 Microsoft 实用程序可以隐藏/取消隐藏文件夹?另一种方法是在 7 中为用户组织库,这有帮助吗?
答案3
因为这是一个 samba 服务器,您可以尝试将共享设置为strict locking
。
如果文件中存在任何字节范围锁,则此选项拒绝访问整个文件。
有关详细信息,请参阅使用 Samba:锁和 Oplock。