无法在 AIX 中使用 cp 命令进行复制

Unable to copy using cp command in AIX

我正在尝试在 AIX 中使用 cp -R 命令递归复制目录,但是某些目录(与 ITDS 和 DB2 实例相关)如 SQLT0000.0/SQL00123.DATSQLT0000.0/SQL00123.DATSQLT0000.0/SQL00123.INX 未被复制并给出错误:

Invalid argument

truss 命令的输出如下:

execve("/usr/bin/cp", 0x2FF22B9c, 0x20013678) argc: 3

sbrk(0x0000000) = 0x30002430

vmget 信息(0x2FF22510, 8, 16) = 0

sbrk(0x0000000) = 0x30002430

_libc_sbrk(0x0000000) = 0x30002430

getuidx(2) = 0

umask(0) = 18

umask(18) = 0

statx("/appl/ciam/test", ox2FF22A40.175, 020) = 0

statx("SQL00027.INX", 0xFF22000, 176, 020) = 0

statx("/appl/ciam/test/SQL00027.INX", 0x2FF22938, 176, 020) Err#2 ENOENT

kopen ("SQL00027.INX", O_RDONLY|O_LARGEFILE) ERR#22 EINVAl

kwrite(2, "c p", 2) = 2

kwrite(2, ":", 2) = 2

kwrite(2, " S Q L 0 0 0 2 7 , INX", 12) = 12

kwrite(2, " : ", 2) = 2

kwrite(2, "invalid argu" , 16) = 16

kwrite(2, "\n", 1) = 1

access("/appl/ciam/test/SQL00027.INX", ) = Err#2 ENOENT

尝试单独复制其中一个文件,以查明问题是否与文件有关。如果是这样,请检查文件路径是否包含有问题的内容,例如指向不可读目录的符号链接。

您也可以尝试 'truss' 找出失败的系统调用(open/read/write 等)——但不适合初学者。

是的,我已尝试复制该特定文件。一些文件 SQL00xyz.INX 或 SQL00xyz.DAT 文件被复制,一些给出无效参数错误