我有 64 位 Debian Squeeze 系统,它运行旧的 32 位版本的 SGE execd。当我uname -m
在命令行运行时,我得到了我所期望的:x86_64
. 但是当我uname -m
在同一主机上的 SGE 脚本中运行时,输出为i686
. 这会破坏任何依赖于正确阅读的内容uname -m
。
我可以解决这个问题,所以我的问题比实际更学术。我下载了 uname 源代码,但找不到它从哪里提取机器架构数据。我认为这个问题的出现是因为uname -m
它是由 32 位父进程而不是 64 位父进程运行的。所以我的问题是 - 这个假设是否正确,如果是,为什么 uname 会受到执行它的进程架构的影响?