LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: jessew

GNU 1.0

[复制链接]
发表于 2003-11-8 14:02:04 | 显示全部楼层
最初由 danielluo 发表
对硬件的支持怎么样?



有一定限制,不要指望相M$那样。
发表于 2003-11-8 14:03:14 | 显示全部楼层

回复: 正在翻译的GNU/HURD安装向导

最初由 tianshan851 发表
Installing the Hurd
安装the hurd

Neal H. Wal?eld
……


支持:cool:
发表于 2003-11-8 14:32:44 | 显示全部楼层
gnu没办法找到人来开发硬件驱动,所以硬件支持比linux差,推荐用老机器,那样就好办
,不过一两年前的机器都还可以,最新的无法发挥效能罢了,明天考试,过三天后还有考试,可能没时间,如果谁可以接着翻译的话,就接着吧,到时我再继续,把安装和reference都译完,新的版本也就差不多了,
中科大用GNU的有几个,如果它们也都来的话,就好了
有几个词不知怎么翻译
translator到底是指什么?我没看过mach的部分,在model operating system里有,但是现在没时间看
发表于 2003-11-9 01:05:32 | 显示全部楼层
Hurd,我觉得玄着呢。现在对个人用户来说,根本没有深入研究的必要。
发表于 2003-11-9 09:40:28 | 显示全部楼层
我现在对hurd那帮人基本上是半绝望状态,他们现在恐怕自己还没搞明白他们到底要把hurd搞成个什么样子,似乎还总在兼容和创新之间摇摆不定。

why we need another OS?
我正在看L4的文档,想看看她到底能给我带来些什么新东西和好东西
发表于 2003-11-9 15:45:02 | 显示全部楼层
GNU Mach enumerates disks starting at zero. IDE drives are prefixed with hd, while SCSI disks are prefixed with sd. Like Linux, drives are number by their position on the controller. For instance, the primary master is hd0 and the secondary slave is hd3. Partitions use the BSD slice naming convention and append sM to the drive name to indicate a given partition. Note that M is a one, not zero, based index. The slice number is simple to calculate: just increment what was used for Grub by one.
GNU Mach以零开始命名磁盘.IDE盘加前缀hd,SCSI盘加前缀sd.像linux那样,驱动器按它们在控制器上的位置来排序.比如:第一个主控制器primary master 是hd0,而第二个副控制器是hd3.分区使用BSD slice命名惯例,通过在驱动器后加上sM来指出所给分区.(注意:M是以一开始的,而不是以零开始),slice号很容易算:就是在Grub所用的基础上加上一个1.
Since the Hurd has not yet been configured, it must be started in single user mode. Adding a ‘?s’ to the kernel command line is all that is required.
在hurd还没有配置之前,必须以单用户模式启动,只需要在"内核命令行"上加上参数-s选项
Assuming that the first drive (i.e. ‘(hd0)’) is the master on the secondary controller, we would have:
假设第一个驱动器比如(hd0)是第二个控制器上的主驱动器,我们必须用:
grub> kernel (hd0,0)/boot/gnumach.gz root=device:hd2s1 ?s [Multiboot?elf, ...]
Next, the root filesystem server and the exec server must be loaded. This is done using Grub’s boot module capability. The ${var} are filled in by GNU Mach. The arguments are used by the Hurd to indicate what type of information is being provided. Since the ext2fs command line is very long, it can be broken up by escaping the newline character in the normal Unix fashion. Be sure that there is not space after the slash at the end of each line. Also be sure to differentiate { and } from ( and ).
下一步,必须先加载根文件系统服务和执行系统服务.通过使用Grub的启动模块化功能做到这一步.由GNU Mach提供${var}值.这个参数被THE HURD用来识别提供的是哪种信息,因为这样ext2fs命令行会很长,可能在通常的UNIX形式里会以换行符的方式被打断.??请确定在每一行的结尾斜线后没有空格,并且要从(and)中区分出{and}.
grub> module (hd0,0)/hurd/ext2fs.static \
??multiboot?command?line=${kernel?command?line} \
??host?priv?port=${host?port} \
??device?master?port=${device?port} \
??exec?server?task=${exec?task} ?T typed ${root} \
$(task?create) $(task?resume)
[Multiboot?module 0x1c4000, 0x2cfe6a bytes] grub> module (hd0,0)/lib/ld.so.1 /hurd/exec $(exec?task=task?create) [Multiboot?module 0x494000, 0x27afe bytes]
Once the GNU Hurd is running, process can be automated by adding the appropriate commands to Grub’s ‘/boot/grub/menu.lst’ configuration file.
一旦GNU Hurd在运行,进程可以通过在Grub的'/boot/grub/menu.lst’配置文件适当的位置添加而自动运行
The GNU Hurd can be now booted:
GNU Hurd现在可以启动了:
grub> boot
Sit back and watch the messages. This is actually more important than most people believe: there is a bug in GNU Mach whereby hitting a key during the boot process causes the kernel to panic.
坐下来看着信息.这事实上是比大多数人相信的更重要的:因为在GNU Mach里有一个bug,在启动进程过程中通过按住一个键可以导致内核紊乱(出错).???
If the Hurd fails to boot, it could be due to shared IRQs: GNU Mach does not play well with these. You can verify your situation by looking at, for instance, the ‘/proc/interrupts’file under GNU/Linux. Also, as GNU Mach does not support loadable kernel modules, many of the drivers are compiled into the default kernel. If there are old peripherals, this can be a problem: a device may incorrectly respond to a probe intended for a completely unrelated device and thereby cause a crash. Building a new kernel with only the required device drivers will usually solve this problem. GNU Mach is easily cross compiled. If you are running Debian, try installing the ‘gcc?i386?gnu’ package.
如果Hurd启动失败,可能是因为IRQ的问题:GNU Mach在这方面没有做好.你可以通过别的方式查看你的情况,比如说,在GNU/Linux下的/proc/interrupts文件.另外,因为GNU Mach不支持可加载内核模块,很多驱动都编译进缺省的内核里去了.如果你有旧的周边设备的话,这可能是个问题.一个设备可能不能正确的回应一个企图对完全无关设备的检测,这样就导致了死机.编译一个新的内核,只加进需要的设备驱动常常可以解决这个问题.GNU Mach是易于跨平台编译的,如果你在运行Debian,可以尝试安装‘gcc?i386?gnu’包.
If this does not help, explore the resources listed at the end of this document. Finally, ask on the appropriate mailing list.
如果这样还不行的话,浏览这个文档结尾列出的资源列表.再不行的话,请在适当的邮件列表上提问.

6 Native Install
6本地安装
Once you are presented with a shell prompt, and any time that the the Hurd is in single user mode, it is necessary to set the terminal type:
一旦你在一个shell上,或者任何时候如果HURD在单用户模式的话,必须设置终端类型:
# export TERM=mach
Be warned that ?CONTROL?C? and family will not work in single user mode.
必须清楚:在单用户模式下control +c 键和family键无法用.
We can now run the native?install script. This will configure the packages and set up several important translators:
现在可以运行nativeinstall脚本.这样就会配置程序包并设置许多重要的转换.
# ./native?install
Before the script terminates, it will indicate that it needs to be run a second time. Follow its instructions and reboot using the reboot command. Again, go into single user mode and run ./native?install.
在脚本结束前,它会指出还需要运行第二次.跟着指示用reboot命令启动计算机.再次进入单用户模式并再次运行./native?install.
发表于 2003-11-9 16:26:27 | 显示全部楼层
7 Configuration
7  设置
7.1The Network
7.1网络
To configure the network, the pfinet translator must be configured. This is done using the settrans command to attach a translator to a given filesystem node. When programs access the node by, for example sending an RPC, the operating system will transparently start the server to handle the request.
要配置网络, pfinet translator 必须配置.通过settrans命令将translator附加到一个给定的文件系统节点.当程序存取节点时,比如通过发送远程过程调用RPC的方式,操作系统会直接启动服务来处理要求.
# settrans ?fgap /servers/socket/2 /hurd/pfinet ?i eth0 \
?a a.b.c.d ?g e.f.g.h ?m i.j.k.l
Here, settrans is passed several options. The first two, ‘fg’, force any existing translator to go away. The next two, ‘ap’, make both active and passive translators. By making the translator active, we will immediately see any error messages on ‘stderr’. The latter, saves the translator and arguments in the node so it can be transparently restarted later (i.e. making the setting persistent across reboots). The options are followed by the node to which the translator is to be attached, then the program (i.e. translator) to run and any arguments to give it. The ‘?i’ option is the interface pfinet will listen on, ‘?a’ is the ip address, ‘?g’ is the gateway and ‘?m’ is the network mask.
在这里,settrans被传递了几个参数选项,前两个'fg'强行将已存在的translator取消,下两个'ap',使得转换器激活并为被动的转换.通过使得translator激活,我们可以立即在标准错误上看到错误.接着的将translator和参数保存在节点里以便接着可以直接重启(例如:......)这些选项后面跟着translator要被附加到的节点,然后程序(例如:......)然后程序带着任何所给参数运行.'i'选项是pfinet将会监听的接口",'a'是ip地址,'g'是网关而'm'是子网掩码.
Be sure to add name servers to your ‘/etc/resolv.conf’ file:
nameserver 192.168.1.1
确定添加域名服务器到你的/etc/resolv.conf文件:
nameserver 192.168.1.1 (!!!这里是你自己的域名服务器)
To test the configuration, ping ?c2 gateway. The ‘?c’ is important to limit the number of pings; recall, ?CONTROL?C? does not work in single user mode.
要测试配置,ping c2网关.'c'是很重要的,它限制了ping的次数;重新调用上面的命令.(control+c键在单用户模式无效)
DHCP does not yet work on the Hurd. This is due to limitations of pfinet: it is based on the Linux’ TCP/IP code and unable to listen on ‘0.0.0.0’.
DHCP在Hurd下还无法工作,这是因为pfinet的限制:它是基于Linux的TCP/IP代码的,无法监听'0.0.0.0'.
Help on settrans can be obtained by passing it the ‘??help’ option. Help on a specific translator can be gotten by invoking it from the command line with the same argument, e.g.:
# /hurd/pfinet ??help As there can be a lot of output, consider piping this through a pager such as less.
Settrans的帮助可以通过给它传递help选项来获得.某个特定的translator的帮助可以在命令行里给它应用同样的参数来取得.例如:
# /hurd/pfinet ??help
因为可能有一大堆输出,所以请考虑将其通过管道传给页面调用程序,比如less(grep,more等)
发表于 2003-11-9 16:55:36 | 显示全部楼层
7.2Other File Systems
7.3别的文件系统
Next, edit ‘/etc/fstab’ to add any additional filesystems as well as swap space. It is very important that swap space be used; the Hurd will be an order of magnitude more stable. Note that the Hurd can transparently share a swap partition with Linux but will happily page to any device including a raw partition such as your home partition. By default, nano is the only editor installed by the the base distribution.
下一步,,编辑'/etc/fstab'文件增加任何别的文件系统包括交换分区.使用交换分区是很重要的;这样Hurd会十分的稳定.注意,hurd可以透明的和linux共享一个交换分区,但是如果可以将页面文件影射到任何具有空的分区的设备上那是最好不过的,home分区也是如此.缺省状态下,nano是基本发行版里的唯一的已安装的编辑器.
Here is an example ‘/etc/fstab’ file:
下面是/etc/fstab文件的一个例子:
#
<file system> <mount point> <type> <options> <dump> <pass>
/dev/hd2s1 / ext2 rw 0 1
/dev/hd2s2 /home ext2 rw 0 2
/dev/hd2s3 none swap sw 0 0
Remember to create any devices using the MAKEDE
Vcommand:
# cd /dev
#
./MAKEDEV hd2s1 hd2s2 hd2s3
请记住:记得用MAKEDEV命令来创建任何设备.
To mount an nfs filesystem, /hurd/nfs translator is used. When run as non?root, the translator will connect to the server using a port above 1023. By default, GNU/Linux will reject this. To tell GNU/Linux to accept connections originating from a non?reserved port, add the ‘insecure’ option to the export line. Here is an example ‘/etc/exports’ file .assuming the client’s ip address is ‘192.168.1.2’:
要加载一个网络文件系统nfs,.使用/hurd/nfs转换器.如果不是以根用户运行,translator会用大于1023的端口来连接服务器.缺省GNU/Linux是拒绝这样做的.要告诉GNU/Linux接受从非保留的端口来的连接要求,在export后加上'insecure'选项以下是/etc/exports'文件的一个例子,假设ip地址是'192.168.1.2':
/home 192.168.1.2(rw,insecure)
To mount this from a Hurd box and assuming that nfs server's ip address is ‘192.168.1.1’:
要将这个文件系统挂载到hurd,假设nfs文件系统服务器ip的地址是'192.168.1.1':
# settrans ?cgap /mount/point /hurd/nfs 192.168.1.1:/home

7.3Rebooting
7.3重启
Finally, reboot into multiuser mode, i.e. in the same way single user mode was brought up minus the ‘?-s’ option when loading the kernel. For details, refer to See Chapter 5 [Booting the Hurd], page 3.
Happy Hacking!
最后,重启到多用户模式.......

后面还有一些提示,略了
发表于 2003-11-9 17:07:28 | 显示全部楼层
翻译的差不多了,基本上有些词因为对mach不熟悉,版主请帮忙改正,谢谢了,期望明天有人帮忙翻译.
本有个机会,只是自己没有好好把握,现在失去了,只能等两年后了,人生呀,何时能参透!!
有谁对建国纲领有独到见解而又有心有力完成三百年前之宏愿的努力吧,把我国的人民的思想好好的引导一下,让中国显扬于世界强国之流,让全世界都可以从这套思想中得益非浅,让这个世界少一些无谓的争斗
免为自勉
发表于 2003-11-10 15:32:22 | 显示全部楼层

我也顶一下

刚刚在DWN上看见的,Debian里头有新的软件包可以来装Hurd了。

crosshurd,可以在 ext2 和 可写的ufs 上安装

我暂时没有时间,要不也玩玩。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表