diff options
author | Xin LI <delphij@FreeBSD.org> | 2006-03-15 19:38:56 +0000 |
---|---|---|
committer | Xin LI <delphij@FreeBSD.org> | 2006-03-15 19:38:56 +0000 |
commit | b99e83b0a7c48690c2e6b7699bbd549e9a2c8da1 (patch) | |
tree | 61578f2c24f19d8d92ac0907829272ba8ae92e3e /zh_CN.GB2312/books/handbook/linuxemu | |
parent | f266a6a31f7f22bbb73de28eccf694ca3317afaa (diff) |
Notes
Diffstat (limited to 'zh_CN.GB2312/books/handbook/linuxemu')
-rw-r--r-- | zh_CN.GB2312/books/handbook/linuxemu/chapter.sgml | 143 |
1 files changed, 85 insertions, 58 deletions
diff --git a/zh_CN.GB2312/books/handbook/linuxemu/chapter.sgml b/zh_CN.GB2312/books/handbook/linuxemu/chapter.sgml index e3988ecfb6..848e0c7829 100644 --- a/zh_CN.GB2312/books/handbook/linuxemu/chapter.sgml +++ b/zh_CN.GB2312/books/handbook/linuxemu/chapter.sgml @@ -1,7 +1,7 @@ <!-- The FreeBSD Documentation Project - Original Revision: 1.124 + Original Revision: 1.129 $FreeBSD$ --> @@ -100,11 +100,16 @@ <indexterm><primary>KLD (kernel loadable object)</primary></indexterm> - <para>默认的Linux兼容模式没有被打开。启用这个功能的最容易的方法是调用<literal>linux</literal> - KLD对象(<quote>Kernel LoaDable object</quote>)。您可以在命令行通过健入<command>linux</command>来加载这个模块。 - </para> + <para>默认情况下, 并不开启 Linux 二进制兼容支持。 + 启用这一功能最简单的方法是载入 + <literal>linux</literal> KLD 模块 (<quote>Kernel LoaDable + object</quote>)。 以 <username>root</username> + 的身份, 键入下列命令即可:</para> - <para>如果您想让Linux二进制兼容性总是被启用,您可以在<filename>/etc/rc.conf</filename>加入下面这一行:</para> + <screen>&prompt.root; <userinput>kldload linux</userinput></screen> + + <para>如果希望 Linux 兼容支持在系统初始化过程中自动启用, 则应在 + <filename>/etc/rc.conf</filename> 中增加:</para> <programlisting>linux_enable="YES"</programlisting> @@ -281,16 +286,9 @@ multi on</programlisting> <sect1info> <authorgroup> <author> - <firstname>Murray</firstname> - <surname>Stokely</surname> - <contrib>Updated for Mathematica 4.X by </contrib> - </author> - </authorgroup> - <authorgroup> - <author> - <firstname>Bojan</firstname> - <surname>Bistrovic</surname> - <contrib>Merged with work by </contrib> + <firstname>Boris</firstname> + <surname>Hollas</surname> + <contrib>Updated for Mathematica 5.X by </contrib> </author> </authorgroup> </sect1info> @@ -301,61 +299,90 @@ multi on</programlisting> <secondary><application>Mathematica</application></secondary> </indexterm> - <para>这节描述在FreeBSD系统上安装Linux版的<application>&mathematica; 4.X</application>。 - </para> + <para>这份文档介绍了如何在 FreeBSD 系统中安装 Linux + 版本的 <application>&mathematica; 5.X</application>。</para> - <para>Linux版<application>&mathematica;</application>在FreeBSD下运行的很好,但是 - 由Wolfram打包的二进制程序需要标记才能让FreeBSD知道需要使用Linux ABI来执行它们。</para> - - <para>Linux版的<application>&mathematica;</application> - 或<application>&mathematica; for Students</application> - 可以从<ulink url="http://www.wolfram.com/"></ulink>直接定购。</para> + <para>Linux 版本的 <application>&mathematica;</application> + 或 <application>&mathematica; for Students</application> + 可以直接从 Wolfram 的 + <ulink url="http://www.wolfram.com/"></ulink> 订购。</para> <sect2> - <title>标记Linux程序</title> -<para> -Linux程序可以在Wolfram发布的CDROM的<application>&mathematica; </application><filename>Unix</filename>目录中找到。 -您必须将这个目录树拷贝到本地硬盘上,以便您能在运行安装程序之前用&man.brandelf.1; 来标记Linux程序: -</para> + <title>运行 &mathematica; 安装程序</title> + + <para>首先您应告诉 &os; + <application>&mathematica;</application> 的 Linux + 可执行文件需要使用 Linux ABI。 达到这一目的最简单的办法, + 是将未加标志的可执行文件的默认 ELF 标记为 Linux, + 输入下面的命令:</para> - <screen>&prompt.root; <userinput>mount /cdrom</userinput> -&prompt.root; <userinput>cp -rp /cdrom/Unix/ /localdir/</userinput> -&prompt.root; <userinput>brandelf -t Linux /localdir/Files/SystemFiles/Kernel/Binaries/Linux/*</userinput> -&prompt.root; <userinput>brandelf -t Linux /localdir/Files/SystemFiles/FrontEnd/Binaries/Linux/*</userinput> -&prompt.root; <userinput>brandelf -t Linux /localdir/Files/SystemFiles/Installation/Binaries/Linux/*</userinput> -&prompt.root; <userinput>brandelf -t Linux /localdir/Files/SystemFiles/Graphics/Binaries/Linux/*</userinput> -&prompt.root; <userinput>brandelf -t Linux /localdir/Files/SystemFiles/Converters/Binaries/Linux/*</userinput> -&prompt.root; <userinput>brandelf -t Linux /localdir/Files/SystemFiles/LicenseManager/Binaries/Linux/mathlm</userinput> -&prompt.root; <userinput>cd /localdir/Installers/Linux/</userinput> -&prompt.root; <userinput>./MathInstaller</userinput></screen> - - <para>另外,您也可以简单地用下面的命令将默认的ELF标记成Linux: - </para> <screen>&prompt.root; <userinput>sysctl kern.fallback_elf_brand=3</userinput></screen> - <para>这将让FreeBSD知道没有标记的ELF程序使用Linux ABI,所以您将可以直接从CDROM来运行安装程序。 </para> + + <para>这回让 &os; 假定所有未加标志的 ELF 可执行文件, + 都应使用 Linux ABI, 这样就可以直接从 CDROM 执行安装程序了。</para> + + <para>接下来, 需要将 <filename>MathInstaller</filename> + 复制到硬盘上:</para> + + <screen>&prompt.root; <userinput>mount /cdrom</userinput> +&prompt.root; <userinput>cp /cdrom/Unix/Installers/Linux/MathInstaller /localdir/</userinput></screen> + + <para>在这个文件的第一行中, 将 <literal>/bin/sh</literal> + 改为 <literal>/compat/linux/bin/sh</literal>。 + 这样就能确保安装程序是使用 Linux + 版本的 &man.sh.1; 来运行的。 接下来, 使用文本编辑器或下面的脚本, 把所有的 + <literal>Linux)</literal> 替换为 <literal>FreeBSD)</literal>。 + 由于 <application>&mathematica;</application> + 安装程序会调用 <command>uname -s</command> 来检测操作系统, + 这样做能够让它视 &os; 为一种 类-Linux 操作系统。 + 现在执行 <command>MathInstaller</command> + 就能安装 <application>&mathematica;</application> 了。</para> + </sect2> + + <sect2> + <title>修改 &mathematica; 执行文件</title> + + <para>在安装 + <application>&mathematica;</application> 的过程中所创建的脚本, + 必须首先进行适当的修改才能使用。 + 如果您选择将 <filename role="directory">/usr/local/bin</filename> + 作为 + <application>&mathematica;</application> 可执行文件的安装路径, + 则可以在这个目录中找到一些到名为 + <filename>math</filename>、 <filename>mathematica</filename>、 + <filename>Mathematica</filename>, 以及 + <filename>MathKernel</filename> 的文件的符号连接。 您可以使用文本编辑器, + 或者下面的 shell 脚本来将这些文件中的 + <literal>Linux)</literal> 改为 <literal>FreeBSD)</literal>:</para> + + <programlisting>#!/bin/sh +cd /usr/local/bin +for i in math mathematica Mathematica MathKernel + do sed 's/Linux)/FreeBSD)/g' $i > $i.tmp + sed 's/\/bin\/sh/\/compat\/linux\/bin\/sh/g' $i.tmp > $i + rm $i.tmp + chmod a+x $i +done</programlisting> </sect2> <sect2> <title>获得您的&mathematica; 密码</title> - <para>在您运行<application>&mathematica;</application>之前,您必须从Wolfram获得对应您的<quote>机器ID</quote>的密码。 - </para> <indexterm> <primary>以太网</primary> <secondary>MAC地址</secondary> </indexterm> - <para>一旦您安装了Linux运行时库,并把<application>&mathematica;</application>解包开了, - 您可以在安装目录通过运行<command>mathinfo</command>来获得您的<quote>机器ID</quote>。 - 这个机器ID是以您的第一块以太网卡的MAC地址为基础的。</para> + <para>在首次启动 <application>&mathematica;</application> + 时, 您将被问及一个密码。 如果您还未从 Wolfram 获得密码, 则安装目录中的 + <command>mathinfo</command> 可以帮助您获得 <quote>machine ID</quote> (计算机 ID)。 + 这个计算机 ID 取决于您第一块以太网卡的 MAC 地址, + 以确保您不在多台机器上运行 + <application>&mathematica;</application>。</para> - <screen>&prompt.root; <userinput>cd /localdir/Files/SystemFiles/Installation/Binaries/Linux</userinput> -&prompt.root; <userinput>mathinfo</userinput> -disco.example.com 7115-70839-20412</screen> - - <para>当您用email,电话或者传真向Wolfram注册时,给他们您的<quote>机器ID</quote>,就会返回一个包含一组数字的密码。 - 当您第一次运行<application>&mathematica;</application>时就需要得到的密码。 - </para> + <para>在通过电子邮件、 电话或传真向 Wolfram 注册时, + 您需要向他们提供 <quote>machine ID</quote>, + 探后它们会给您一个与之对应的由一组数字组成的密码。</para> </sect2> <sect2> @@ -490,14 +517,14 @@ LOG=/var/log/lmgrd.log case "$1" in start) - lmgrd -c ${LICENSE_FILE} 2>> ${LOG} 1>&2 + lmgrd -c ${LICENSE_FILE} 2>> ${LOG} 1>&2 echo -n " lmgrd" ;; stop) - lmgrd -c ${LICENSE_FILE} -x lmdown 2>> ${LOG} 1>&2 + lmgrd -c ${LICENSE_FILE} -x lmdown 2>> ${LOG} 1>&2 ;; *) - echo "Usage: `basename $0` {start|stop}" 1>&2 + echo "Usage: `basename $0` {start|stop}" 1>&2 exit 64 ;; esac @@ -2792,7 +2819,7 @@ SVRMGR> <userinput>exit</userinput></screen> total 4 drwxr-xr-x 3 idsadm sapsys 512 May 5 11:20 D00 drwxr-x--x 5 idsadm sapsys 512 May 5 11:35 IDS -lrwxr-xr-x 1 root sapsys 7 May 5 11:35 SYS -> IDS/SYS +lrwxr-xr-x 1 root sapsys 7 May 5 11:35 SYS -> IDS/SYS drwxrwxr-x 2 idsadm sapsys 512 May 5 13:00 tmp drwxrwxr-x 11 idsadm sapsys 512 May 4 14:20 trans</screen> |