Linux的系统安装:
linux系统的安装主要分为两类,一类是网络安装,另一类是本地安装。
网络安装:主要有NFS服务器、Ftp服务器和Http服务器来提供安装文件的yum源。
本地安装:主要是光盘安装和本次磁盘安装。

安装流程主要分为两大步骤:
配置阶段:配置阶段主要是对系统自带安装程序annconda的配置,不论是图形化界面是文字界面annconda都会引导用户一步步的对要安装的系统进行预设。
安装阶段:配置阶段结束后anaconda会按照用户的配置对系统的主体文件和各种服务文件进行安装。

安装过程不论是在图形化界面还是文字界面,都有anaconda都提供了较详细的说明和指导我这里就不再进行冗述,主要就分区的心得简单谈一谈:
 


 
/boot 挂载点单独分区,且应为基本磁盘分区(由于启动时逻辑卷和磁盘阵列无法被直接识别),大小100M足矣(主要用于存放grub、内核和initrd)
 

/ 根目录挂载单独分区,大小10G上下,最好使用逻辑卷(容量可浮动调整,且可快照备份)
/usr、/usr/local 此目录主要用于安装软件,大小20G上下,使用逻辑卷。
/var var目录主要存放日志文件、邮件、打印队列等,在系统的使用过程中会不断的变大,初始大小10G左右,使用逻辑卷。

下面介绍一种支持完全托管的安装方式:
原理是将设置好的anaconda配置文件,在安装前导入,使其完全遵循配置文件完成安装个步骤,且在安装过程中不在于用户进行交互。
anaconda配置文件的生成:
在图形化界面中运行system-config-kickstart命令(需要先安装对应的rpm包),在图形化对话框中进行安装配置,配置完成后生成ks配置文件。
安装时,在boot:后输入“linux ks=”ks文件源,文件源支持从cdrom、hd磁盘设备、file本地文件、ftp、http以及nfs,格式如下
ks=设备名、服务名:/

作者使用的是基于ftp服务的安装,安装时将含有boot.iso放入事先编辑好的ks文件,使用boot.iso进行引导。
 


 
下面是配置文件ks.cfg:
 
