来一发基于收集的Red Hat Linux无人值守安装
在学习初期,你一定会遇到很多困难,或者说各种困难,所以你最好先将你linux中的重要内容备份,因为,在你学习的过程中,很可能将系统搞废(eg:源混乱等);1.计划先容
这类计划必要起首设置一个启动服务器和一个安装服务器(能够设置在统一台物理机上),然后经由过程收集启动寄存在启动服务器上的安装程序。安装程序会主动会见寄存在安装服务器上的安拆卸置文件和安装介质来完成安装。
触及到的手艺
该计划次要使用了三种手艺:
1)在PC上从收集启动RedHatLinux安装程序的PXE协定
2)RedHatLinux安装程序供应的收集安装功效(即指经由过程收集会见安装介质)
3)RedHatLinux安装程序供应的无人值守安装功效(RedHat称为kickstart)
手艺1)和2)在参考材料1和2里已有部分先容。本文将重点形貌参考材料中未触及部分和无人值守安装功效。
软硬件需求
要按本文先容的办法完成主动化安装,你必要以下软硬件资本:
一台PC呆板作为启动和安装服务器(别的架构呆板也能够)
一台待安装的PC呆板,它的网卡必需带有PXE撑持
一个建好的局域网,上述两台呆板已毗连进统一子网
待安装的RedHatLinux安装介质
该计划的完成步骤
1)设置启动服务器
2)设置安装服务器
3)从收集启念头器以完成安装
步骤1)和2)只需做一次便可。对每台需安装RedHatLinux的呆板,都必要在启动服务器和安装服务器中部署响应的数据,并实行一次步骤3)。
上面将率领您一一实行这些步骤。为了复杂,我将用示例来讲明怎样在一台安装了RedHatEnterpriseLinuxAS3Update5的PC机上设置启动服务器和安装服务器,并在一台PC上安装RedHatEnterpriseLinuxAS4Update2.
2.步骤1:设置启动服务器
启动服务器的目标是匡助在待安装呆板上启动RedHatLinux安装程序。启动服务器上必要搭建一个DHCP服务器和一个TFTP服务器。前者是为了给待安装呆板分派IP地点,后者则是供应了一个让待安装呆板下载启动镜像的路子。
设置DHCP服务器
1)安装DHCP服务器包(RPM包名:dhcpd)。
2)编纂DHCP服务器设置文件/etc/dhcp.conf.这里是一个示例:
optiondomain-name"mydomain";
ddns-update-stylenone;
max-lease-time7200;
server-name"bootserver";
default-lease-time600;
allowbooting;
allowbootp;
subnet192.168.138.0netmask255.255.255.0{
range192.168.138.1192.168.138.254;
denyunknown-clients;
}
grouppxe{
filename"pxelinux.0";
hosttestserver{hardwareethernet00:0C:29:70:24:5B;fixed-address
192.168.138.30;}
}
在这个例子中,界说的子网是192.168.138.0/255.255.255.0.主机界说项testserver指出IP地点192.168.138.30将分派赐与太网卡00:0C:29:70:24:5B(待安装呆板),文件pxelinux.0(在TFTP服务器的根目次中)将作为启动映像被网卡ROM里的PXE客户端载进内存并运转。
每增添一台需安装的呆板,我们需在dhcpd.conf中增添一条host条目。
3)给启动服务器设置一个IP,这个IP必需在DHCP服务器界说的子网内。
这里我们利用192.168.138.1.关于怎样为RedHatLinux体系设置IP地点,请查阅参考材料3.
4)启动DHCP服务。
#servicedhcpdrestart
设置TFTP服务器
1)安装TFTP服务器包(RPM包名:tftpd)。
2)编纂TFTP服务器的设置文件/etc/xinetd.d/tftp.设置文件以下:
servicetftp
{
socket_type=dgram
protocol=udp
wait=yes
user=root
server=/usr/sbin/in.tftpd
server_args=-s/tftpboot
disable=no
}
这里选定了/tftpboot为TFTP服务器的根目次地位。
3)将Linux安装程序的内核/根文件体系文件复制到TFTP服务器的根目次。关于每个要被安装的RedHatLinux版本,都必要实行一次该操纵。
RedHatLinux第一张安装光盘/isolinux目次下会包括Linux安装程序的内核/根文件体系文件。上面一段命令将这些文件复制到TFTP服务器的根目次下,并依照版本从头定名。
#mkdir/mnt/iso
#mount-oloop,roRHEL4-U2-i386-AS-disc1.iso/mnt/iso
#cp/mnt/iso/isolinux/initrd.img/tftpboot
#cp/mnt/iso/isolinux/vmlinuz/tftpboot
#mv/tftpboot/initrd.img/tftpboot/initrd-rhel4u2-i386.img
#mv/tftpboot/vmlinuz/tftpboot/vmlinuz-rhel4u2-i386
4)将启动镜像文件pxelinux.0复制到TFTP服务器根目次。
启动镜像pxelinux.0能够在syslinux安装包里取得。安装好syslinux安装包后,将pxelinux.0复制到TFTP服务器根目次。
#cp/usr/lib/syslinux/pxelinux.0/tftpboot/
5)编纂pxelinux.0的设置文件,以使pxelinux能够准确载进RedHatLinux安装程序。关于每个要被安装的RedHatLinux版本,都必要实行一次该操纵。
启动镜像pxelinux.0文件在实行过程当中,会读取设置文件以断定它应当载进甚么Linux内核文件来运转。一切的设置文件都放在启动服务器的/tftpboot/pxelinux.cfg/目次下。pxelinux.0依据必定的划定规矩来搜刮符合的设置文件名。举例来讲,关于后面为待安装呆板分派的IP地点192.168.138.30(十六进制暗示为C0A88A1E),pxelinux.0会按以下序次搜刮设置文件:
C0A88A1E>C0A88A1>…>C0>C>default
就是说,假如C0A88A1E文件存在,它就是pxelinux.0将载进的设置文件。不然,持续往下找。假如C0A88A1文件存在,它就是pxelinux.0将载进的设置文件。假如后面的以C开首的文件都不存在,那末pxelinux.0将试图从文件default中读取设置。关于一台必要撑持良多安装呆板的安装服务器来讲,将设置写在与IP地点对应的文件里很不天真。把一切设置都会合在default文件中是个不错的主张,能够加重设置文件保护包袱。
能够将能想到的RedHatLinux版本的设置都写在default文件里,以便同时撑持多种RedHatLinux版本,以下所示(关于详细某个RedHatLinux版本,对应的行该怎样写,能够参考它安装盘里的设置文件/isolinux/isolinux.cfg):
DEFAULTrhel4u2-i386
DISPLAYpxelinux.cfg/list
PROMPT1
LABELrhel3u6-i386
KERNELvmlinuz-rhel3u6-i386
APPENDinitrd=initrd-rhel3u6-i386.img
LABELrhel3u6-x86_64
KERNELvmlinuz-rhel3u6-x86_64
APPENDinitrd=initrd-rhel3u6-x86_64.imgdevfs=nomountramdisk_size=9216
LABELrhel4u2-i386
KERNELvmlinuz-rhel4u2-i386
APPENDinitrd=initrd-rhel4u2-i386.imgramdisk_size=8192
如许用户能够经由过程输出某种版本的LABEL(比方,rhel4u2-i386)来选择详细的安装版本。为了能在安装时晓得有哪些备选,可让pxelinux.0提醒要户选择之前显现一个列表。这经由过程在default里指定DISPLAY选项来完成。
在下面的样例中,我们将一切备选RedHatLinux版本列在文件pxelinux.cfg/list中,它的内容会被pxelinux.0显现出来。
在我们的例子中,/tftpboot/pxelinux.cfg/list文件内容以下:
ChooseoneofthefollowingLinuxdistributionsforyourinstallation:
NameDistributionArch.Installationmedia
-------------------------------------------------------------------------
rhel3u6-i386RHEL3ASU6i386192.168.138.1:/instsvr/i386/rhel3u6
rhel3u6-x86_64RHEL3ASU6x86_64192.168.138.1:/instsvr/x86_64/rhel3u6
rhel4u2-i386RHEL4ASU2i386192.168.138.1:/instsvr/i386/rhel4u2
6)启动TFTP服务。
#servicexinetdrestart
3.步骤2:设置安装服务器
安装服务器在安装时代供应对Linux安装介质和无人值守安拆卸置文件的会见。安装介质存储在服务器上的一个目次中,可使用各类收集协定会见它,好比HTTP,FTP,和NFS.利用NFS协定,RedHatLinux安装程序能够撑持多种安装介质目次布局,特别是撑持ISO光盘镜像文件。这里我们选择利用NFS协定来会见安装介质。
设置NFS服务器
1)筹办ISO安装介质。将RedHatLinux安装介质的ISO文件都安排到/instsvr目次下。注重不要改动文件名。
#mkdir/instsvr
#mvRHEL4-U2-i386-AS-disc1.iso/instsvr/i386/rhel4u2
#mvRHEL4-U2-i386-AS-disc2.iso/instsvr/i386/rhel4u2
#mvRHEL4-U2-i386-AS-disc3.iso/instsrv/i386/rhel4u2
#mvRHEL4-U2-i386-AS-disc4.iso/instsrv/i386/rhel4u2
2)编纂NFS服务器设置文件/etc/exports,以同意别的呆板经由过程NFS会见目次/instsrv./etc/exports文件内容以下:
/instsvr*(ro,no_root_squash,sync)
个中:
*暗示任何IP地点都能够会见该目次。为了平安的思索,也能够指定详细的IP地点。
ro暗示远程呆板对该目次只要读权限。
别的选项请参考NFS手册。
3)从头启动NFS服务以使新设置失效
#serviceportmaprestart;servicenfsrestart
4)检测目次/instsrv是不是已被准确共享
#showmount-elocalhost
Exportlistforlocalhost:
/instsrv*
如许,我们就设置好了一个安装服务器。很复杂吧!
设置kickstart安装
自从5.2版入手下手,RedHatLinux入手下手撑持一个称为kickstart的功效,其次要目标是为了削减安装过程当中的人机交互,进步安装效力。利用这类办法,只需事前界说好一个设置文件(一般寄存在安装服务器上),并让安装程序晓得该设置文件的地位,在安装过程当中安装程序就能够本人从该文件中读取安拆卸置,如许就制止了烦琐的人机交互,完成无人值守的主动化安装。
要利用kickstart,你必需:
1)创立kickstart设置文件。
2)部署kickstart设置文件,行将kickstart设置文件安排到安装服务器上,并在安装程序的kernel参数中指定kickstart设置文件的地位。
创立kickstart设置文件
kickstart设置文件是一个复杂的文本文件,包括一个安装项目列表。每一个项目对应于一个安装选择,都用关头字标明。
有以下几种办法天生kickstart设置文件:
RedHat供应了一个样例文件。在RedHatLinux文档光盘中RH-DOCS目次里的sample.ks文件。你能够基于该样例来创立你本人的设置kickstart文件。
每当你安装好一台RedHatLinux呆板,RedHatLinux安装程序城市创立一个kickstart设置文件,纪录你的实在安拆卸置。假如你但愿完成和某体系相似的安装,能够基于该体系的kickstart设置文件来天生你本人的kickstart设置文件。
RedHatLinux供应了一个图形化的kickstart设置工具。在任何一个安装好的RedHatLinux体系上运转该工具,就能够很简单地创立你本人的kickstart设置文件。kickstart设置工具命令为redhat-config-kickstart(RHEL3)或system-config-kickstart(RHEL4)
浏览kickstart设置文件的手册。用任何一个文本编纂器都能够创立你本人的kickstart设置文件。
这里有一个kickstart设置文件样例:
注重:笔者在此处删除原文的kickstart样例,由于,分歧公司有分歧的安装需求,放一个样例在这里其实没有甚么意义。
关于kickstart文件,有一点值得我们注重,那就是%post今后代表完成体系安装以后将要实行的命令,我们能够在此设置体系,好比调剂内核参数,设置主机防火墙等等。
一切以"#"号开首的都是正文。
文件中的nfs――server=192.168.138.1――dir=/instsvr/i386/rhel4u2选项告知安装程序:到服务器192.168.138.1的NFS共享目次/instsvr/i386/rhel4u2下寻觅安装介质。RedHatLinux安装程序充足伶俐,能够辨认该目次下应当被读取的ISO光盘镜像
12下一页
功能实在太强了,在配合exec参数或者通过管道重定向到xargs命令和grep命令,可以完成非常复杂的操作,如果同样的操作用图形界面的工具来完成,恐怕要多花十几陪的时间。
来一发基于收集的Red Hat Linux无人值守安装
在这里你会学到更多的知识,学习linux,更要学习一种geek的精神,python之禅中也说过:以总结分享为荣,以跪求其解为耻;文件名,一切这里你不必要指定ISO文件名。</P>关于kickstart设置文件撑持的一切选项及其信任申明,请查阅参考材料3.
部署kickstart设置文件
起首我们必要把kickstart设置文件放在安装服务器上。我们把它放到/instsvr/ks目次下。即该文件的NFS会见路径为:
nfs:192.168.138.1:/instsvr/ks/ks.cfg
其次,我们必要让安装程序晓得我们但愿它用kickstart体例安装,并告诉它能够从那里取得kickstart设置文件。这能够经由过程给内核增加一个参数"ks=kickstart设置文件路径"来完成。我们只需对启动服务器上的default文件做一些小修正就能够做到这点:
LABELrhel4u2-i386
KERNELvmlinuz-rhel4u2-i386
APPENDks=nfs:192.168.138.1:/instsvr/ks/ks.cfginitrd=initrd-rhel4u2-i386.img
ramdisk_size=8192
如许在启动安装程序的时分,参数ks=nfs:192.168.138.1:/instsvr/ks/ks.cfg会被传送给它,告知它利用这个文件作为kickstart设置文件来举行kickstart安装。
5.步骤3:从收集启念头器以完成安装
后面的设置事情完成后,上面我们就在待安装呆板上经由过程收集以无人值守的体例来安装RedHatEnterpriseLinuxAS4Update2.
启动待安装呆板,选择从网卡启动。详细办法因BIOS版本分歧而异
</p>上一页12
RedHatCentOS等等.学习linux不是逛自由市场,选定版本就要静下心来学习.不要今天换版本明天要升级.这样对你没有好处。 通过自学老师给的资料和向同学请教,掌握了一些基本的操作,比如挂载优盘,编译程序,在Linux环境下运行,转换目录等等。学了这些基础才能进行下面的模拟OS程序。? 熟悉操作是日常学习Linux中的三大法宝。以下是作者学习Linux的一些个人经验,供参考: 生成新的unispimsp.ksc。”另外得到回复后如果问题解决,向帮助过你的人发个说明,让他们知道问题是怎样解决的。 应对Linux的发展历史和特点有所了解,Linux是抢占式多任务多用户操作系统,Linux最大的优点在于其作为服务器的强大功能,同时支持多种应用程序及开发工具。 我们这一代90后,从小接触的是windows98,家里条件好的自己有电脑装的是2000,后来又有了XP,上大学时又有了win7。 就这样,我们一边上OS理论课,一边上这个实验,这样挺互补的,老师讲课,一步一步地布置任务 如果上面的措施没有解决问题,此时你就需要Linux社区的帮助了。 Linux的使用者一般都是专业人士,他们有着很好的电脑背景且愿意协助他人。
页:
[1]