LSF 错误消息

以下错误消息由 LSF 守护程序记录,或由 lsadmin ckconfigbadmin ckconfig 命令显示。

一般错误

以下消息可由任何 LSF 守护程序生成:
  • can’t open file: error

    由于 error给出的原因,守护程序可能无法打开指定的文件。 此错误通常是由文件许可权不正确或缺少文件导致的。 配置文件路径中的所有目录都必须具有 LSF 管理员的执行 (x) 许可权,而实际文件必须具有读 (r) 许可权。

    以下错误可能导致缺少文件:
    • lsf.conf 文件中的路径名不正确
    • 在未安装配置文件的主机上运行 LSF 守护程序
    • 具有指向不存在的文件或目录的符号链接
  • file(line): malloc failed

    内存分配失败。 主机没有足够的可用内存或交换空间,或者守护程序中存在内部错误。 检查主机上的程序装入和可用交换空间。 如果交换空间已满,那么必须在该主机上添加更多交换空间或运行更少 (或更小) 的程序。

  • auth_user: getservbyname(ident/tcp) failed: error; ident must be registered in services

    LSF_AUTH=ident 参数在 lsf.conf 文件中定义,但未在服务数据库中定义 ident/tcp 服务。 将 ident/tcp 添加到服务数据库,或者从 lsf.conf 文件中除去 LSF_AUTH=ident 参数,并对需要认证的 LSF 文件使用 setuid root 命令。

  • auth_user: operation(<host>/<port>) failed: error

    LSF_AUTH=ident 参数在 lsf.conf 文件中定义,但 LSF 守护程序未能与主机上的 identd 守护程序联系。 检查 identd 是否在 inetd.conf 中定义,以及 identd 守护程序是否正在主机上运行。

  • auth_user: Authentication data format error (rbuf=<data>) from <host>/<port>

    auth_user: Authentication port mismatch (...) from <host>/<port>

    LSF_AUTH=ident 参数在 lsf.conf 文件中定义,但 LSF主机上的 ident 守护程序之间存在协议错误。 确保正确配置了主机上的 identd 守护程序。

  • userok: Request from bad port (<port_number>), denied

    未定义 LSF_AUTH=ident 参数,并且 LSF 守护程序接收到源自非特权端口的请求。 未处理该请求。

    使用 setuid 位集设置要由 root 用户拥有的 LSF 二进制文件,或者定义 LSF_AUTH=ident 参数并在集群中的所有主机上设置 ident 服务器。 如果文件位于 NFS安装的文件系统上,请确保文件系统未使用 nosuid 标志安装。

  • userok: Forged username suspected from <host>/<port>: <claimed_user>/<actual_user>

    声称来自用户 claimed_user 的服务请求,但 ident 认证返回用户为 actual_user。 未处理请求。

  • userok: ruserok(<host>,<uid>) failed

    LSF_USE_HOSTEQUIV 参数在 lsf.conf 文件中定义,但 host 未设置为 /etc/host.equiv中的等效主机,并且未在 .rhosts 文件中设置用户 uid

  • init_AcceptSock: RES service(res) not registered, exiting

    init_AcceptSock: res/tcp: unknown service, exiting

    initSock: LIM service not registered.

    initSock: Service lim/udp is unknown. Read LSF Guide for help

    get_ports: <serv> service not registered

    未注册 LSF 服务。

  • init_AcceptSock: Can’t bind daemon socket to port <port>: error, exiting

    init_ServSock: Could not bind socket to port <port>: error

    如果尝试启动第二个 LSF 守护程序 (例如, RES 已在运行,并且再次运行 RES ) ,那么可能会出现这些错误消息。 如果是这样,并且您想要启动新的守护程序,请终止正在运行的守护程序,或者使用 lsadminbadmin 命令来关闭或重新启动守护程序。

配置错误

以下消息是由 LSF 配置文件中的问题导致的。 首先列出常规错误,然后列出特定文件中的错误。
  • file(line): Section name expected after Begin; ignoring section

    file(line): Invalid section name name; ignoring section

    指定行处的关键字 Begin 未后跟节名,或后跟无法识别的节名。

  • file(line): section section: Premature EOF

    在读取指定部分的 结束部分 行之前,已到达文件末尾。

  • file(line): keyword line format error for section section; Ignore this section

    该部分的第一行必须包含关键字列表。 当关键字行不正确或包含无法识别的关键字时,将记录此错误。

  • file(line): values do not match keys for section section; Ignoring line

    配置部分中行上的字段数与关键字数不匹配。 导致此错误的原因可能是未将 () 放在列中以表示缺省值。

  • file: HostModel section missing or invalid

    file: Resource section missing or invalid

    file: HostType section missing or invalid

    lsf.shared 文件中的 HostModelResourceHostType 部分缺失或包含不可恢复的错误。

  • file(line): Name name reserved or previously defined. Ignoring index

    分配给外部装入索引的名称不得与任何内置或先前定义的资源或装入索引相同。

  • file(line): Duplicate cluster name name in section cluster. Ignoring current line

    在同一 lsf.shared 文件中定义了两次集群名称。 将忽略第二个定义。

  • file(line): Bad cpuFactor for host model model. Ignoring line

    lsf.shared 文件中的指定主机模型声明的 CPU 因子不是有效的数字。

  • file(line): Too many host models, ignoring model name

    最多可以在 lsf.shared 文件中声明 127 个主机型号。

  • file(line): Resource name name too long in section resource. Should be less than 40 characters. Ignoring line

    资源名称的最大长度为 39 个字符。 请为资源选择较短的名称。

  • file(line): Resource name name reserved or previously defined. Ignoring line.

    您尝试定义由 LSF 保留或已在 lsf.shared 文件中定义的资源名称。 请为资源选择其他名称。

  • file(line): illegal character in resource name: name, section resource. Line ignored.

    资源名称必须以集合 [a-zA-Z]中的字母开头,后跟字母,数字或下划线 [a-zA-Z0-9_]

LIM 消息

以下消息由 LIM记录:
  • findHostbyAddr/<proc>: Host <host>/<port> is unknown by <myhostname>

    function: Gethostbyaddr_(<host>/<port>) failed: error

    main: Request from unknown host <host>/<port>: error

    function: Received request from non-LSF host <host>/<port>

    守护程序无法识别 host。 未处理该请求。 如果将 host 添加到配置文件中,但并非所有守护程序都已重新配置为读取新信息,那么会发生这些消息。 如果在重新配置所有守护程序之后仍发生该问题,请检查该主机是否为多地址主机。

  • rcvLoadVector: Sender (<host>/<port>) may have different config?

    MasterRegister: Sender (host) may have different config?

    LIM 检测到与发送 LIM不一致的配置信息。 运行 lsadmin reconfig 命令,以便 LIM 的所有实例都具有相同的配置信息。

    请注意未能联系到的任何主机。

  • rcvLoadVector: Got load from client-only host <host>/<port>. Kill LIM on <host>/<port>

    LIM 正在客户机主机上运行。 运行以下命令,或者转至客户机主机并终止 LIM 守护程序。

    bctrld stop lim host
  • saveIndx: Unknown index name <name> from ELIM

    LIM 接收到未在 lsf.shared 文件中定义的外部装入索引名。 如果在 lsf.shared中定义了名称,请重新配置 LIM。 否则,将名称添加到 lsf.shared 文件并重新配置 LIM的所有实例。

  • saveIndx: ELIM over-riding value of index <name>

    ELIM 为其中一个内置索引名发送值时,将记录此警告消息。 LIM 使用来自 ELIM 的值来代替从内核获取的值。

  • getusr: Protocol error numIndx not read (cc=num): error

    getusr: Protocol error on index number (cc=num): error

    ELIMLIM之间存在协议错误。

RES 消息

以下消息由 RES记录:
  • doacceptconn: getpwnam(<username>@<host>/<port>) failed: error

    doacceptconn: User <username> has uid <uid1> on client host <host>/<port>, uid <uid2> on RES host; assume bad user

    authRequest: username/uid <userName>/<uid>@<host>/<port> does not exist

    authRequest: Submitter’s name <clname>@<clhost> is different from name <lname> on this host

    RES 假定用户在所有 LSF 主机上具有相同的用户标识和用户名。 如果违反了此假设,那么将发生这些消息。 如果允许用户将 LSF 用于交互式远程执行,请确保用户的帐户在所有 LSF 主机上具有相同的用户标识和用户名。

  • doacceptconn: root remote execution permission denied

    authRequest: root job submission rejected

    Root 用户尝试运行或提交作业,但未在 lsf.conf 文件中定义 LSF_ROOT_REX

  • resControl: operation permission denied, uid = <uid>

    不允许用户标识为 uid 的用户发出 RES 控制请求。 只有 LSF 管理员才能发出 RES 控制请求。 如果在 lsf.conf文件中定义了 LSF_ROOT_REX 参数,那么还可以发出 RES 控制请求。

  • resControl: access(respath, X_OK): error

    RES 接收到重新启动请求,但找不到文件 respath 以重新执行自身。 确保 respath 包含 RES 二进制文件,并且具有执行许可权。

mbatchdsbatchd 消息

以下消息由 mbatchdsbatchd 守护程序记录:
  • renewJob: Job <jobId>: rename(<from>,<to>) failed: error

    mbatchd 尝试重新提交可重新运行的作业失败。 请检查文件 是否存在以及 LSF 管理员是否可以重命名该文件。 如果 位于 AFS 目录中,请检查是否正确设置了 LSF 管理员的令牌处理。

  • logJobInfo_: fopen(<logdir/info/jobfile>) failed: error

    logJobInfo_: write <logdir/info/jobfile> <data> failed: error

    logJobInfo_: seek <logdir/info/jobfile> failed: error

    logJobInfo_: write <logdir/info/jobfile> xdrpos <pos> failed: error

    logJobInfo_: write <logdir/info/jobfile> xdr buf len <len> failed: error

    logJobInfo_: close(<logdir/info/jobfile>) failed: error

    rmLogJobInfo: Job <jobId>: can’t unlink(<logdir/info/jobfile>): error

    rmLogJobInfo_: Job <jobId>: can’t stat(<logdir/info/jobfile>): error

    readLogJobInfo: Job <jobId> can’t open(<logdir/info/jobfile>): error

    start_job: Job <jobId>: readLogJobInfo failed: error

    readLogJobInfo: Job <jobId>: can’t read(<logdir/info/jobfile>) size size: error

    initLog: mkdir(<logdir/info>) failed: error

    <fname>: fopen(<logdir/file> failed: error

    getElogLock: Can’t open existing lock file <logdir/file>: error

    getElogLock: Error in opening lock file <logdir/file>: error

    releaseElogLock: unlink(<logdir/lockfile>) failed: error

    touchElogLock: Failed to open lock file <logdir/file>: error

    touchElogLock: close <logdir/file> failed: error

    由于 error中给出的原因, mbatchd 未能创建,除去,读取或写入日志目录或日志目录中的文件。 检查 LSF 管理员是否具有对 logdir 目录的读,写和执行许可权。

  • replay_newjob: File <logfile> at line <line>: Queue <queue> not found, saving to queue <lost_and_found>

    replay_switchjob: File <logfile> at line <line>: Destination queue <queue> not found, switching to queue <lost_and_found>

    重新配置 mbatchd 守护程序时,在 queue 中找到了作业,但该队列不再包含在配置中。

  • replay_startjob: JobId <jobId>: exec host <host> not found, saving to host <lost_and_found>

    重新配置 mbatchd 守护程序时,事件日志包含分派给主机的作业,但该主机不再配置为由 LSF使用。

  • do_restartReq: Failed to get hData of host <host_name>/<host_addr>

    mbatchd 在主机 host_name上接收到来自 sbatchd 的请求,但该主机对于 mbatchd未知。 配置文件已更改,但 mbatchd 未重新配置为获取新配置,或者 host_name 是客户机主机,但 sbatchd 守护程序正在该主机上运行。 运行以下 badmin reconfig命令以重新配置 mbatchd 守护程序或终止 host_name上的 sbatchd 守护程序。

LSF 命令消息

LSF daemon (LIM) not responding ... still trying

LIM 重新启动期间, LSF 命令可能会失败并显示此错误消息。 链接到 LIM API 的用户程序也由于相同原因而失败。 在配置更改 (例如,添加新资源或二进制升级) 后重新启动在 管理 主机列表或服务器主机列表上运行的 LIM 时,将显示此消息。

使用 lsf.conf 文件中的 LSF_LIM_API_NTRIES 参数或环境变量来定义 LSF 命令在 LIM 不可用时重试与 LIM API 通信的次数。 LSFEGO 守护程序以及所有 EGO 命令将忽略 LSF_LIM_API_NTRIES 参数。

lsf.conf 文件中设置了 LSB_API_VERBOSE=Y 参数时, LSF 批处理命令会在 LIM 不可用时向 stderr 显示无响应重试错误消息。

lsf.conf 文件中设置 LSB_API_VERBOSE=N 参数时,当 LIM 不可用时, LSF 批处理命令不会显示重试错误消息。

批处理命令客户机消息

当批处理命令无法与 mbatchd 守护程序通信时, LSF 将显示错误消息。 下表提供了可能的错误原因以及关联的错误消息输出的列表。
故障点 可能原因 错误消息输出
建立与 mbatchd 守护程序的连接 mbatchd 守护程序太忙,无法接受新连接。 connect() 系统调用超时。 LSF is processing your request. Please wait…
mbatchd 守护程序已关闭,或者没有进程在 LSB_MBD_PORTLSB_QUERY_PORT 上侦听 LSF is down. Please wait…
mbatchd 守护程序已关闭, LSB_QUERY_PORT 正忙 bhosts 显示 LSF is down. Please wait. . .

bjobs 显示 Cannot connect to LSF. Please wait…

客户端上的套接字错误 Cannot connect to LSF. Please wait…
connect() 系统调用失败 Cannot connect to LSF. Please wait…
内部库错误 Cannot connect to LSF. Please wait…
mbatchd 守护程序发送/接收握手消息 mbatchd 守护程序正忙。 当 LSF 正在等待从 mbatchd接收消息时,客户机超时。 LSF is processing your request. Please wait…
套接字 read()/write() 失败 Cannot connect to LSF. Please wait…
内部库错误 Cannot connect to LSF. Please wait…

EGO 命令消息

You cannot run the egosh command because the administrator has chosen not to enable EGO in lsf.conf: LSF_ENABLE_EGO=N.

如果未启用 EGO ,那么 egosh 命令找不到 ego.conf 文件或无法与 vemkd 守护程序联系 (可能是因为它未启动)。