Anaconda Kickstart实现自动化安装linux _休闲text
Anaconda Kickstart实现自动化安装linux _休闲key --skip
Anaconda Kickstart实现自动化安装linux _休闲keyboard us
Anaconda Kickstart实现自动化安装linux _休闲lang en_US
Anaconda Kickstart实现自动化安装linux _休闲langsupport --default en_US en_US
Anaconda Kickstart实现自动化安装linux _休闲#network --bootproto dhcp
Anaconda Kickstart实现自动化安装linux _休闲network --bootproto=static --ip=172.16.24.1 --netmask=255.255.0.0 --gateway=172.16.0.1 --nameserver=172.16.0.1
Anaconda Kickstart实现自动化安装linux _休闲url --url ftp://172.16.0.1/pub
Anaconda Kickstart实现自动化安装linux _休闲logging --host=172.16.0.1
#由于使用ks文件安装,所以直接进入文本模式。由于使用ftp安装系统,要与ftp服务器通信需要开启dhcp或配置静态ip地址(此处配置静态ip安装,目的使新系统安装好后不用在对ip进行配置)
Anaconda Kickstart实现自动化安装linux _休闲zerombr yes
Anaconda Kickstart实现自动化安装linux _休闲clearpart --all
Anaconda Kickstart实现自动化安装linux _休闲part swap --size 1024
Anaconda Kickstart实现自动化安装linux _休闲part /boot --size 100
Anaconda Kickstart实现自动化安装linux _休闲part pv.01 --size 51200
Anaconda Kickstart实现自动化安装linux _休闲volgroup vol0 pv.01
Anaconda Kickstart实现自动化安装linux _休闲logvol / --vgname=vol0 --size=10000 --name=root
Anaconda Kickstart实现自动化安装linux _休闲logvol /home --vgname=vol0 --size=500 --name=home
Anaconda Kickstart实现自动化安装linux _休闲logvol /var --vgname=vol0 --size=10000 --name=var
Anaconda Kickstart实现自动化安装linux _休闲logvol /usr --vgname=vol0 --size=10000 --name=usr
Anaconda Kickstart实现自动化安装linux _休闲logvol /usr/local --vgname=vol0 --size=10000 --name=usrlocal
Anaconda Kickstart实现自动化安装linux _休闲timezone Asia/Shanghai --utc
#清空磁盘MBR和所有安装区域,设置磁盘交换区大小、/boot所在磁盘类型和大小以及配置lvm和时区
Anaconda Kickstart实现自动化安装linux _休闲xconfig --resolution=1024x768 --depth=16 –startxonboot
Anaconda Kickstart实现自动化安装linux _休闲rootpw redhat
Anaconda Kickstart实现自动化安装linux _休闲authconfig --useshadow --enablemd5
Anaconda Kickstart实现自动化安装linux _休闲firewall --disabled
Anaconda Kickstart实现自动化安装linux _休闲bootloader
Anaconda Kickstart实现自动化安装linux _休闲reboot
#设置root初始密码为redhat
Anaconda Kickstart实现自动化安装linux _休闲%packages
Anaconda Kickstart实现自动化安装linux _休闲@ GNOME Desktop Environment
Anaconda Kickstart实现自动化安装linux _休闲@ X Window System
Anaconda Kickstart实现自动化安装linux _休闲@ Printing Support
Anaconda Kickstart实现自动化安装linux _休闲# KDE is huge...install it if you wish
Anaconda Kickstart实现自动化安装linux _休闲#@ KDE
Anaconda Kickstart实现自动化安装linux _休闲@ Development Tools
Anaconda Kickstart实现自动化安装linux _休闲#@ Windows File Server
Anaconda Kickstart实现自动化安装linux _休闲#@ Web Server
Anaconda Kickstart实现自动化安装linux _休闲elinks
Anaconda Kickstart实现自动化安装linux _休闲openssh
Anaconda Kickstart实现自动化安装linux _休闲openssh-server
Anaconda Kickstart实现自动化安装linux _休闲openssh-clients
Anaconda Kickstart实现自动化安装linux _休闲vim-enhanced
Anaconda Kickstart实现自动化安装linux _休闲samba-common
Anaconda Kickstart实现自动化安装linux _休闲samba-client
Anaconda Kickstart实现自动化安装linux _休闲gimp
Anaconda Kickstart实现自动化安装linux _休闲gimp-data-extras
Anaconda Kickstart实现自动化安装linux _休闲enscript
Anaconda Kickstart实现自动化安装linux _休闲libcap
Anaconda Kickstart实现自动化安装linux _休闲ntp
Anaconda Kickstart实现自动化安装linux _休闲coreutils
Anaconda Kickstart实现自动化安装linux _休闲elfutils
Anaconda Kickstart实现自动化安装linux _休闲elfutils-libelf
Anaconda Kickstart实现自动化安装linux _休闲gimp-print-plugin
Anaconda Kickstart实现自动化安装linux _休闲gnome-icon-theme
Anaconda Kickstart实现自动化安装linux _休闲gstreamer
Anaconda Kickstart实现自动化安装linux _休闲gstreamer-tools
Anaconda Kickstart实现自动化安装linux _休闲libgnomeprint22
Anaconda Kickstart实现自动化安装linux _休闲libgnomeprintui22
Anaconda Kickstart实现自动化安装linux _休闲libgsf
Anaconda Kickstart实现自动化安装linux _休闲libIDL
Anaconda Kickstart实现自动化安装linux _休闲libraw1394
Anaconda Kickstart实现自动化安装linux _休闲nautilus-cd-burner
Anaconda Kickstart实现自动化安装linux _休闲openmotif
Anaconda Kickstart实现自动化安装linux _休闲pyorbit
Anaconda Kickstart实现自动化安装linux _休闲startup-notification
Anaconda Kickstart实现自动化安装linux _休闲ttmkfdir
Anaconda Kickstart实现自动化安装linux _休闲firefox
Anaconda Kickstart实现自动化安装linux _休闲mutt
Anaconda Kickstart实现自动化安装linux _休闲screen
Anaconda Kickstart实现自动化安装linux _休闲#定制随系统安装的软件包
Anaconda Kickstart实现自动化安装linux _休闲%post
Anaconda Kickstart实现自动化安装linux _休闲ntpdate -b 172.16.0.1
Anaconda Kickstart实现自动化安装linux _休闲hwclock --systohc –utc
Anaconda Kickstart实现自动化安装linux _休闲
Anaconda Kickstart实现自动化安装linux _休闲cat > /etc/ntp.conf <<END
Anaconda Kickstart实现自动化安装linux _休闲restrict default ignore
Anaconda Kickstart实现自动化安装linux _休闲restrict 127.0.0.1
Anaconda Kickstart实现自动化安装linux _休闲restrict 172.16.0.1
Anaconda Kickstart实现自动化安装linux _休闲server 172.16.0.1
Anaconda Kickstart实现自动化安装linux _休闲driftfile /var/lib/ntp/drift
Anaconda Kickstart实现自动化安装linux _休闲broadcastdelay 0.008
Anaconda Kickstart实现自动化安装linux _休闲
Anaconda Kickstart实现自动化安装linux _休闲END
Anaconda Kickstart实现自动化安装linux _休闲
Anaconda Kickstart实现自动化安装linux _休闲echo "172.16.0.1" >> /etc/ntp/step-tickers
Anaconda Kickstart实现自动化安装linux _休闲chkconfig ntpd on
Anaconda Kickstart实现自动化安装linux _休闲
Anaconda Kickstart实现自动化安装linux _休闲useradd student
Anaconda Kickstart实现自动化安装linux _休闲echo "student" | passwd --stdin student
Anaconda Kickstart实现自动化安装linux _休闲useradd visitor
Anaconda Kickstart实现自动化安装linux _休闲echo "password" | passwd --stdin visitor
Anaconda Kickstart实现自动化安装linux _休闲mkdir /home/student/Desktop
Anaconda Kickstart实现自动化安装linux _休闲${httpget} -source http://172.16.0.1/pub/gls/ClassInteractives.desktop > /home/student/Desktop/Class\ Interactives.desktop
Anaconda Kickstart实现自动化安装linux _休闲chown -R student:student /home/student/Desktop
Anaconda Kickstart实现自动化安装linux _休闲perl -pi -e 's,DAILY_UPDATE=no,DAILY_UPDATE=yes,g' /etc/updatedb.conf
#post后跟在系统安装结束需要运行的脚本
将ks.cfg文件 isolinux文件夹和TRANS.TBL放入./iso文件中
然后使用命令:
 
Anaconda Kickstart实现自动化安装linux _休闲# mkisofs -o boot.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T iso/
将ios目录封装成名为boot.iso的iso景象文件,刻录成启动盘。