1

在 AIX 环境中工作,我发出以下 tar 命令并在套接字上接收错误。

问题 1. 如何避免套接字错误?

问题 2. 我可以依靠 tar 文件来包含除错误文件之外的所有文件吗?

 $ tar  -cvf /post_patches.tar /xyz 
   tar: /xyz/runtime/splSock6511 could not be archived
   tar: /xyz/runtime/splSock6507 could not be archived
   tar: /xyz/runtime/splSock6510 could not be archived
   tar: /xyz/runtime/splSock6506 could not be archived

 $ ls -asl spl*
   0 srwxrwxrwx    1 myuser   myuser            0 Nov 19 09:41 splSock6506
   0 srwxrwxrwx    1 myuser   myuser            0 Nov 19 09:41 splSock6507
   0 srwxrwxrwx    1 myuser   myuser            0 Nov 18 14:19 splSock6510
   0 srwxrwxrwx    1 myuser   myuser            0 Nov 18 14:19 splSock6511
4

2 回答 2

1
  1. 您可能应该避免包含绝对路径 - GNUtar会自动执行此操作。这使得很难恢复到/xyz可能已经存在并且可能不应该被篡改的其他机器上。
  2. 您可能不应该在根目录中写入 - 这是一个不好的做法。
  3. AIX tar 支持-X排除文件的选项;如果您可以列出要排除的文件,它将起作用。
  4. 它还具有-d处理特殊文件的选项。

    光盘 /

    找到 xyz -type s -print > /tmp/xx

    tar -cvf /tmp/post_patches.tar -X /tmp/xx

    rm -f /tmp/xx

这确保所有套接字文件都列在 /tmp/xx 中;它们将通过 -X 选项从备份中排除。

于 2008-11-19T23:48:42.573 回答
0

我手头没有 AIX 可以查看,但 Mac OSX 上的“tar”支持“ --ignore-failed-read ”开关。你看过了吗?

于 2008-11-19T17:43:16.837 回答