在Windows上使用telnet和ftp连接Minix的步骤

在Windows上使用telnet和ftp连接Minix的步骤
地狱门神

Minix 版本 3.1.1 VMware镜像版
http://www.minix3.org/download/minix3_1_1_small_vmware_256MB_1GB.zip

1、telnet的使用
运行VMware镜像后,进入到系统。
在登陆前,检查这一句
Starting networking
是否停顿很久,最后出现
Alarm call
Unable to obtain an IP address.
如果有就是网络有问题,一般为缺乏DHCP服务器或者DNS服务器。如果网络没有问题,可以跳过以下两步。
只要在VMware中切换到Host-only,则VMware自动提供DHCP支持。
而对于DNS服务器,我推荐使用WinMyDNS软件,这个软件可以在本机上架设一个DNS服务。
如果主机能上网时,Minix正常获取网络配置,而主机断网时,Minix不能正常获取网络配置,也应尝试这两步。

使用“root”帐号空密码登陆。
使用“passwd”指令修改密码,不要使用空密码。
然后用“ifconfig”查看IP地址。

之后就在外部主机上可以使用telnet登陆到Minix。
比如使用Windows的telnet命令或者“超级终端”。
在cmd下输入“telnet IP地址”即可进入Minix。
或者在超级终端中新建连接,选择TCP/IP,输入刚才查到的IP地址。

进入后输入用户和密码。例如刚才的“root”用户和密码。
系统会询问“Terminal type? (network)”,此时输入“vt100”。
据说“For us, the vt100 terminal type works fine for most purposes.”
之后就能在telnet界面上执行大部分指令了。

这个的主要优势是不用切换鼠标,可以Copy、Paste。还有滚动条。
可以用多个telnet连接到Minix,这样可以执行多个操作。

2、ftp的使用
步骤和上面的差不多,不过在登陆那步使用ftp命令。不能使用图形界面的ftp软件,因为Minix的ftp貌似list指令不能返回文件列表。

启动cmd,切换到一个文件夹(之后所有文件在这个文件夹中和Minix交换)。
输入“ftp IP地址”,然后输入用户名和密码(如“root”)。
这时就登陆了。
使用get命令从Minix下载文件,使用put命令将文件上传。
登陆后的默认路径应该是/root,或者可以通过pwd命令查看。可以通过cd命令更换文件夹。

文件名可以在Minix的telnet窗口或者VMware窗口使用ls命令看到,cd更换文件夹。

3、相关unix命令
cd 切换目录
ls 列出文件
rm 删除
rmdir 删除目录
ping 测试连接
shutdown 退出minix返回到boot程序
reboot 重启


Minix 版本  3.1.2a VMware镜像版
http://www.minix3.org/download/minix3_1_2a_vmware.zip

这个版本默认没有开启telnet和ftp,因此在按前面Minix 版本 3.1.1 VMware镜像版的说明进行时需要额外的一步。
在使用telnet或ftp之前,分别在root下执行下面的语句即可开启对应的服务。
intr -d tcpd telnet in.telnetd &
intr -d tcpd ftp in.ftpd &
这个版本的ftp服务比较正常,能够list返回文件列表,可以使用ftp软件登陆查看。我推荐CuteFTP。

如果想每次启动自动运行telnet和ftp,可以用FTP软件将/etc/rc.daemons.dist重命名为/etc/rc.daemons。

有关Minix环境架设和内核编译的步骤,请参照
http://diuf.unifr.ch/pai/education/2006_2007/os/minixsa/minixTutorial.pdf

 

 

 

 

在Windows上使用telnet和ftp连接Minix的步骤的补充说明
地狱门神

在《在Windows上使用telnet和ftp连接Minix的步骤》一文中,我提到了一个Minix的网络问题。
即在缺乏DNS服务器的环境中(例如断网时),启动Minix,会在加载ftp、telnet服务后,停留20s的时间,最终显示如下语句。
Unable to obtain an IP address.
并且在系统启动后,无法使用ftp、telnet连接上Minix。

现在给出原因和终极解决方案。

Minix中存在一个BUG,在调用一个叫gethostbyaddr的函数时,会永久阻塞。这个函数的功能是从IP地址返回主机名,需要向DNS服务器发送请求。当网络中不存在DNS服务器时,将永久阻塞。
系统启动时停留20s只是因为,在系统的启动脚本中,相关的命令(hostaddr -h)加了20s的时间限制。

终极解决方案如下。

在系统的/etc目录下添加一个hosts文件,内容如下:
192.168.205.128       localhost
192.168.205.1         192.168.205.1
其中的192.168.205.128是指虚拟机IP地址,192.168.205.1是指外部Windows的对应该虚拟机配置的VMware网卡的IP地址,请更换为你所需要的地址。
请注意应使用Unix风格的Lf换行符,而不要使用Windows风格的CrLf换行符。
这个/etc/hosts文件,将被nonamed所使用,功能和Windows下的hosts文件完全一样。nonamed是一个域名转发器。
使用ftp和telnet连接Minix上的服务端软件时,这些服务端软件会向DNS查询客户端主机名,也可能阻塞,因此需要将所有需要用到的IP地址都加入到该hosts文件。

在系统的/etc目录下添加一个rc.net文件,内容如下:
ifconfig -I /dev/ip0 -n 255.255.255.0 -h 192.168.205.128
add_route -g 192.168.205.1
daemonize nonamed -L
. /etc/rc.daemons
其中的192.168.205.128和192.168.205.1的意义和前面相同。
这个文件用于手动制定Minix系统的IP地址、子网掩码和网关,避免受到DHCP服务器的影响。

全部命令
cd /etc
echo 192.168.205.128 localhost > hosts
echo 192.168.205.1 192.168.205.1 >> hosts
echo ifconfig -I /dev/ip0 -n 255.255.255.0 -h 192.168.205.128 > rc.net
echo add_route -g 192.168.205.1 >> rc.net
echo daemonize nonamed -L >> rc.net
echo . /etc/rc.daemons >> rc.net

 

posted @ 2009-03-12 22:06  地狱门神  阅读(3203)  评论(0编辑  收藏  举报