动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 操作系统 > Linux教程
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Linux教程 ]的信息

本月文章推荐
.Linux如何在系统运行过程中修改内.
.服务器应用:实现Linux与宿主机之.
.Linux下安装Darwin流服务器的方法.
.如何重新设定时区.
.Qtopia应用程序与Linux内核数据通.
.Linux Shadow-Password-HOWTO - .
.Linux 指令篇:档案目录管理--ln.
.Ramdisk:在linux下如何使用 RAM .
.Linux 网管 123 --- 第3章. 概观.
.Linux操作系统中安装和试用IE、O.
.Linux操作系统下即插即用功能的实.
.Sun公司MySQL全球巡回展出中国站.
.Linux管理员手册(4)--内存管理.
.设定环境变数.
.Linux操作系统下文件系统的比较和.
.The Linux Bootdisk HOWTO 中译版.
.BrainShare 2008 全球技术大会登.
.Linux系统中atime ctime mtime之.
.Jaz-drive HOWTO -- 5. Linux 上.
.轻轻松松的安装Slackware Linux .

Linux 无盘工作站 Mini Howto

发表日期:2005-4-15 |


作者: Robert Nemkin buci@math.klte.hu
译者: 谢昆中 HSIEH Kun-Chung, ( linuxer.bbs@cis.nctu.edu.tw )

v0.0.3版, 1996年 9月12日 


--------------------------------------------------------------------------------
本文件在叙述如何设立一个无磁碟 Linux 机器。著作权为 Robert Nemkin 所有。著作权条款依照 GPL。我想要谢谢 Bela Kis  将这份文件翻译成为英文。 
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------

1. 修改

v0.0.3版 1996年9月12日: 一小部份的修改 


--------------------------------------------------------------------------------

--------------------------------------------------------------------------------

2. 如何设立一个无磁碟的 Linux 机
本文件在叙述如何设立一个无磁碟 Linux 机器。有时候我们可能需要在一个既无硬碟亦无软碟机的个人电脑上执行 Linux 。如果有个网路, 其他的 Unix 系统有著 bootp, tftp, NFS 伺服器,而我们又有一个 eprom 烧录机,那麽我们有办法在建立一个无任何磁碟机的 Linux系统了。 



--------------------------------------------------------------------------------

--------------------------------------------------------------------------------

3. 相关文章

NFS-root Mini Howto 
Linux NET-2/3-HOWTO 由 Terry Dawson 所写, 94004531@postoffice.csu.edu.au 
/usr/src/linux/README □於建构以及编译新核心 


--------------------------------------------------------------------------------

--------------------------------------------------------------------------------

4. 硬体
在本文所提到的都是以下面的建构来做的 

Sun-OS 4.1.3 做为启动伺服器 
Slackware 2.3 + Linux 1.2.8 + wd 8013 网路卡 
已使用中的乙太网路 


--------------------------------------------------------------------------------

--------------------------------------------------------------------------------

5. 基本概念
基本概念如下:个人电脑会经由 bootp 协定从启动伺服器中来取得它的 IP 位址。用 0.0.0.0 为初始 IP 位址,而它的核心程式会经由 tftp 协定。 

跳过区段的启动 (经由路由器router) 并不是个简单问题,所以,不是将伺服器以及无磁碟机的机器放置在同一个网路区段,就只有建构一个 UDP 辅助位址在你的 router 到伺服器的位址上。细节请参考你的 router 产器手册。
以下是我们的步骤 


5.1 设定个人电脑 
取得 nfsboot 套件 (可从你较喜欢的 linux mirror 镜射站的 /pub/Linux/system/Linux-boot 目录取得)。它包含了一个给 wd8013卡可直接烧录用的 booteprom 映像档。 

还有其他方法可以准备个人电脑部份: 

如果你的机器并不是没有磁碟的,那麽你可以使用小小的 DOS 程式或 
含有同样套件的二进位软体映像档。 
如果你选择的是第二者,你必须使用 dd 命令来将这个映像档写入一张软碟片□。 
这个映像档包含了 bootp 以及 tftp 客户端程式。你也需要准备一个 linux 核心程式码,它含有 nfs-root 选项。 

如果你使用最新的稳定核心程式,如 linux-1.2.13,那麽你需要使用包含在 nfsbootk套件内的 patch 修补核心程式。 
参考 patch(1)
如果你想要用最新的,但却不是很稳的 linux-1.3.x 系列核心,那麽你就需要建构 nfs-root 这选项。 
随便你要不要建构区块设备 (软碟机或硬碟机) 的支援,但你必须建构 tcp/ip 支援、 wd 乙太网路卡支援、 nfs 档案系统支援。然後重新编译核心程式。 


5.2 在伺服器上设定 bootpd 
它可以在 bootpd-2.4.tar.gz套件中找到 (可从你较喜欢的 linux mirror 镜射站的 /pub/Linux/system/Network/boot.net 目录内)。取得这个套件,编译并安装它。如果你其他的 Unix 机器也是用 Slackware Linux 的,那麽标准的供应版本就有 bootpd 了,所以你可以跳过这部份。 daemon 可以直接发出命令来执行 


--------------------------------------------------------------------------------

        bootpd -s


--------------------------------------------------------------------------------

或是使用 inetd,但你需修改: 
/etc/inetd.conf 在这些条列中移除 # 号 

--------------------------------------------------------------------------------

# tftp   dgram   udp     wait    root    /usr/sbin/in.tftpd     tftpd /export
# bootps dgram   udp     wait    root    /usr/sbin/in.bootpd    bootpd


--------------------------------------------------------------------------------

在 /etc/services 中插入或是移除备注符号: 

--------------------------------------------------------------------------------

bootps          67/tcp          # BOOTP server
tftp            69/udp          # TFTP server


--------------------------------------------------------------------------------

重新启动 inetd ,使用 

--------------------------------------------------------------------------------

        kill -HUP .


--------------------------------------------------------------------------------


5.3 在伺服器上建构 bootpd 
由先, bootpd 有个叫 bootptab 的建构档,它通常被放在 /etc 内。你必须修改它,加上你的无磁碟机器的闸道 IP 位址、 dns 伺服器,以及乙太网路位址(es)。 □例如下 /etc/bootptab: 


--------------------------------------------------------------------------------


global.prof:\
        :sm=255.255.255.0:\
        :ds=192.168.1.5:\
        :gw=192.168.1.19:\
        :ht=ethernet:\
        :bf=linux:
machine1:hd=/export/root/machine1:tc=global.prof:ha=0000c0863d7a:ip=192.168.1.140:
machine2:hd=/export/root/machine2:tc=global.prof:ha=0800110244e1:ip=192.168.1.141:
machine3:hd=/export/root/machine3:tc=global.prof:ha=0800110244de:ip=192.168.1.142:


--------------------------------------------------------------------------------

global.prof 是 host 项目的一般样本,其中 

sm 栏包含子网路遮罩 
ds 栏包含网域名称伺服器的位址 
gw 栏包含内定闸道位址 gateway 
ht 栏包含网路媒介硬体种类 
bf 栏包含启动档档名 
之後,每一台机器应该有下面这行 

首栏包含主机名称 
hd 栏包含启动档案的目录 
全区样本应该被包含到 tc 栏, 
ha 栏包含乙太网路卡的硬体位址 
ip 栏包含被分配的的 IP 位址 


5.4 了解 tftp 
TFTP (Trivial File Transfer Protocol) 是一个档案传输协定,就像 ftp 一样,但它比比较简化,因此可以容易地在 EPROM □来编码。 TFTP 的使用方法有二种: 

简单的 tftp: 表示客户端可以存取你的整个档案系统。虽然较简单但却开了一个安全大洞 (任何人都可以经由 tftp 来拿到你的密码)。 
安全的 tftp: tftp 伺服器会使用chroot.2 系统呼叫来改变它自己的根目录。任何在新目录以外的事件都完全无法存取。因为 chroot 目录变成新的根目录, 硬碟在 bootptab 整档时必须反应这个新的处境。例如:当我们使用不安全的 tftp 时, hd 栏包含了启动目录的完整路径,: /export/root/machine1。当使用安全的 tftp 时, /export 被当成根目录,而 /export 变成 / ,且 hd 栏就变成 /root/machine1了。 
几乎每一个 Unix 实作都包含 tfpt 伺服器,也许你并不需要自己安装一个。 

