【问题标题】:Unable to copy using cp command in AIX无法在 AIX 中使用 cp 命令进行复制
【发布时间】:2015-06-17 14:18:33
【问题描述】:

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

参数无效

下面是 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, "无效参数" , 16) = 16

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

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

【问题讨论】:

    标签: aix


    【解决方案1】:

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

    您也可以尝试使用 'truss' 来找出失败的系统调用(打开/读/写等)——但不适合初学者。

    【讨论】:

    • 是的,我已尝试复制该特定文件。一些文件 SQL00xyz.INX 或 SQL00xyz.DAT 文件被复制,一些给出无效参数错误
    • 我已经用您建议的 truss 命令的输出更新了我的问题。请你看看有没有什么问题
    【解决方案2】:

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

    【讨论】:

    • 你尝试了什么命令?我的猜测:cp SQL00027.INX /appl/cia /test/SQL00027.INX 打开输入文件时出现问题。是否有其他进程使用此文件? fuser SQL00027.INX
    猜你喜欢
    • 2016-10-13
    • 2017-06-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-26
    相关资源
    最近更新 更多