Articles of nfs

通过rsync读取错误备份到NFS

我正在备份一个Linux盒子到通过NFS挂载的NAS。 我正在使用rsync(作为http://www.mikerubel.org/computers/rsync_snapshots/与硬链接的scheme的一部分)。 这是我ssh进入machine_being_backed_up,启动我的rsync命令,备份文件大约一个小时左右,然后冻结服务器(例如,需要物理重新启动,这是非常不方便的,需要时间重新启动)最后的错误(实际名称匿名): some/path/file1.gz rsync: read errors mapping "/home/some/path/file1.gz": Input/output error (5) some/path/file2.gz rsync: read errors mapping "/home/some/path/file2.gz": Input/output error (5) some/path/file3.gz 这很可能表明我正在尝试备份的机器上的硬盘驱动器有一些错误的扇区,对不对? 或者,NFS连接速度太慢,或者在安装我的NFS驱动器(使用rw,soft,intr选项安装)时select了错误的选项,可能会出现这种错误? 有没有办法使这些input/输出错误只是跳过/失败的文件,而不是冻结系统(所以我不必经过镇去重新启动服务器)? 更新:我昨天打开了SMART,昨天进行了短暂和长期的自测,报告没有错误(昨天我不能提到这一点,因为长时间的testing在7p左右完成,计算机在午夜左右崩溃,所以我可以login,直到今天上午,当我可以 – 站点重启)。 此外,我试图rsync的问题文件到同一驱动器上的另一个分区,并没有得到任何错误。 我现在正在试图直接rsync到NAS(而不是使用NFS挂载NAS)。 更新(10月3日):我已经将硬盘移动到另一台机器,并且已经有2个星期没有错误。 在旧机器中,每天都有这种types的错误。 我猜测主板或内存错误在其他机器(没有足够的时间来完全诊断和查明问题)。

从客户端确定服务器支持的NFS版本

有没有办法确定一个特定的服务器正在运行的NFS协议的版本,只要将其作为客户端? 我试图找出一个服务器是否支持NFS v4,但我无法find一个简单的方法来做到这一点。

Feistynetworking登上拒绝卸载

我有一个特定的networking分享,让我感到悲伤。 基本上,我们有两个NAS设备必须搬到另一个build筑物。 我更新了/ etc / fstab到新的IP地址,并试图重新安装它们。 其中一台NAS设备经历了这个过程。 另一个则是粗鲁的。 我尝试了这个线程中的build议,但他们没有工作: 当我inputumount -f /mnt/gsrnas2 ,它说Device is busy 如果我尝试cd /mnt/gsrnas2 ,然后ls ,terminallocking,我不能用Ctrl + C分手 当我尝试fuser -mk /mnt/gsrnas2或lsof | grep /mnt/gsrnas2 ,terminal也冻结了这些命令。 所有在服务器上的其他NFS挂载都performance得很好,我可以卸载并挂载它们,没有任何问题。 我敢肯定,没有人积极使用这个挂载点,因为它指向一个空闲的IP地址。

rsynced文件没有得到正确的ACL

在Scientific Linux 6上使用rsync( rsync-3.0.6-5.el6_0.1.x86_64 )将文件从VFAT磁盘传输到NFS挂载的ext3文件系统。 我在ext3系统上设置了ACL,并且在创build新文件或目录时(通过NFS挂载,通过命令行或Nautilus),所有这些都可以按预期工作。 但是,当rsync-ing或cp-ing时,不会为ext3分区上的复制文件创buildACL。 背景是VFAT来自相机,间歇地安装,并不创build文件或目录。 有没有一种方法可以让rsync(甚至是复制),即默认的ACL规则将ACL应用于rsync-ed或cp-ed文件和dirs?

NFS v2与v3

我在使用NFS v3挂载主目录的两个系统(Solaris客户端和Linux服务器)出现问题。 (NFS v4完全不起作用,因为另一个系统pipe理员告诉我这是一个“已知问题”)。NFS v2似乎正常工作。 我的问题是:使用NFS v2和NFS v3之间的折衷是什么? 我需要决定是否继续尝试debugging这个问题,或者决定为这个客户端使用NFS v2。 我知道有v2的文件大小限制,虽然我看到了冲突的信息 – 这是一个2 GB或4GB的限制? 对v2也有性能损失; 是否有可能以一般的方式量化v2的速度限制,还是这太依赖于特定的系统和networking? (对于它的价值,我已经在系统之间获得了千兆以太网。)两者之间还有什么其他的折衷? 我应该知道有什么安全问题吗?

为什么权限在重启后被NFS拒绝?

我将Ubuntu和CentOS客户端nfsv3挂载到一个FreeBSD盒子,在nfs客户端连接的时候重新启动。 现在客户端在尝试访问挂载点时获得了拒绝权限。 在客户端上,我尝试过 # umount /nobackup/dat umount.nfs: /nobackup/dat: device is busy umount.nfs: /nobackup/dat: device is busy # fuser /nobackup/dat Cannot stat file /proc/1660/fd/473: Stale NFS file handle Cannot stat file /proc/1660/fd/475: Stale NFS file handle Cannot stat file /proc/1660/fd/476: Stale NFS file handle Cannot stat file /proc/1660/fd/478: Stale NFS file handle Cannot stat file /proc/1660/fd/479: […]

哪种文件共享协议(SMB / AFS / NFS / SMB2 / SMB3)最适合广告中的混合客户端环境?

我只是用ZFSbuild立NAS(FreeNAS),想知道哪种文件共享协议/数据传输协议是最好用的? 有没有人经验? 我想我有一个非常典型的业务设置。 我有一个运行在Microsoft Server 2003上的Microsoft Active Directory域(AD / LDAP)。我将从Mac,Windows(xp,7,8),windows server(2003,10,12)和linux 。 我正在考虑SMB / AFS / NFS。 FTP不是解决scheme,因为员工正在服务器上工作,而不是在本地机器上复制数据。

如何configurationNFS服务器来接受所有的挂载请求?

在/ etc / exports中添加0.0.0.0/32似乎不起作用。 有没有其他的configuration选项可以用于这个?

EC2自动调节和代码部署

我刚开始使用EC2负载均衡器,并试图实现自动调用和容错。 数据库托pipe在RDS中,会话是共享的,文件使用S3共享。 我似乎无法find代码部署的最佳解决scheme。 我不想使用结构在所有实例上重新运行部署命令。 更新一个实例上的代码,从中创build一个AMI,然后用这个AMI重新启动实例似乎对我来说是一个重大的矫枉过正,因为我们每天部署多次,整个过程有点麻烦。 理想情况下,我希望将应用程序代码存储在所有实例中的共享(NFS?)卷上,并在部署期间更新该卷上的代码。 所有实例都可以监视特定文件的更改,并在文件被触摸时重新启动应用程序的工作人员。 有没有办法在所有实例上使用NFS并自动挂载共享EBS? 还是有更好的方法来做到这一点? 总结什么是期望的: 我更新了1个EC2实例/ NFS卷,然后在没有创build新的AMI的整个过程中剔除它,销毁实例并创build新的实例。 当应用程序代码和数据库模式不同步时,我不想让一些实例陷入困境。 我知道最好的做法是编写支持2个连续数据库模式更改的代码,但在这一点上我们确实无法承受。

NFS挂载/失败重新启动 – 竞争条件?

我最近遭受了服务器崩溃(Ubuntu 12.04)的欢乐,以及随后的重新启动失败。 在操作系统加载networking之前,操作系统似乎试图将NFS共享挂载到/ etc / fstab文件中,这意味着操作系统无法在引导周期中超过该点。 我的fstab文件是正确的,这个服务器之前已经重新启动,所以我只能认为这是一个竞争条件? 有什么办法可以在操作系统启动后在fstab中挂载目录,或者至less在启动过程结束时执行这些操作?