5.5 在远端伺服器上设定一个小型的 Linux 建构 
这包含 Slackware供应版内的 a, ap, n, 及 x 部份。要安装更多的套件也可以;但是上面的套件已足够一个无磁碟 X 终端机的需求了。首先你需要一个已在运转的 Linux 系统。在远端机器□找一个磁碟空间并 export 它成为可读写并挂上它到 Linux 机器的档案系统上的某一处 (例如 /mnt)。开始 Linux 设定并改变root 选项从 / 变为 /mnt。然後设立如上面所说的套件,如果你只是要执行一个无磁碟的 Linux 那麽就不需要做其他改变。另一方面,如果你计画使用超过一个以上的无磁碟机器,那麽上面的设定就需要些许的修改,因为有些档案以及目录必须只有机器本身使用。我们可以以移开 /usr 目录(它包含非私人的资料)的方式跳过这个问题,然後建立一个分开的子目录给每一个无磁碟机器。例如,如果 /export/linux/machine1 被挂在 /mnt 上,那麽在初始设定後目录结构会像这样 


--------------------------------------------------------------------------------

/export/linux/machine1/bin
/export/linux/machine1/sbin
/export/linux/machine1/lib
/export/linux/machine1/etc
/export/linux/machine1/var
/export/linux/machine1/usr


--------------------------------------------------------------------------------

改变後你会有 


--------------------------------------------------------------------------------

/export/linux/machine1/bin
/export/linux/machine1/sbin
/export/linux/machine1/lib
/export/linux/machine1/etc
/export/linux/machine1/var
/export/linux/usr


--------------------------------------------------------------------------------

现在为其他的机器建立目录。从现在开始我们假设你的无磁碟机器分别叫做 machine1、machine2、 machine3等等;使用以下的 bash 命令手稿来设立其他的目录 


--------------------------------------------------------------------------------

 
        cd /export/linux
        for x in machine2 machine3 ; do
                mkdir $x; cd $x
                (cd ../machine1; tar cf - *) | tar xvf -
        done


--------------------------------------------------------------------------------

然後做下列的 export: 

/export/linux/usr 唯读(对每个使用者) 
/export/liunx/machine1 只有对 machine1 有 rw,root 权利。 
/export/liunx/machine2 只有对 machine2 有 rw,root 权利。 
/export/liunx/machine3 只有对 machine3 有 rw,root 权利。 
如下 
下面□列是依照 SunOs 4.1.3 的 exports 档案的语法来做
: 

--------------------------------------------------------------------------------

 
# This file is /etc/export
# for remote linux X terminals by Buci
# this line is only once
/export/root/usr             -access=linuxnet
# these lines once for every host
/export/root/machine1       rw=machine1,root=machine1
/export/root/machine2       rw=machine2,root=machine2
/export/root/machine3       rw=machine3,root=machine3


--------------------------------------------------------------------------------

请不要忘了执行 exportfs -a 

5.6 建构 tftp 伺服器 

现在该是建构 tftp 伺服器的时候了。如果你不需要一个安全的 tftp 那很简单,因为你的客户端已经可以从 /export 目录来启动。 

如果一个安全的 tftp 被采用,那麽你可以在 /tftpboot 目录下做个完整的 /export/linux 目录结构。 (用一个实体核心程式及连结给其他机器的符号连结),或是让 /export 目录成为安全的 tftpd 的根目录。或者如果你有一另外的 tftpboot 目录,那麽,同样地,你只需要原来的目录结构,然後用一个实体核心程式来符号连结其他机器) 。 你可以执行下列命令来完成这个设定: 


--------------------------------------------------------------------------------

      mkdir -p /tftpboot/export/linux/machine1
      cd /tftpboot/export/linux/machine1
      cp /export/linux/machine1/ . 


--------------------------------------------------------------------------------

然後执行下面: 



--------------------------------------------------------------------------------

      mkdir -p /tftpboot/export/linux/machine2
      cd ../machine2 
      ln -s ../machine2/ 


--------------------------------------------------------------------------------


5.7 最後工作 

最後,你必须插入 


--------------------------------------------------------------------------------

   /sbin/mount nfs_server:/export/linux/usr /usr


--------------------------------------------------------------------------------

到 



--------------------------------------------------------------------------------

   /export/linux//etc/rc.d/rc.S


--------------------------------------------------------------------------------

的第一行。在这□  指的是 machine1, machine2等等。 



