📄 zip-install.txt
字号:
==> cp /usr/src/linux/arch/i386/boot/zImage /mnt/floppy/vmlinuzDESK 现在为了建立 LILO 的 config 档案,我忘了要有 liloconfig 这个程式 (感谢 Javier Rodriguez 提供这资料)。 首先给在 ZIP 磁片上的那些核心建立 LILO 的 config 档案 (/mnt/floppy/lilo.conf)。 下面是我使用的,能让我同时有不 同的核心可测试: ______________________________________________________________________ boot=/dev/fd0 map=/mnt/floppy/map install=/mnt/floppy/boot.b prompt compact timeout=50 image=/mnt/floppy/vmlinuzLAP label=Laptop root=/dev/sda1 read-only image=/mnt/floppy/vmlinuzDESK label=Desktop root=/dev/sda1 read-only image=/mnt/floppy/vmlinuzDESK label=rescue root=/dev/hdc1 read-only ______________________________________________________________________ 我有两个核心,一个是给需要在核心中有数学模拟程式的笔记型 486,另一是 给我桌上型电脑用。 其中 rescue 是为了让我可紧急开机到硬碟上。 最後,在软碟仍然挂载时,执行 LILO 去安装到软碟上: ==> lilo -C /mnt/floppy/lilo.conf 一旦 LILO 被安装好在磁片上,跳过下面两个步骤,除非你喜欢再做一遍。3.3.2.2. 单独核心的安装 --------------------------------------------------------------- NOTE:这不适於 LILO 的安装。 --------------------------------------------------------------- 拷贝新造的核心(kernel)到软碟上: ==> cp arch/i386/boot/zImage /dev/fd0 或 ==> cat arch/i386/boot/zImage > /dev/fd0 是的,虽然有许多方法可以拷贝核心到磁碟片上,但最後的方法是有一些神□, 也是我的最喜欢的。 试著不要忘记 '>',除非你喜欢看二元档案。 :)3.3.2.2.1. 设定软碟的根目录(root)和 swap --------------------------------------------------------------- NOTE:这不适合於 LILO 的安装。 --------------------------------------------------------------- 一旦核心在软碟上,你需要设定根目录设备(root device)到 ZIP磁片上: ==> rdev /dev/fd0 /dev/sda1 我不确定下一个选项是否必要,但我不管如何还是做了: ==> rdev -s /dev/fd0 /dev/sda2 ------------------------------------------------------------------ 译注: 根据作者的 ZIP 磁片分割法,/dev/sda1 是 Linux 的分区,/dev/sda2 是 swap 分区,若你的方法不同时,则必须改变 sda 後的数字为正确的分 区号码(Partition number)。 -------------------------------------------------------------------4. Red Hat 4.2 的安装 任何跟电脑有关的东西,三个月的可被认为是过时且需要更新。 因为我无法 总是有时间随著新版的推出而更新本文件,我会尽我最大的努力试著做到至少 每二版更改一次。 至於其他的发行版(Distribution),除非作者们愿意送更 新的来,它们将维持跟现在的内容一样。4.1. 个人的设备 在安装时,我拥有且使用 . Kernel 2.0.30 . Imoega ppa disk drive (印表机埠版的 ZIP 机) . Red Hat 4.24.2. 套件((Package)的安装 当我第一次试图安装 Red Hat 到一片 ZIP 磁片时,我觉得直接使用 Red Hat 的安装(启动)磁片(boot disk)会比较容易。 然後我做了。 我做到非常接近到 建立一个开机磁片,甚至经由 email 从 Red Hat 里许多的人那得到帮助。 但 最後在我发现 rpm 中有 '--root' 的选项时,我开始放弃这整个计划。4.2.1. 要安装那些套作(Package) 在阅读在一个我在 Red Hat 的备份站(Mirror)上找到的一个档案时,我发现那些 是要安装的套件。 那个档案可以在任何备份站(Mirror)上的 redhat/redhat-4.2/i386/RedHat/base/comps 内找到。 在这安装中,我想要包含网路的支援。 但因为 Red Hat 的 X视窗网路设定方 式,我将必须手工调整,或是相当手动地试著去设定在 /etc/sysconfig/ 内的 网路设置工作稿件(Network setup script)。(参照 4.3.3 节) 至少在没有用特殊修改的核心版本(Kernel version)下,在 ZIP 机中编译任何 程式是相当慢的,所以我决定不安装任何的发展软体套件(Development package)。 基於空间的考量,我也选择不安装 X视窗系统。 稍後,我会试图去挂上硬碟并建 立一个与 /usr 的符号连接(Symlink, Symbolic link),看看我是否可让 X视窗运 作。 下面以安装的顺序列出我安装的套件名单。 那些有打星号的表示从 Red Hat 的勘误(Errata)中有更新。 在括弧中则是更新的套件号码。 例如,NetKit-B-0.09-6 被更新到 NetKit-B-0.09-8,所以内容将是: *91) NetKit-B-0.09-6 (-8) ______________________________________________________________________ (此表是执行命令 rpm --root /iomega -qa 所产生) 1) setup-1.7-2 2) pamconfig-0.51-2 3) filesystem-1.3-1 4) MAKEDEV-2.2-9 5) adduser-1.7-1 6) libc-5.3.12-18 7) SysVinit-2.64-8 8) ash-0.2-8 9) at-2.9b-2 10) libtermcap-2.0.8-4 11) bash-1.14.7-1 12) bc-1.03-6 13) bdflush-1.5-5 14) cpio-2.4.2-4 15) cracklib-dicts-2.5-1 16) tmpwatch-1.2-1 17) crontabs-1.5-1 *18) db-1.85-10 (-11) 19) dev-2.5.1-1 20) diffutils-2.7-5 21) etcskel-1.3-1 22) file-3.22-5 23) fileutils-3.16-1 24) findutils-4.1-11 25) grep-2.0-5 26) groff-1.10-8 *27) ld.so-1.7.14-4 (-5) 28) getty_ps-2.0.7h-4 29) gzip-1.2.4-7 30) mingetty-0.9.4-3 *31) initscripts-2.92-1 (93-1) 32) ed-0.2-5 33) info-3.9-1 34) ncurses-1.9.9e-4 35) libg++-2.7.1.4-5 *36) pwdb-0.54-3 (-4) 37) rootfiles-1.5-1 *38) pam-0.57-2 (-4) 39) redhat-release-4.2-1 40) less-321-3 41) mount-2.5l-2 42) zlib-1.0.4-1 43) rpm-2.3.11-1 44) e2fsprogs-1.10-0 45) sysklogd-1.3-15 46) tar-1.11.8-11 47) passwd-0.50-7 48) gawk-3.0.2-1 49) gdbm-1.7.3-8 50) gpm-1.10-8 51) hdparm-3.1-2 52) kbd-0.91-9 53) slang-0.99.37-2 54) newt-0.8-1 55) kbdconfig-1.4-1 56) ncompress-4.2.4-7 *57) sh-utils-1.16-4 (-5) 58) procinfo-0.9-1 *59) logrotate-2.3-3 (4-1) 60) lilo-0.19-1 61) losetup-2.5l-2 62) linuxthreads-0.5-1 *63) mkinitrd-1.6-1 (7-1) 64) mailcap-1.0-3 *65) man-1.4h-5 (j-1) 66) mt-st-0.4-2 67) modules-2.0.0-5 68) mailx-5.5.kw-6 69) net-tools-1.32.alpha-2 70) procmail-3.10-10 71) procps-1.01-11 72) psmisc-11-4 73) quota-1.55-4 74) readline-2.0-10 75) sed-2.05-6 76) setconsole-1.0-1 77) sendmail-8.8.5-4 78) shadow-utils-960530-6 79) stat-1.5-5 80) tcsh-6.06-10 81) termcap-9.12.6-5 82) textutils-1.22-1 83) time-1.7-1 84) timeconfig-1.8-1 85) util-linux-2.5-38 86) vim-4.5-2 87) vixie-cron-3.0.1-14 88) which-1.0-5 89) zoneinfo-96i-4 90) tcp_wrappers-7.5-1 *91) NetKit-B-0.09-6 (-8) *92) lpr-0.18-1 (19-1) *93) bind-4.9.5p1-2 (9.6-1) *94) bind-utils-4.9.5p1-2 (9.6-1) *95) wu-ftpd-2.4.2b12-6 (b15-1) 96) anonftp-2.3-3 97) zip-2.1-1 98) unzip-5.12-5 99) statserial-1.1-7 100) minicom-1.75-2 101) lrzsz-0.12.14-1 102) dip-3.3.7o-9 103) ppp-2.2.0f-3 104) portmap-4.0-3 105) perl-5.003-8 *106) traceroute-1.0.4.4bsd-2 (1.4a5-1) *107) elm-2.4.25-7 (-8) 108) lynx-2.6-2 109) ncftp-2.3.0-5 110) pine-3.95-2 111) rdate-0.960923-1 112) apache-1.1.3-3 *113) nfs-server-2.2beta16-7 *114) nfs-server-clients-2.2beta16-7 (2.2beta16-8) (2.2beta16-8) ______________________________________________________________________ 而且在安装上面的全部後,我仍然剩下 32MB。4.2.1.1. 更新; 勘误 正如许多的 Red Hat 使用者知道,部分的套件可能被发现有一些安全漏洞,或 任何其他会引起争论发生的问题。 基於这个理由,Red Hat给这些套件发行更 新。 我已经更新那些我安装且有更新的套件,并且在上述的名单中标上星号。 请参考关於更新套件的Red Hat网页: http://www.redhat.com/support/docs/rhl/rh42-errata-general.html --------------------------------------------------------------------- NOTE: 在你可以更新那些套件前,你将必须如 3.3.1.1 中描述一样执行 ldconfig 。 ----------------------------------------------------------------------4.2.2. 如何在使用 rpm 而不用 glint 下安装 在 rpm 中,使用 --root 选项去特定挂载目录为安装置的根目录。 因为安装前 (Preinstall)和安装後(Postinstall)的执行稿(Script)基於不同的根目录而无法 正确地被执行,我已发现有许多套件无法安装。 所以使用 --noscripts 选项: ==> rpm --root /iomega -i --noscripts PACKAGE.i386.rpm 我肯定许多人会注意到,你会得到一个错误讯息像: ______________________________________________________________________ failed to open /iomega/var/lib/rpm/packages.rpm error: cannot open /iomega/var/lib/rpm/packages.rpm ______________________________________________________________________ 所以,只要建立 var/lib/rpm 的目录: ==> mkdir /iomega/var; mkdir /iomega/var/lib; mkdir /iomega/var/lib/rpm4.2.3. 那个先来, pamconfig 或 pam ? 假如任何人试图安装 pamconfig ,它将会抱怨关於 pam 的错误附属性(Depen- dency);当你再试著安装 pam 抱怨关於 pamconfig 的错误附属性! 这像鸡生 蛋、蛋生鸡问题一样困扰我一阵子,但要感谢 --nodeps 这个旗帜,我们可以强 迫 pamconfig 被安装; 除了 pamconfig 外,pam 另外有更多的错误附属性。 ==> rpm --root /iomega -i --nodeps --noscripts pamconfig-0.51-24.3. 套件安装後的问题 一旦所有的东西都安装好後,不幸的是,这磁片并不是功能完整的,假如可以这 麽说的话。 我的意思是,假如你现在试著从软磁开机的话,你将会没有多少进 展。 一旦 init 试著开始,你将会得到两个可爱的错误; 两个执行稿被运行且 会抱怨找不到已经安装的某些档案。4.3.1. 找不到 /etc/ld.so.cache 和 libc.so.5 的问题 假如你试著开机,你会得到两个错误,第一个是 /etc/ld.so.cache 档案失踪, 第二个是抱怨找不到 libc.so.5 。4.3.1.1. /etc/ld.so.cache 如许多读者所提到,我以前的方法并不是如所说的会动。 为了建立这个档案, 当 ZIP 磁片还挂载时,你将必须执行 ldconfig: ==> chroot /iomega; /sbin/ldconfig 感谢 Javier Rodriguez 的解答。4.3.1.2. libc.so.5 为了解决找不到 lib 的问题,你将必须建立一个安装执行稿应该做的符号联结 (Symlink): ==> cd /iomega/lib; ln -s libc.so.5.3.12 libc.so.5 感谢 Darcy Boese 的解答。4.3.2. 设定 root 的密码 正如在 4.3.1.1 中执行 ldconfig 一样,你可能也要为新系统改变或建立 root 的密码: ==> chroot /iomega; passwd root4.3.4. 安装程式所建立的东西 ------------------------------------------------------------------ NOTE: 这是一个非常简单的设定,一个我尚未能够测试是否会工作的。 理 论上应该会,但请不要送我不会动的抱怨。 ------------------------------------------------------------------ 当我翻阅我的 Red Hat 4.2 光碟片时,我看到一些相当有趣的东西; 安装程 式的原始程式码。 我发现它在 /misc/src/install 和一个有用的 net.c 。 在里面,我发现安装程式执行时,建立的那些档案。 大部分只是产生网路支 援(为什麽叫 net.c),即使你没有网路卡,你仍然可用 localhost 当做网路 (加上 Apache 会抱怨无法决定主机名称(hostname))。 这些档案包含: /etc/hosts /etc/HOSTNAME /etc/resolv.conf /etc/sysconfig/network /etc/sysconfig/network-scripts/ifcfg-eth0 (or any other network device you may have.) (或你可能有的其他网路装置。)4.3.4. 网路的设定 本文中,我需要有给我的 3COM 3c595 快速乙太网路卡的网路支援。 (这卡 在前几个月中被用在另一部机器上。)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -