本FAQ旨在回答一些关于Gentoo/MIPS和Linux/MIPS的常见问题,这些问题都接收自大量的用户。本FAQ适用于新用户同样也适用于有经验的用户。本FAQ已经分类以使导航更容易。
如果您想为此FAQ作贡献,或者看了本指南还有我们没有回答的问题,尽管联系我们。
关于Gentoo/MIPS项目
MIPS硬件FAQ
MIPS软件FAQ
关于Silicon Graphics的FAQ
关于Cobalt的FAQ
Gentoo/MIPS是隶属于Gentoo基金会的一个小项目,负责维护Gentoo Linux在MIPS体系上的移移工作。我们目前主要维护MIPS家族的两种子体系:Silicon Graphics系统和基于MIPS的Cobalt服务器。
当然,在当今的计算机市场中,基于MIPS的机器不是最快的。虽然MIPS体系结构已经存在了很多年,显得有些老,但是仍然有很多非常有用的基于MIPS的机器在市场中出现。比如说Cobalt Qube 2可以做成非常好的宽带因特网路由器,也可以用来架设web网站、电子邮件和IRC等很多种应用的服务器。有很多理由让人想在这些硬件上安装Linux。
为什么不向NetBSD/MIPS或者IRIX移植Gentoo呢?
嗯,这是个好主意。不幸的是,维护Linux/MIPS和其他一些事务已经让很多Gentoo/MIPS团队忙得底朝天了。所以,您的参与将很受欢迎。或许我应该先在Gentoo论坛提出这个问题,看看大家的兴趣如何。论坛上也有些帖子讨论向其他平台上移植Gentoo,比如Solaris/SPARC,IBM OS/2和Microsoft Services For Unix。这些帖子对移植提供了很多有价值的提示,通过它们可以了解如何进行移植。如果您通过努力得到一些线索,其他一些开发者很可能将您的工作继续下去或者帮助您进入下一阶段。
MIPS Technologies公司制造的RISC CPU内核中,有一部分实现了MIPS指令集构架。这些处理器在小型嵌入式设备到大型服务器领域都有应用。
很巧合的是,MIPS是“每秒钟运行百万指令数”(Millions of Instructions Per Second)的缩写。
问题提得好。简单的说……有很多。貌似各种类型的设备里都能找到MIPS处理器的身影,小到PDA(比如卡西欧早期运行Windows CE的PDA)、X终端(比如Tektronix TekXPress XP330系列),大到像Silicon Graphics Indy和O2甚至更高端的如Silicon Graphics Origin 2000这样的服务器。
下面是一些现役著名的基于MIPS的系统的列表。更详细的列表在Linux/MIPS站点
| Sony游戏机 |
PlayStation PlayStation 2 PlayStation Pocket |
| 任天堂游戏机 | Nintendo 64 |
| Silicon Graphics系统 |
Iris Indigo Challenge Onyx Indy Indigo 2 Challenge S Origin 200 Origin 2000 Onyx 2 Octane Octane 2 O2 Fuel Origin 3000 Origin 300 Origin 350 Tezro |
| DEC工作站 |
rPC44 Tyne |
| Cobalt微型服务器 |
Qube 2700 Qube 2800 RaQ RaQ 2 |
|
基于Broadcom的802.11g 无线宽带因特网路由器 |
Linksys WRT54G |
……这些只是一小部分而已。这些机器应用广泛,种类多样,其中很多目前并不运行Linux。如果您乐意,我们非常欢迎您将Gentoo/MIPS移植到任何基于MIPS的机器上,但是我们只对一小部分机器提供支持。这些机器中的一些同时也是嵌入式Gentoo项目的核心内容,比如Linksys WRT54G。
这个问题很难回答。您的机器可能是下面三种类型之一:
对于第一种情况,最简单就是到Gentoo/MIPS系统要求查看您的机器理论上是否能够运行Gentoo/MIPS。Stuart也写了一个硬件支持数据库用来收集用户体验。这有助于评价Gentoo/MIPS在某种机器上运行的如何。
如果这里没有列出您的机器,您可以到Linux/MIPS网站查找。在很大程度上,您必须自己动手为您的硬件配置内核,准备起动介质,所以安装过程不会一帆风顺。鉴于此,我们自然会尽量为您提供帮助。
如果您查阅Gentoo/MIPS硬件要求页面,您将看到很多机器是不被我们支持的。就拿SGI的硬件来说,很少人了解这些硬件,更不要说成功的将Linux移植了。
如果您设法使Linux工作在被列为不支持的机器上,请尽快告知我们,我们对此非常有兴趣。
这要看您的系统用什么CPU了。stage文件以下列规则命名:
代码 4.1: Stage Tarball命名规则 |
stage3-mipsel4-2005.0.tar.bz2
\____/ \_____/ \____/
| | |
| | `--- Gentoo 版本 (例如 1.4, 2004.3, 2005.0)
| |
| `----------- Endianness和ISA级别
| mips ==> Big Endian
| mipsel ==> Little Endian
|
| R3xxx和更早期的: ISA级别1
| R4xxx系列: ISA级别3
| R5000和更先进的: ISA级别4
|
`------------------ Stage Tarball类型: 1, 2 or 3.
|
例如您使用R4000类型的CPU,应该使用mips3或者mipsel3的stage tarball。
对于R5000或者更新的CPU,应该使用mips4或者mipsel4的stage tarball。
有的tarball文件名有n32或n64字样,这表示此tarball是为64位用户层准备的。目前,对于64位用户层的支持还很不稳定,很多软件包也不能正常工作。除非您非常有勇气也不怕历经坎坷,我不建议您使用这些tarball。
我在chroot的时候遇到错误:"Illegal Instruction"或"Cannot Execute Binary File"。我是哪做错了?
一般来说,这是因为您用错了stage tarball。如果您在mips3 CPU上运行mips4的tarball,您将遇到illegal instruction错误信息。同样,如果您试图在Big Endian的CPU上运行Little Endian的代码,您将遇到cannot execute binary file错误。
解决这个问题很容易……清空这个分区,然后换成正确的tarball并解压。什么?哪个tarball是该用的?看看前面FAQ的目录吧。
引发这个问题的原因很多,有可能只是网线的问题,也有可能是服务器的问题。查出问题所在的最佳方法是排除法……
机器下载完内核后就停止响应了(使用显示器和键盘--不是串口控制台)
不幸的是,目前并不是所有的frame buffers图形设备都是被Linux支持的。这并不意为着您不能使用这台机器……只不过您得弄条零调制解调器串口线和它交互。其实这台机器很可能在运行,只不过在向串口控制台输出信息而不是显示器。
很多原因能引发这种情况。最简单易行的解决方法就是按照列表一个个的检查,确保一切工作正常。
Qube 2700是Cobalt推出的第一代服务器。虽然它们是很优秀的机器,却没有串口。换言之,任何于这种机器的交互都要通过网络。虽然我们正在为支持这种机器的计划努力,但是目前我们的网络启动镜像还不支持这种启动。
本文档的内容遵循知识共享-署名-相同方式共享许可协议