定制iso系统

定制CentOS 5.5精简的自动安装版
1、安装制作发行版所需的基本软件包
yum  -y install createrepo mkisofs
2、生成安装系统所需的rpm文件列表
awk ‘/Installing/{print $2}‘ install.log |sed ‘s/^[0-9]*://g‘ >/root/CentOS.list
3、创建定制工作目录
mkdir -p /mnt/cdrom
mkdir -p /data/OS
mount /dev/cdrom /mnt/cdrom/
rsync -a --exclude=CentOS /mnt/cdrom/ /data/OS/
mkdir /data/OS/CentOS
4、复制精简后的RPM包
vi /data/cprmps.sh  #创建自动复制RPM包脚本
#!/bin/bash  
DEBUG=0 
CentOS_DVD=/mnt/cdrom  
ALL_RPMS_DIR=/mnt/cdrom/CentOS #源光盘RPM包存放的目录  
KOS_RPMS_DIR=/data/OS/CentOS    #精简后RPM包存放的目录  
CentOS_list=/root/CentOS.list  #精简后的RPM包列表  
number_of_CentOS=`cat $CentOS_list | wc -l`  
i=1 
    while [ $i -le $number_of_CentOS ] ; do  
        line=`head -n $i $CentOS_list | tail -n -1`  
        name=`echo $line | awk ‘{print $1}‘`  
        version=`echo $line | awk ‘{print $3}‘ | cut -f 2 -d :`  
    if [ $DEBUG -eq "1" ] ; then  
        echo $i: $line  
        echo $name   
        echo $version  
    fi  
    if [ $DEBUG -eq "1" ] ; then  
        ls $ALL_RPMS_DIR/$name-$version*  
        if [ $? -ne 0 ] ; then  
            echo "cp $ALL_RPMS_DIR/$name-$version* "  
        fi  
        else  
            echo "cp $ALL_RPMS_DIR/$name-$version* $KOS_RPMS_DIR/"  
            cp $ALL_RPMS_DIR/$name-$version* $KOS_RPMS_DIR/  
        # in case the copy failed  
        if [ $? -ne 0 ] ; then  
            echo "cp $ALL_RPMS_DIR/$name-$version* "  
            cp $ALL_RPMS_DIR/$name* $KOS_RPMS_DIR/  
        fi  
    fi  
i=`expr $i + 1`  
done

chmod u+x /data/cprmps.sh
.//data/cprmps.sh

5、配置kickstart脚本
cp /root/anaconda-ks.cfg /data/OS/isolinux/ks.cfg
#修改ks.cfg文件
vi /data/OS/isolinux/ks.cfg
# Kickstart file automatically generated by anaconda.
install
cdrom
lang en_US.UTF-8
keyboard us
network --device eth0 --bootproto dhcp
#root 密码123456
rootpw --iscrypted $1$jdjqFYQd$LrVDCZqFDpWjQDrxAzyb0/
firewall --disabled
authconfig --enableshadow --enablemd5
selinux --disabled
timezone --utc  Asia/Shanghai
bootloader --location=mbr --driveorder=sda
%packages
@base
@chinese-support
@core
@development-libs
@development-tools
@dialup
@editors
@legacy-network-server
@legacy-software-development
@mail-server
@network-server
@news-server
@server-cfg
@text-internet
@web-server
@smb-server
keyutils
trousers
fipscheck
device-mapper-multipath
perl-Convert-ASN1
imake

%post --nochroot  
%post  
#tunoff services
for i in `ls /etc/rc3.d/S*`
do
CURSRV=`echo $i | cut -c 15-`
echo $CURSRV
case $CURSRV in
crond | irqbalance | microcode_ctl | network | random | sendmail | sshd | syslog | local )
echo "Base services,skip!"
;;
*)
echo "change $CURSRV to off"
chkconfig --level 235 $CURSRV off
service $CURSRV stop
;;
esac
done
# disable ipv6
echo "alias net-pf-10 off" >> /etc/modprobe.conf
echo "alias ipv6 off" >> /etc/modprobe.conf
/sbin/chkconfig --level 35 ip6tables off
# file descriptors  
echo "ulimit -SHn 65535" >> /etc/profile
echo "* soft nofile 65536" >> /etc/security/limits.conf
echo "* hard nofile 65536" >> /etc/security/limits.conf
#set sysctl  
echo ‘‘>/etc/sysctl.conf
cat >>/etc/sysctl.conf<<eof
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
net.ipv4.tcp_max_tw_buckets = 60000
net.ipv4.tcp_sack = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_rmem = 4096        87380   4194304
net.ipv4.tcp_wmem = 4096        16384   4194304
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.core.netdev_max_backlog = 262144
net.core.somaxconn = 262144
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_fin_timeout = 1
net.ipv4.tcp_keepalive_time = 30
net.ipv4.ip_local_port_range = 1024    65000
fs.file-max = 102400
net.ipv4.ip_conntrack_max = 1048576
net.ipv4.netfilter.ip_conntrack_max = 131072
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 216000
eof
modprobe ip_conntrack
/sbin/sysctl -p  
 
