我的Linux机器报告“uname -a”输出如下:
[root@tom i386]# uname -a
Linux tom 2.6.9-89.ELsmp #1 SMP Mon Apr 20 10:34:33 EDT 2009 i686 i686 i386 GNU/Linux
[root@tom i386]#
根据uname的手册页,条目“i686 i686 i386”表示:
其他信息:
[root@tom i386]# cat /proc/cpuinfo
<snip>
vendor_id : GenuineIntel
CPU family : 6
model : 15
model name : Intel(R) Xeon(R) CPU 5148 @ 2.33 GHz
stepping : 6
CPU MHz : 2328.038
cache size : 4096 KB
</snip>
添加,为什么我有兴趣知道它。当我在这台机器上构建RPM时,我在RPM目录i386
和i686
下找到了两个目录。
因此,如果我想自动将生成的RPM复制到某个位置,我应该在shell脚本中指定哪个目录?我使用的是uname -p
,i686
但{}生成了i386
。
答案 0 :(得分:3)
在您的情况下,它告诉您的是,您在64位处理器上运行32位操作系统。代码与386兼容。
他们是:
第一个说明了检测到的CPU。关于uname程序编译的目标体系结构的第二个。在某些CPU上,它们默认为“未知”。内核应提供此信息,但如果没有可用的内容,则默认为硬编码字符串。
就我而言:
$ uname -a
Linux godiva 2.6.30-amd64 #1 SMP Tue Oct 27 09:12:19 UTC 2009 x86_64 GNU/Linux
$ uname --machine
x86_64
$ uname --hardware-platform
unknown
答案 1 :(得分:0)
在这种情况下,我认为区别在于硬件平台是家庭硬件即。 i386兼容机或处理器。而机器指的是你的特定机器,即i686,它在i386处理器上很熟悉。