Articles of nfs

如何刷新nfs属性caching?

我需要find一种方法来刷新客户端的NFS属性caching。 stat()调用从属性caching中读取ctime而不是实际值,最多需要3秒才能将实际值反映到caching中。 在安装时使用“noac”选项,但会长期影响性能。 我碰到的解决scheme就像在同一个文件的所有者等做一个chown,但有一个正确的方法来刷新属性caching之前做一个stat()? 这个问题只发生在Redhat Linux上,而不是FreeBSD。 谁能解释一下?

无法写入通过NFS模拟的FIFO文件

我试图写入NFS文件,findNFS挂载,并阻止。 可能是什么问题呢? 我的/ etc / export: /tmp/test/ 10.0.0.0/24(rw,no_root_squash,async) NFS服务器和客户端上的ls / tmp / test是一样的 prw–w–w- 1 root root 0 2009-06-24 17:28 ui-input 我正在写根 谢谢。

确保客户端上的文件状态与NFS服务器同步

我试图find正确的方式来处理在NFS客户端上的陈旧的数据。 考虑以下情况: 两台服务器将相同的NFS共享存储与多个文件挂载 1服务器上的客户端应用程序删除一些文件 2台服务器上的客户端应用程序尝试访问已删除的文件并失败:旧的NFS文件句柄(没有什么奇怪的,预计错误) (由于性能的原因,两台服务器上的高速caching挂载选项相当高)也许是有用的。 我想了解的是: 有没有可靠的方法来检查,该文件存在? 在上面给出的情况下,lstat文件返回成功,应用程序只有在尝试移动文件后才失败。 如何手动同步客户端上的目录的内容与服务器? 一些一般的build议如何编写可靠的文件pipe理代码在NFS的情况下? 谢谢。

NFScaching清理命令?

我有NFS客户端属性caching的麻烦。 我正在使用一些服务器,一个是NFS服务器,另一个是NFS客户端服务器。 所有服务器都是Debian(lenny,Linux的2.6.26-2-amd64),版本如下。 % dpkg -l | grep nfs ii libnfsidmap2 0.20-1 An nfs idmapping library ii nfs-common 1:1.1.2-6lenny1 NFS support files common to client and server ii nfs-kernel-server 1:1.1.2-6lenny1 support for NFS kernel server 在NFS服务器中,/ etc / exports写成如下所示: /export-path 192.168.0.0/255.255.255.0(async,rw,no_subtree_check) 在NFS客户端中,/ etc / fstab写成如下所示: server:/export-path /mountpoint nfs rw,hard,intr,rsize=8192,async 0 0 如您所见,“asynchronous”选项用于多客户端访问性能。 但是,有时这可能会导致错误caching错误。 由于我维护了许多服务器(而且我没有如此强大的权限来更改挂载选项),所以我不想修改/ etc […]

这个典型的羊群例子是如何工作的?

当必须通过文件系统同步程序(shell脚本)时,我发现了一个基于flock的解决scheme(也应该在NFS上工作)。 从脚本内使用的规范示例(来自http://linux.die.net/man/1/flock )是: ( flock -s 200 # … commands executed under lock … ) 200>/var/lock/mylockfile 我不明白为什么这个整个构造确保了primefaces性。 特别是,我想知道当例如bash执行这些代码200>/var/lock/mylockfile , flock -s 200和200>/var/lock/mylockfile被执行的200>/var/lock/mylockfile 。 这个顺序是保证/确定的吗? 我的理解是,这个习语应该是确定性的。 但是由于子shell是在subprocess中产生的,我不明白这两个进程是如何同步的。 我只看到这两个命令之间的竞争条件已经。 我会很感激,如果有人可以让我对这个消失的困惑,并解释为什么这个构造可以用来安全地同步进程。 同时,如果有人知道,我会感兴趣的是select一些任意的文件描述符(如本例中的200 )是多么的安全,特别是在有很多客户端的大型NFS文件系统的情况下。

打开O_CREAT | 在Linux上的NFS的O_EXCL?

当在Linux 2.6内核和NFSv3中open("fname", O_CREAT|O_EXCL)有效? 目前的规范open(2)系统调用文档( http://www.kernel.org/doc/man-pages/online/pages/man2/open.2.html )说,一切都很好: – O_EXCL – … On NFS, O_EXCL is only supported when using NFSv3 or later on kernel 2.6 or later. In NFS environments where O_EXCL support is not provided, programs that rely on it for performing locking tasks will contain a race condition. Portable programs that want to perform […]

有没有一种好的方法来检测过时的NFS挂载

我有一个程序,我想要启动只有几个testing成功完成。 我需要的一个testing是,我所有的NFS装载都很好。 我能比powershell方法做得更好吗: mount | sed -n "s/^.* on \(.*\) type nfs .*$/\1/p" | while read mount_point ; do timeout 10 ls $mount_point >& /dev/null || echo "stale $mount_point" ; done 这里timeout是一个在后台运行命令的实用程序,如果在时间限制之前没有捕获到SIGCHLD ,那么会在一段时间后SIGCHLD ,以明显的方式返回成功/失败。 英文:parsingmount的输出,检查每个NFS挂载点(超时限制)。 可选地(不在上面的代码中)破坏第一个陈旧的安装。

在Windows 7中用冒号(“:”)打开文件名

我正在编写一个Python应用程序,应该可以在Windows和Linux上运行,但是有一个文件传输约定有问题。 我需要加载一个名称中冒号的JSON文件。 然而,在Windows 7中,似乎不可能,至less不是直接的。 这些文件存储在NFS驱动器上,因此我们可以在Windows 7中看到它,但无法打开它们。 有没有人有一个解决方法,如何可能读取包含在Windows 7冒号使用Python的JSON文件? 我们有一个可能的解决方法(我们希望避免)是SSH进入一个Linux机器,回显内容并将其发送回去。 显然,如果其他人有另一种方法,将是伟大的。 Windows XP能够打开它们并阅读它们 – 这只是Win 7的一个问题。 -edit-更新:我们发现我们可以通过networking访问我们的NFS / AFS服务器。 所以我们最终使用urllib2 urlopen所有包含无效字符的JSON文件。 似乎到目前为止运作良好。

如何在不使用nfs的情况下在Vagrant上运行Symfony2应用程序(例如在Windows上)?

当您使用Vagrant / Windows上的默认设置运行它时,Symfony2应用程序非常慢。 对此可以做些什么?