#close ctrl+alt+del  
sed -i "s/ca::ctrlaltdel:\/sbin\/shutdown -t3 -r now/#ca::ctrlaltdel:\/sbin\/shutdown -t3 -r now/" /etc/inittab  
#modify ssh
sed -i ‘/AddressFamily/ a\UseDNS no‘ /etc/ssh/sshd_config

#add lib
touch /etc/ld.so.conf.d/default.conf
echo "/usr/lib" >> /etc/ld.so.conf.d/default.conf
echo "/usr/lib64" >> /etc/ld.so.conf.d/default.conf
echo "/usr/local/lib"  >> /etc/ld.so.conf.d/default.conf
echo "/usr/local/lib64" >> /etc/ld.so.conf.d/default.conf
#set purview   
chmod 600 /etc/passwd  
chmod 600 /etc/shadow  
chmod 600 /etc/group  
chmod 600 /etc/gshadow
%end

6、生成comps.xml
cd /data/OS
createrepo -g repodata/comps.xml  /data/OS/
7、让系统从kickstart配置启动安装
rm -rf /data/OS/isolinux/isolinux.cfg
vi /data/OS/isolinux/isolinux.cfg
default auto
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 auto
kernel vmlinuz
append ks=cdrom:/isolinux/ks.cfg initrd=initrd.img
label ks
kernel vmlinuz
append ks initrd=initrd.img
label local
localboot 1
label memtest86
kernel memtest
append -
8、生成ISO文件
cd /data/OS
declare -x discinfo=`head -1 .discinfo`
createrepo -u  "media://$discinfo" -g repodata/comps.xml /data/OS/
mkisofs -R -J -T -r -l -d -joliet-long -allow-multidot -allow-leading-dots -no-bak -o /data/Centos5.5_x64.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table /data/OS

时间: 2024-10-10 06:07:59

定制iso系统的相关文章

Ubuntu定制化系统ISO制作

一.安装工具 apt-get install squashfs-toolsapt-get install mkisofs二.挂载并解压系统ISO文件 在opt目录下进行操作cd /opt/mkdir mnt livecd tool 上传要定制化的系统ISO到 /opt/tool/ 挂载ISO镜像到 /opt/mnt/下mount /opt/tool/ubuntu-16.04.2-server-amd64.iso /opt/mnt/ 复制所有的镜像文件到/opt/livecd/下cp -rp /o

【DockerCon2017最新技术解读】使用Moby工具和Linuxkit定制容器系统

摘要: 在云栖TechDay34期:DockerCon2017最新的技术解读中,阿里巴巴技术专家王炳燊为大家解读了在DockerCon2017中新发布的Moby项目和Linuxkit项目,为大家详细地介绍了Moby与Docker的区别,以及Linuxkit的优势所在,并通过示例介绍了如何利用Moby工具和Linuxkit定制容器系统. 摘要:在云栖TechDay34期:DockerCon2017最新的技术解读中,阿里巴巴技术专家王炳燊为大家解读了在DockerCon2017中新发布的Moby项目

微领地小蜜平台定制APP系统

微领地小蜜平台定制APP系统何经理[188-2646-6502 微/电].微领地小蜜系统的核心宗旨是开放.便捷.实用.互联网的企业和企业的互联网本来就是一对共同体,它们的不同之处在于实施的主体不同.交易的平台不同和提供的产品服务不同. 对于国外互联网企业的背景和宏观发展环境分析,欧美等互联网企业发展较为成熟的发达国家值得我们去学习和借鉴.在对于国外互联网企业的分析中,主要分析美国.欧盟.英国和日本等互联网企业发展较为成熟的国家.国外互联网企业宏观资料来源:<中国人民银行:中国互联网企业稳定报告>

