龙珠超芭朵斯:制作精简centos光盘 新手教程

来源:百度文库 编辑:九乡新闻网 时间:2024/10/04 02:59:45

一.首先下载centos的dvd光盘

二.在物理或者虚拟机上正常安装centos系统

三.我们把centos光盘设置成本地源(为了以后打包方便)
1.建立文件夹
mkdir /media/CentOS

2.把光盘加载到本地
mount /dev/cdrom /media/CentOS

3.在/etc/yum.repos.d/目录下,有两个文件CentOS-Base.repo和CentOS-Media.repo 修改CentOS-Base.repo文件名
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak

4.使用本地源安装你需要的软件(不要使用yum -y install从网络安装文件 ),命令格式为:
yum -y –disablerepo =* –enablerepo=c5-media install xxx

5.从新启动下系统
reboot
   

四.安装制作iso用的程序包

安装前先加载光盘

mount /dev/cdrom /media/CentOS
yum -y –disablerepo =* –enablerepo=c5-media install anaconda repodata createrepo mkisofs

五.生成packages.list 所安装的RPM包文件清单(由于install.log文件在root目录,所以该操作在root目录进行)
cd /root

1.英文版命令:
cat install.log | grep Installing | sed ‘s/Installing //g’ > /root/packages.list

2.中文版命令:
cat install.log | grep 安装 | sed ‘s/安装 //g’ > /root/packages.list

六.修改packages.list文件,去掉(1:  2:)等等,注意只要是前面是数字+:的都要去掉
vi packages.list

七.建立定制Centos的源目录
mkdir /iso

八.将光盘内容加载到本地
mount /dev/cdrom /media/CentOS

九.复制光盘内容到iso目录下
cd /media/CentOS
tar -cf – . | ( cd /iso ; tar -xvpf – )

十.先删除所有RPM包
rm -rf /iso/CentOS/

十一.创建RPM包存放目录
mkdir /iso/CentOS/

十二.通过脚本复制系统安装的包
1.把rpm.sh放到root目录下

2.执行
cd /root
chmod 775 rpm.sh
./rpm.sh

十三.复制ks.cfg文件
cp anaconda-ks.cfg /iso/ks.cfg

十四.修改ks.cfg文件
cd /iso
vi ks.cfg

样板文件如下:
# Kickstart file automatically generated by anaconda.

install
cdrom
lang zh_CN.UTF-8
keyboard us
network –device eth0 –bootproto static –ip 192.168.1.10 –netmask 255.255.255.0 –gateway 192.168.1.254 –nameserver 192.168.1.254,8.8.8.8 –hostname host.7qy.com
rootpw –iscrypted $1$WRRPyyva$i9pd8/fpbpbs/0kHvVdQ10
firewall –enabled –port=22:tcp
authconfig –enableshadow –enablemd5
selinux –enforcing
timezone –utc Asia/Shanghai
bootloader –location=mbr –driveorder=hda
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work
#clearpart –linux –drives=hda
#part /boot –fstype ext3 –size=100 –ondisk=hda
#part pv.2 –size=0 –grow –ondisk=hda
#volgroup VolGroup00 –pesize=32768 pv.2
#logvol swap –fstype swap –name=LogVol01 –vgname=VolGroup00 –size=1024 –grow –maxsize=2048
#logvol / –fstype ext3 –name=LogVol00 –vgname=VolGroup00 –size=1024 –grow
  

%packages
@base
@chinese-support
@core
@dialup
@editors
@text-internet
keyutils
trousers
fipscheck
device-mapper-multipath

去掉rootpw –iscrypted $1$WRRPyyva$i9pd8/fpbpbs/0kHvVdQ10这一行,新装用户就可以设置自己的密码了

修改network –device eth0 –bootproto static –ip 192.168.1.10 –netmask 255.255.255.0 –gateway 192.168.1.254 –nameserver 192.168.1.254,8.8.8.8 –hostname host.7qy.com这一行为network –bootproto=query  –noipv6 –onboot=yes 这样新装用户就可以配置自己的网络了

修改#clearpart –linux –drives=hda为clearpart –all –initlabel
去掉
#part /boot –fstype ext3 –size=100 –ondisk=hda
#part pv.2 –size=0 –grow –ondisk=hda
#volgroup VolGroup00 –pesize=32768 pv.2
#logvol swap –fstype swap –name=LogVol01 –vgname=VolGroup00 –size=1024 –grow –maxsize=2048
#logvol / –fstype ext3 –name=LogVol00 –vgname=VolGroup00 –size=1024 –grow
这样新装用户就可以自己分区了
最后保存ks.cfg文件

十五.修改isolinux.cfg文件
cd isolinux

样板为:
default linux
prompt 1
timeout 600
display boot.msg
F1 boot.msg
F2 options.msg
F3 general.msg
F4 param.msg
F5 rescue.msg
label linux
  kernel vmlinuz
  append initrd=initrd.img
label text
  kernel vmlinuz
  append initrd=initrd.img text
label ks
  kernel vmlinuz
  append ks initrd=initrd.img
label local
  localboot 1
label memtest86
  kernel memtest
  append -

在append initrd=initrd.img text这一行下面加上
label auto
    kernel vmlinuz
    append ks=cdrom:ks.cfg initrd=initrd.img
保存isolinux.cfg文件

十六.生成comps.xml
cd /iso/
createrepo -g repodata/comps.xml /iso/

十七.制作IOS文件
cd /iso/
mkisofs -o MyCentOS.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T /iso/

会在/iso目录下生成MyCentOS.iso文件,这就是做好的精简版光盘镜像,复制出来就可以在其他机器上安装了

至于怎么加入其他软件在安装光盘里,1.使用光盘的rpm安装 比如安装mysql 那么生成packages.list文件的时候就包含了,如果是从网络上安装的mysql.rpm就需要把mysql-xxx.rpm复制到/iso/CentOS/目录下,如果使用源码编译安装的,就需要编写启动后脚本来执行安装,不在本问范围内,以后有时间继续…

rpm.sh脚本在附件里
rpm