--------------------------------------------------------------------------------

--------------------------------------------------------------------------------

6. 记忆体以及磁碟空间要求; 速度
我只在 Slackware 2.3上测试过;对於其他的供应商(Linux)套件或版本,下面的数字可能会不同。 

磁碟空间: 28MB + 6.5MB/每台机器 
RAM: 我在 8MB 上跑 X ,只需要 4MB swap 。我猜想,这个可以被建立-为每一部机器分别做-在 /tmp□面,请不要忘了执行 mkswap。 
速度: 我在一台有 8 Megs 的 486 DX2/66 机器上跑并无问题。 


--------------------------------------------------------------------------------

--------------------------------------------------------------------------------

7. 可能的错误

我发现一个奇怪的错误:在 /dev 子目录□, SunOS 搞错了设备名称,所以我被迫将这个子目录挂上一个有磁碟的 Linux 机器上来重新执行 MAKEDEV 。 (原因是因为 linux nfs 和 SunOs nfs是不同的: 两者都使用32 位元在主要及次要设备名称,但是linux 使用 16 位元宽度栏在两者上, SunOs 则使用 14 位元宽度栏给主要设备, 18 位元宽给次要设备号码。) 
当无磁碟 linux 被启动时,只有一个行径 route 会被放在 tftp 伺服器的行径表□ , 所以你需要设定正确的行径表。你有两种选择: 
手动建构每一台机器的每一个 rc.S 。 
或使用bootp 客户端套件并写一个通用的设定命令手稿 


--------------------------------------------------------------------------------

--------------------------------------------------------------------------------

8. 本文件中的错误以及更详细的解说

正确引用相关的文件。 
SunOs 是以 BSD 为基础,所以需要包含 SVR4 (如 Solaris) 为基础的伺服器建构。 
虽然 Linux 和 SunOs 都可以做为 bootp/tftp 伺服器,但是 Linux 会比较有用些。 
更新这份文件到最新的 etherboot 套件。 
指出核心程式版本1.2.13 在nfs root 修补後与新的 1.3.x 版(此版已包含了 nfs-root 的修补)的不同处。 
需要试试 wd8013 以外的其他乙太网路卡 
包含 bootpc的建构资讯,一个bootp 客户端来设定正确的 rooting 表。 
编排上或其他的错误:麻烦您告诉我一声,谢谢。 buci@math.klte.hu 

译者按: 若您发现本文件内容有翻译不顺畅或错误的地方,请您来信告诉我,以做更正,谢谢。 linuxer.bbs@cis.nctu.edu.tw。 


--------------------------------------------------------------------------------
上一篇:IP Masquerade mini HOWTO 人气:10746
下一篇:faxsrv-mini-HOWTO 传真机服务器 人气:7242
浏览全部Linux的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-10-14 25175学生成绩管理系统 v2.88
2008-10-14 冰雪CMS v2.0 bulid 081013
2008-10-14 Modoer多功能点评系统 v1.1 Beta
2008-10-14 乐风CMS乐风影视版 v2008.10.13
2008-10-14 FeitecCMS 40T免费资源网整站源码
2008-10-14 Asoft签到管理系统 v3.0 Pack2
2008-10-14 金博人才招聘求职网黄金版 v4.2
2008-10-14 游戏推广无限制版本
2008-10-14 AmEav WebSite 业网站管理系统 英
2008-10-11 联系人分组工具 v1.1 中文破解版
2008-10-11 FaceMelter变脸 v2.0 汉化破解版
2008-10-11 PathTracker道路跟踪仪 v1.2 破解
2008-10-11 Rooms手机聊天室 v0.6.7 破解版
2008-10-11 RemoteDesktop远程桌面 v1.0 破解
2008-10-11 ProRemote远程调音台 v1.0.1 破解
2008-10-11 PicShare照片共享 v1.0.0 破解版
2008-10-11 Photogene照片编辑器 v1.5 汉化破
2008-10-11 WriteRoom共享文档 v1.0 破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | js/vbs加密 | md5加密 | 进制转换 | UTF-8 转换工具 | Html转换js | Html转换asp | Html转换php | Html转换perl
实用工具:汉字翻译拼音 | 拼音字典 | 符号对照表 | 个税计算 | 实时汇率查询换算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 | 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵
SEO対策 中国語教室 ホームページ作成