运行Linux on x86应用程序

x86应用程序安装完成后,在guest和host中均可运行。

你可以运行exagear命令启动guest shell,并运行任何x86应用程序,运行方式和在x86系统中一样。例如:

exagear

显示:Starting /bin/bash in the guest image /opt/exagear/images/centos-<os_version>-x86_64

which nginx

显示:/usr/sbin/nginx

/usr/sbin/nginx -h

在host会话中,你有如下两种选择:

  1. 在同一行中输入exagear -- 命令和guest系统内部的x86应用程序路径。例如:
    exagear -- /usr/sbin/nginx -h
  2. 输入x86应用程序二进制文件的完整路径。这个文件位于一个特定的目录下:/opt/exagear/images/centos-<os_version>-x86_64,即x86运行环境。例如:
    /opt/exagear/images/centos-<os_version>-x86_64/usr/sbin/nginx -h

默认配置下,x86应用程序只能访问x86运行环境中的文件,如果需要访问host系统上的某些文件,可以通过设置host与guest共享目录文件方式。详细配置方法请参考“配置ExaGear for Server on CentOS”中的host系统和guest系统共享的共享章节。

注:

对于脚本程序,推荐进入guest环境后运行,或者在host上运行该命令:

exagear -- /path/to/script

以test.sh脚本为例,脚本内容:

#!/bin/bash
if [ `arch` == 'x86_64' ]
then   
    echo "ok"
else   
    echo "fail"
fi

运行结果对比:

./test.sh

显示:fail

exagear -- ./test.sh

显示:ok

在guest系统中Linux on x86 32位和64位应用程序的安装和运行与在支持多进制的x86计算机上的运行是相同的。