⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 remote-boot.txt

📁 Linux百科宝典 书籍语言: 简体中文 书籍类型: 系统专区 授权方式: 免费软件 书籍大小: 1024 KB
💻 TXT
📖 第 1 页 / 共 5 页
字号:
  硬碟的初始化与清理     在相同的目录下, 我们建立符号连结到 (或者直接用拷背指令)) bpclean 命名为   XXXclean (或者您认为可以帮助您记住这是用来清理您的客户端机器的名称) 并   且产生一个名为 XXXclean.tab 档叙述您客户端所需的硬碟分割区, 及您要联接   的开机影像档. 例如: 我们对 2 Gb 硬碟使用下面的方法       ______________________________________________________________     # 允许不超过 512 bytes 的说明叙述# 十六进制请在字首加一个 $ 钱字符# Part |       |  Part# type | Boot? |  Size   6      Y       +500 Mb  $82     N       +31 Mb  $83     N       -50 Mb   0# 联接的影像档/tftpboot/XXXmenu       ______________________________________________________________        完整的档案格式在後面会叙述. 现在您只要知道这些     * 分割区型态 6 是指 BIGDOS, ie. 如. DOS Fat-16 由 32Mb 到 500Mb     * 分割区型态 hex 82 是 Linux Swap     * 分割区型态 hex 83 是 Linux Ext2fs     * 大小如为负值,则表示我们的第三个分割区至少要占据 50 Mb     * 分割区型态 0 表示是 空的 (未使用的) 分割区.          现在, bpclean 在不清除分割区资料内容下,将重新写入主要开机计录(master   boot record), 当然也包括分割表.     作业系统选单     同样的, 建立符号连结 (或者直接拷贝) bpmenu 命名为 XXXmenu (或者你认为可   以帮助您记住 这是客户端机器开机选单的名称) 并且产生一个名为 XXXmenu.m   档叙述您客户端所需的开 机选单. 您比可以手动产生这个档案或透过我们写的开   机选单全营幕编辑器 [14]menuedit.exe. 例如, 假设您用下列这个档案:       ______________________________________________________________     .CLS 23.ATT 23.POS 23 4.WRT Simple Boot Menu                                         \.POS 23 5.WRT ----------------                                         \.POS 23 8.WRT 1. Boot from local hard disk                             \.POS 23 10.WRT 2. Boot DOS and Windows 3                                \.POS 23 12.WRT 3. Boot Windows 95                                       \.POS 23 14.WRT 4. Boot RedHat Linux                                     \.POS 23 17.WRT Your choice :                                            \.POS 37 17.KEY 1 :bphdboot.KEY 2 :linux.PX.KEY 3 :win31.P.KEY 4 :win95.P       ______________________________________________________________       测试开机程序     在您的 DHCP 设定档中加入您的客户端. 并设定开机影像档为   /tftpboot/XXXclean. 您可能需要重新启动您的 DHCP 伺服器使您的变更生效.      现在我们起动您的客户端. 您可以讯速的看到由 bpclean, 所送出来的讯息, 告   诉您它所建立的分割区的大小, 然後您会看到开机选单出现在您的营幕上. 您可   以用键盘上的 pause 键来 暂停以便读取刚刚的讯息, 但是这可能会导致 TFTP   的连接逾时.      如果您按下按键 1, 您将收到一个这样的讯息"开机分割区存在一个无效的开机磁   区" (the boot partition contains not valid boot sector). 对未被格式化过   的开机分割区而言这是正常的. 因 为我们现在还未建立任何开机影像档所以其他   的按键将会失效...      现在我们要开始安装各种作业系统. 您可依您的需要来决定先做那一种. 对任何   一种作业 系统, 您都需要先从软碟来做初始化的动作. 所以我们在看到 TCP/IP   Bootprom 的标志後立 刻按 space 键换成软碟开机.      有些作业系统会更动主要开机计录 (master boot record). 特别是 Linux   kernel loader (lilo) 会这样 做.而这种变动会因 bpclean这个程式而无法完   成, 因此您最好改变客户端的 DHCP 设定内 容使开机影像档直接跳到   /tftpboot/XXXmenu (不做清理的动作). 别忘了要使您的改变生效,您必需重新启   动 DHCP 伺服器.   3.2 设定 Linux   在您的客户端架设 [15]RedHat Linux 4.1 支援网路功能, kernel 原始程式码及   您所需要的软体套件. 准备未来要挂入的点 (放在 /mnt/tmp 比较有用), 设定您   的 X server, 等等. 在 /usr/src/linux-2.0.27 目录中, 您必须有 kernel   2.0.27 的原始程式码.      现在我们要加入一些修正档, 使它升级到 2.0.30, 并且支援 TCP/IP Bootprom   及档案快取的 功能. 档案快取是一个 把 "未确定的" NFS 档案储存在您硬碟中   的结构, 它您可以降低网路 负载. TCP/IP Bootprom 的支援已经由□Marc   Vuilleumier Stuckelberg 完成, 并且由 David Clerc 转移到 kernel 2.0 . 档   案快取已经由 Unifix GmbH 完成, 并且已 是 Unifix Linux 2.0 的一部份.   TCP/IP Bootprom 及档案快取的支援都已经由它们的作者免费的散布.      值得注意的是 Linux 对 NFS-Root 的支援只能架构在 BOOTP 通讯协定, 不是   DHCP 通讯协 定. 仅管 DHCP 只是 BOOTP 的延伸, Linux 也可以在 DHCP 伺服器   下工作 (如果您没有设 定 DHCP 伺服器拒绝 BOOTP要求).     产生 Kernel     首先, 到您的 /usr/src 目录并加入下列修正档, 使用这个指令      patch -p0 < 修正档的名称:     * [16]patch-2.0.28: 这是一个正式的 kernel 更新, 您一定要加入这个修正     * [17]patch-config-sound: 一个美化音效设定的修正档, 来自 Unifix       Linux 2.0     * [18]patch-PCSP: 一个较大的修正档用来使 PC 的扬声器模拟音效卡, 来自       Unifix Linux 2.0     * [19]patch-bootprom: 一个小的修正档用来产生特别的 kernel image, 使它       可由 TCP/IP Bootprom 开机     * [20]patch-filecache: 一个小的修正档使 kernel 加入一些特别功能, 如       Unifix filecache. 来自 Unifix Linux 2.0     * [21]patch-penguinlogo: 一个小的修正档帮助您的使用者等到 Linux 系统       完全载入     * [22]patch-2.0.29: 另一个小的正式的 kernel 更新档, 如果您不需要最新       版的 kernel 则不用加入它     * [23]patch-2.0.30: 又是一个正式的 kernel 更新档, 满大的. 一样, 您不       需要加入这项修正 (但它会改善 TCP/IP 通讯 协定). 如果在您的机器上 您       没有 alpha 的原始程式码 (这很有可能发生), 这个修正档将出现两次抱怨       含入档不存在的讯息. 不要紧张, 只要回答您要跳过这些缺少的档案,不会发       生任何问题          接著执行 make mrproper 及 make xconfig, 产生 kernel. 记住这将是客户端电   脑以 Linux 启动时, 唯一接收到的软体, 所以 它必须要包含启动整个作业系统   所需的东西. 可以使用模组方式, 但是不包括网路模组. 因为网路功能一定要放   在 kernel 中. 简而言之, 您的 kernel 至少需要 以下这些        * 支援网路     * 在有 BOOTP 通讯协定下,支援 NFS-Root     * 支援 filecache     * 支援客户端电脑的硬体所需的模组          您可以使用我们的 [24].config 当做起点. 如果您想要在没有 Bootprom 的状况   下测试, 请确定您 已经在 kernel 内包含硬碟机的支援.      当您的选择完成後, 照常地输入 make clean; make dep 接著 make zImage,   make modules 与 make modules_install. 这会花一点时间... 现在您准备去测   试您的新 kernel, 先用先用 lilo. 安装您的 kernel (参考 lilo 文件),并重新   启动您的电脑 (由硬碟启动). 如有任何错误, 修正它们并再试一次. 执行   depmod -a 计算 modules dependencies. 当完全无误时, 执行 make bpImage 产   生一个 bootimage 给 TCP/IP Bootprom 使用.     把 Root 档案系统移到 NFS     您的伺服器要有足够的空间来保存您的整个 Linux 档案系统 (几百   Megabytes). 建立一个新 的目录给 NFS 输出, 就叫 rootfs, 并在其中建立另一   个新目录就叫 runtime. 我们使用 /export/linux/rootfs/runtime. 把它输出成   只有您的 Linux 客户端可读可写, 并具有 root 的存取权 ( annon=0). 例如,   我们的 NFS 是在 Solaris 下执行, 我们用以下这个指令:      share -F nfs -o rw=pc7971,anon=0 /export/linux/rootfs/runtime.      在您的 Linux 客户端挂上这个分割区并用GNU tar 把整个 Linux 档案系统复制   过去 (预设是 RedHat Linux). 很重要的是当您使用 GNU tar 指令,因为所有的   tar 指令可能无法正确地处理 block device 的 special nodes . 然後编辑档案   /export/linux/rootfs/runtime/etc/fstab 并变更根目录的 设定,使根目录符合   以 nfs mount 取代自己的硬碟机. 你还要移去 (或者 至少要变更名称)   /export/linux/rootfs/runtime/etc/sysconfig/network-scripts/ifcfg-eth0   因为网路装置将由 NFS-root 初始化但不能被初始化两次.      现在在您的 /etc/lilo.conf 复制一行 linux, 例如:以 linux-nfs 为名, 并加   入以下的参数:      append="root=/dev/nfs nfsroot=/export/linux/rootfs/runtime nfsaddrs=您   的-ip:伺服器的-ip:闸道器的-ip:网路遮 罩:机器名称"      (您的-ip 是您的 Linux 客户端的 IP 位址,是以十进位有点的方法表示, 伺服器   的-ip 是 NFS 伺服器的 IP 位址, 闸道器的-ip 是 Linux 客户端的预设闸道   器, 网路遮罩 是 Linux 客户端的 网路遮罩 而 机器名称 是Linux 客户端的主   机名称). 再执行一遍 lilo , 重新启动您的电脑 (仍然是由硬碟机), 并选择   linux-nfs 开机设定. 您的电脑将如先前一般启动, 即使有一点慢. 如果在这里   有某些东西不能正常工作, 您只要重新开机用您原来 local的 linux 开机设定并   试 著修正它. 大部份的状况是, 您的 NFS root 设定错误. 如果有任何东西您不   了解, 看一下 /usr/src/linux/Documentation 这些档案... 您或许可以看看   [25]NFS-Root-Mini-Howto.      您可以再试一次,这次只用 append="root=/dev/nfs" 以确定 Linux kernel 可以   透过 DHCP/BOOTP要求而获得您所设定的 IP 参数. 如果 要这样做, 您必须在您   的 DHCP 设定档中加入以下 这些选项 (当然是要设定您自己的网路组态), 加上   您的机器的硬体及 IP 位址:       ______________________________________________________________     option subnet-mask 255.255.252.0;option routers 129.194.68.1;option root-path "/export/linux/rootfs";       ______________________________________________________________        如果您的 Linux kernel 须要再加入其它指令参数, 您可以用 option   option-177 来加入.      下一步要使我们的系统在 唯读的 NFS 档案系统下可以工作.     产生唯读的 NFS Root 档案系统     既然我们要我们的 root 档案系统在大部份的 Linux 客户端以唯读的方式挂上,   那就要使档 案系统有些微的不同, 因此我们将需要写入权限的地方以 ramdisk   或 filecache 取代. 我们把 这个档案系统建立在 /export/linux/rootfs 目录   下, 而标准的版本则直接放到 /runtime/ 下. 登入您 的 NFS 伺服器并在   /export/linux/rootfs目录下,建立以下的目录跟连结:        * bin -> cache/bin     * dev -> ramdisk/dev     * etc -> ramdisk/etc     * lib -> cache/lib     * root -> ramdisk/root     * sbin -> cache/sbin     * tmp -> ramdisk/tmp     * usr -> cache/usr     * var -> ramdisk/var     * cache/          + bin -> /runtime/bin          + lib -> /runtime/lib          + sbin -> /runtime/sbin          + usr -> /runtime/usr     * mnt/          + cdrom/          + floppy/          + tmp/     * proc/     * ramdisk/          + dev -> /runtime/dev          + etc -> /runtime/etc          + root -> /runtime/root          + tmp -> /runtime/tmp          + var -> /runtime/var          就如您所见的, 它看起来像正常的 root filesystem, 除了少部份几个是重新指   到 /ramdisk, 有 些则重新指到 cache 目录. 当用唯读的 NFS filesystem 开   机, 我们将挂上一个已初始化过的 ramdisk 放在 /ramdisk 下. 同样□ 自己硬   碟的分割区将被挂在 /cache 给 NFS 快取使用. 粗略的 说,这个档案快取的原理   是当the principle of the filecache is that whenever a symbolic link   from the cache subdirectory is followed, it is replaced by its target.   如果目标自己是一个子目录, 则每一个 子目录会转换成一个符号连结并连结到外   部档案系统的原始位置. 注意档案快取使用绝 对符号连结是必须的, 即使它们在   NFS 伺服器上是无意义的. 如果您不喜欢这样, 可以在 您的 NFS 伺服器上,建立

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -