所以我有一个我们已经使用了一段时间的备份服务器,它是一个运行 zfs 并通过 NFS 提供服务的 FreeBSD 服务器。导出很简单:/backup/vm -maproot=root -alldirs. 如果相关,这是通过 zfs 配置的:
zfs get sharenfs
backup/vm sharenfs -maproot=root -alldirs local
Run Code Online (Sandbox Code Playgroud)
它运行良好,我们甚至恢复了这些备份。今天我纯粹是偶然发现,从 nfs 共享读取的文件与写入的内容(以及服务器上的内容)不匹配。
演示:在我们的服务器上
pg11.txt (downloaded on the server)
pg11.txt.1 (uploaded by a client over nfs)
Run Code Online (Sandbox Code Playgroud)
两者都是爱丽丝梦游仙境,从这里下载:http : //www.gutenberg.org/cache/epub/11/pg11.txt
在 nfs 服务器上:
md5 pg11.txt*
MD5 (pg11.txt) = eff1e5d84df1d3a543d1c578192a2367
MD5 (pg11.txt.1) = eff1e5d84df1d3a543d1c578192a2367
Run Code Online (Sandbox Code Playgroud)
到现在为止还挺好。现在在客户端上:
md5sum pg11.txt*
4d79d99b8eebe364cddf5ce42949bc3e pg11.txt
eff1e5d84df1d3a543d1c578192a2367 pg11.txt.1
Run Code Online (Sandbox Code Playgroud)
什么?pg11.txt从客户端读取我可以很容易地找到如下几行:
Alice started to her feet, for it flashed across her <80>^A^@<80>^V<A0>R+^@^@^@^A^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^A^@^@^@^A^@^@^A<A4>^@^@^@^A^^@^@^@^@^@^@^@^@^@^@^@^@^B<8E>^^@^@^@^@^@^B^B^@^@^@^@f7<D9>^@^@^@^@^@^@^V^V<EE>3^@^@^@^@^@^@^BFT^B<8C<FF>^E<D9>m(T^B<8C><E7>^]<CE>[<95>T^B<8C><E7>^]<CE>[<95>^@^A^@^@^@^@^@^@^@^A^@^@<U+FEFF>Project Gutenberg's Alice's Adventures in …Run Code Online (Sandbox Code Playgroud)