根据自己喜好定制Linux系统

1.修改Linux系统的启动菜单的背景图片 默认情况下,Linux系统启动时,grub菜单的背景图片为/boot/grub/splash.xpm.gz,启动时如图1所示,我们可以修改linux系统的grub菜单背景图片,此处我们修改为windos系统图片(具体可以根据自己的喜好修改). 图一 在使用前需要将图片转化为Linux系统支持的图片格式.xpm,需要使用convert命令转化,如果系统没有convert命令则需要安装软件包ImageMagick.转化过程如下: [[email prote

专业定制下载系统网站/下载网站源码,资源下载网站源码

10年的技术团队专业定制下载系统网站/下载网站源码,资源下载网站平台定制 该下载系统由绿茶科技团队自主开发,系统采用了国内比较主流的thinkPHP框架实现的,数据库用MySQL.是一套致力于软件应用,工具游戏,视频小说,教程资讯等通用资源下载的下载系统整站源码.模版设计整洁.清爽,广告位布局合理.会员积分体系完善,支持用户上传分享免费.收费资源. 下载收益支持用户提现. 分享有收益,刺激用户上传扩充网站资源,实现商家与平台联和共盈. PC版: 手机版: 服务器选择:  服务器购买地址:http

使用kernel编译+busybox定制Linux系统--实现ssh远程登录+web服务的迷你主机

在运维工作中很多时候我们需要裁剪Linux系统,减少系统性能的消耗,提升系统服务的性能,以往通过光盘安装的Linux都是比较臃肿的,但出现这样的需求后,我可以对Linux进行重新编译再busybox工具移植即可实现,接下来我们一步一步实现kernel编译+busybox定制Linux系统--实现ssh远程登录+web服务: 实现过程如下: 一.规划子主机的磁盘存储规划 1.添加一个大小为10G的硬盘 2.查询系统硬件信息参数: # lspci  00:00.0 Host bridge: Inte

英伦大厦游戏英伦大厦app定制开发系统

英伦大厦游戏英伦大厦app定制开发系统(微or电 158.1500.1390 小凡团队)英伦大厦系统开发,英伦大厦模式开发,英伦大厦游戏开发,英伦大厦盖楼游戏模式开发系统,英伦大厦系统平台定制开发 英伦大厦是什么? 英伦大厦是一款经营类游戏,此游戏高度形象的还原真实百货公司的故事场景,人性化的情节设计难易适中,细致巧妙的游戏布景道具让您感受到游戏的乐趣,力求为玩家们营造出一个身临其境的百货大厦,充分将娱乐休闲与经营店铺相结合,体验感十足! 英伦大厦英文名字:British building,据说

小程序微商城功能定制开发系统App

定制开发微信小程序购物商城的优势可多了,赢在移动小编今天带大家来了解下微信小程序购物商城的好处以及小程序购物商城关联微信公众号的好处. 1.商品二维码发布 小程序购物商城中的商城.商品.商品分类等页面都自带参数二维码,用户通过扫描直接进入商城购物. 2.成本低.操作便捷 无需开发APP,扫二维码无需下载即可运行小程序,提升用户体验. 3.分享推广,获客便利 微信小程序支持一键微信群.朋友圈,轻松将用户引导至自己的小程序,快速实现引流和营销. 4.功能丰富,完善的购物流程 赢在移动开发的微信小程序

定制Vpay系统平台开发

定制Vpay系统平台开发 ,Vpay系统模式开发(vx:131.2935.5821)是基于区块链技术开发的手机APP支付多功能钱包,无国界支付零手续费,主流虚拟平台,电子钱包扫码支付,全球性商城,是一款带有消费奖励的多功能网络支付工具. Vpay系统是是一个全面开放的网络支付平台,去中心化,国际化,基于区块链开发采用OPEN COIN (瑞波币算法进行优化),充值,提现,完全是点对点,用户资金更加安全,在手机端就能更方便,快捷的跨境转账支付,购物消费,通过流通产生价值的原理,赠送积分,还有挖矿功