【发布时间】:2014-12-16 22:16:16
【问题描述】:
当我创建 32 位 CentOS 5 docker 映像时,我希望将 cpu 架构报告为 i386/i686(在此容器检查架构中测试并安装 64 位二进制文件而不是 32 位的安装程序)。 我设置了 yum 变量并创建了 uname 包装器,因此 bash 脚本中的 yum 和检查工作正常:
bash-3.2# uname -a
Linux c538cf9bf508 3.13.0-24-generic #47-Ubuntu SMP Fri May 2 23:30:00 UTC 2014 i686 i686 i386 GNU/Linux
bash-3.2# uname -p -m -i
i686 i686 i386
bash-3.2# cat /etc/yum/vars/arch && cat /etc/yum/vars/basearch
i686
i386
但是python还是报64位
bash-3.2# python
Python 2.4.3 (#1, Jan 9 2013, 06:49:54)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-54)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import os, platform
>>> platform.machine()
'x86_64'
>>> os.uname()
('Linux', 'c538cf9bf508', '3.13.0-24-generic', '#47-Ubuntu SMP Fri May 2 23:30:00 UTC 2014', 'x86_64')
有没有办法到处伪造 cpu 架构?
【问题讨论】: