准备环境:先手动安装一台centos6.4系统

①建立目录iso,挂载镜像
yum -y install createrepo mkisofs
mkdir /iso
mount /dev/cdrom /media

②copy镜像文件到 iso目录
cp -a /media/ /iso

③ 编辑ks.cfg文件

cat /iso/media/ks.cfg
#######################################################################################################

install
cdrom
keyboard us
lang en_US.UTF-8
network --device eth0 --bootproto static --ip 10.32.119.167 --netmask 255.255.248.0 --gateway 10.32.119.1 --hostname=s2-mb01.dds.com
text
key --skip
reboot --eject
rootpw Ad@sd119
firewall --enabled --port=22:tcp --port=80:tcp
authconfig --enableshadow --enablemd5
selinux --disabled
timezone Asia/Shanghai
#bootloader --location=mbr --driveorder=sda,sdb --append="crashkernel=auto rhgb quiet"
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"

# Partitioning
clearpart --all --initlabel
zerombr yes
part /boot --fstype="ext2" --size=200
part / --fstype="ext4" --size=20480
part /data --fstype="ext4" --size=1024 --grow
part swap --fstype="swap" --size=8192
%packages --ignoremissing
@ core
@ admin-tools
@ system-tools
@ text-internet
@ development-tools
openssl-devel
gcc
e2fsprogs
grub
lvm2
net-snmp
sysstat
iptraf
zlib
xinetd
lrzsz
cmake
make
automake
autoconf
libtool
telnet
tree

%post
#set DNS
echo "nameserver 10.32.119.89" >> /etc/resolv.conf
echo "nameserver 10.32.119.169" >> /etc/resolv.conf

#set ulimit
echo "ulimit -SHn 204800" >> /etc/rc.local
echo "ulimit -SHu 204800" >> /etc/rc.local

cat >> /etc/security/limits.conf << EOF
*          soft   nofile    204800
*          hard   nofile    204800
*          soft   nproc     204800
*          hard   nproc     204800
EOF

#add application
useradd application -d /data/application -u 500
echo application|passwd --stdin application

#set ntp
echo "*/50 * * * * /usr/sbin/ntpdate 10.33.0.81 > /dev/null 2>&1" > /var/spool/cron/root
service crond restart
/usr/sbin/ntpdate 10.33.0.81

# turnoff the control-alt-delete
sed -i 's#exec /sbin/shutdown -r now#\#exec /sbin/shutdown -r now#' /etc/init/control-alt-delete.conf

#config ssh
sed -i 's%#UseDNS yes%UseDNS no%' /etc/ssh/sshd_config
#sed -i 's%#PermitRootLogin yes%PermitRootLogin no%' /etc/ssh/sshd_config
sed -i 's/^GSSAPIAuthentication yes$/GSSAPIAuthentication no/' /etc/ssh/sshd_config
sed -i 's/#Port 22/Port 58422/' /etc/ssh/sshd_config

###authorized#####
if [ ! -d /root/.ssh ];then
        mkdir /root/.ssh/
fi
if [ ! -f /root/.ssh/authorized_keys ];then
        touch /root/.ssh/authorized_keys
fi
cat <<EOF > /root/.ssh/authorized_keys
ssh-dss AAAAB3NzaC1kc3MAAACBAOjLFumEeTJC6JMGQCT5eGu1QQ88AUs/qFplU3CYCeZfhlEH7rylYBdKFYXSCX/+4FGGKT8hHqcULlQX/bOLQNRJtJ5XWaJSMjipDM/q7W3d/oWCvjeFnYO2e/XecpTZcsHxBWyTdpz0kmbsPbptMH5jSrlQgVjMHDR3FB8J5PtDAAAAFQDo0T9ooVFKDJesdl1k96rHruv3BwAAAIEArIB3TbFlHbibTWIuiw/3mtAO+kaxDfyk1TisDOBO4eLundc5BZRJmve16vTPiZotEFMvsIvwBur8du8YHwUDVswaQwcxwozU0sr/KffDIMTT8nWRDMJMjaIKVN2SfgN7pBk2ThY0ppOgqlGNPcFu3qR25yXATiGxfICaqBrddggAAACATFp7yRoEw2msQata9ak2ZqM7sSURvNm2xTjrN0TtnE1wgQaovIIkJR7tLGWx4hy3jSjmyfbvfiPR83oCwqvxZvtifg87JMTi0FoNHi+aUUPP7u7WByjVUI1m6Fxsdo7qIDXjXZg8wIVWWS5Lo1tSBCHMFJLNpUCbEMLPqqNO8x0= root@b5msb
EOF

#disable ipv6
sed -i '2d' /etc/hosts
echo "alias net-pf-10 off" >> /etc/modprobe.d/dist.conf
echo "alias ipv6 off" >> /etc/modprobe.d/dist.conf
/sbin/chkconfig ip6tables off

#set inittab
sed -i '/tty[2-6]/s/^/#/' /etc/inittab

#services off
for svc in `chkconfig --list|grep 3:on|awk '{print $1}'`
do
chkconfig --level 3 $svc off
done

#services on
for svc in crond rsyslog sshd network
do
chkconfig --level 3 $svc on
done

#set sysctl
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 = 6000
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 = 1200
net.ipv4.ip_local_port_range = 1024 65535

net.ipv6.conf.all.disable_ipv6 = 1

vm.swappiness = 0

EOF
/sbin/sysctl -p
echo "sysctl set OK!!"

###SET YUM###
cat <<EOF > /etc/yum.repos.d/CentOS-Base.repo
# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client.  You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the #mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
[base]
name=CentOS-\$releasever - Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
baseurl=http://10.32.119.8:81/centos/\$releasever/os/\$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

#released updates
[updates]
name=CentOS-\$releasever - Updates
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
baseurl=http://10.32.119.8:81/centos/\$releasever/updates/\$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

#additional packages that may be useful
[extras]
name=CentOS-\$releasever - Extras
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
baseurl=http://10.32.119.8:81/centos/\$releasever/extras/\$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-\$releasever - Plus
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
baseurl=http://10.32.119.8:81/centos/\$releasever/centosplus/\$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
EOF

###SET EPEL###
cat <<EOF > /etc/yum.repos.d/epel.repo
[epel]
name=Extra Packages for Enterprise Linux 6 - \$basearch
baseurl=http://10.32.119.8:81/epel/6/\$basearch
#mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

[epel-debuginfo]
name=Extra Packages for Enterprise Linux 6 - \$basearch - Debug
baseurl=http://10.32.119.8:81/epel/6/\$basearch/debug
#mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-6&arch=$basearch
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
gpgcheck=1

[epel-source]
name=Extra Packages for Enterprise Linux 6 - \$basearch - Source
baseurl=http://10.32.119.8:81/epel/6/SRPMS
#mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-source-6&arch=$basearch
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
gpgcheck=1
EOF

###rpm###
cat <<EOF > /etc/yum.repos.d/rpmforge.repo
### Name: RPMforge RPM Repository for RHEL 6 - dag
### URL: http://rpmforge.net/
[rpmforge]
name = RHEL \$releasever - RPMforge.net - dag
baseurl = http://10.32.119.8:81/rpmforge/mirror/dag.wieers/redhat/el6/en/\$basearch/rpmforge
#mirrorlist = http://mirrorlist.repoforge.org/el6/mirrors-rpmforge
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge
enabled = 1
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1

[rpmforge-extras]
name = RHEL \$releasever - RPMforge.net - extras
baseurl = http://10.32.119.8:81/rpmforge/mirror/dag.wieers/redhat/el6/en/\$basearch/extras
#mirrorlist = http://mirrorlist.repoforge.org/el6/mirrors-rpmforge-extras
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge-extras
enabled = 0
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1

[rpmforge-testing]
name = RHEL \$releasever - RPMforge.net - testing
baseurl = http://10.32.119.8:81/rpmforge/mirror/dag.wieers/redhat/el6/en/\$basearch/testing
#mirrorlist = http://mirrorlist.repoforge.org/el6/mirrors-rpmforge-testing
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge-testing
enabled = 0
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
EOF
%end

###################################################################################################################

④编辑isolinux.cfg
cat /iso/media/isolinux/isolinux.cfg
###############################################################################################################
default elive
prompt 1
timeout 50
display boot.msg
menu background splash.jpg
menu title Welcome to CentOS 6.4!
menu color border 0 #ffffffff #00000000
menu color sel 7 #ffffffff #ff000000
menu color title 0 #ffffffff #00000000
menu color tabmsg 0 #ffffffff #00000000
menu color unsel 0 #ffffffff #00000000
menu color hotsel 0 #ff000000 #ffffffff
menu color hotkey 7 #ffffffff #ff000000
menu color scrollbar 0 #ffffffff #00000000
label elive
kernel vmlinuz
append ks=cdrom:/ks.cfg initrd=initrd.img
label linux
menu label ^Install or upgrade an existing system
menu default
kernel vmlinuz
append initrd=initrd.img
label vesa
menu label Install system with ^basic video driver
kernel vmlinuz
append initrd=initrd.img xdriver=vesa nomodeset
label rescue
menu label ^Rescue installed system
kernel vmlinuz
append initrd=initrd.img rescue
label local
menu label Boot from ^local drive
localboot 0xffff
label memtest86
menu label ^Memory test
kernel memtest
append -
##################################################################################################################

⑤精简rpm包缩小iso镜像文件,删除java、eclipse的rpm包,寻找占用空间大且不必要的rpm包删除

cd /iso/media/Packages/
ls|grep ^java |xargs rm -f
ls|grep ^eclipse|xargs rm -f

⑥ copy需要的comps.xml文件
cd /iso/media
createrepo -g repodata/*-comps.xml /iso/media/

注(如果是oracle Linux,就执行下面的命令)

createrepo -g repodata/*-comps-rhel6-Server.xml /iso/media/

⑦ 生成iso文件,在tmp目录下
mkisofs -r -T -V "CentOS" -input-charset utf-8 -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o /tmp/CENTOS_6.4_FINAL-NEW.iso /iso/media/

转载于:https://blog.51cto.com/jinyan2049/1353320

定制安装centos6.4系统 上汽集团线上环境相关推荐

  1. dell r720服务器raid5安装centos6.5系统

    服务器型号R720 已经配置好了raid,需要安装centos6.5系统 1.开机,按F10,进入系统引导界面,选择加载系统选项,并选择redhat 6.7选项 系统提示不支持,选择仍然继续,根据提示 ...

  2. ELK-日志收集系统在Centos上环境安装

    ELK-日志收集系统在Centos上环境安装 文章目录 ELK-日志收集系统在Centos上环境安装 前言 安装 elastcsearch6.5.4安装 准备 学习资料 启动 创建新用户 取掉只能本机 ...

  3. 使用优盘安装centos6.8系统

    使用优盘安装centos6.8系统 下载好centos 系统,使用UltraISO打开ISO文件,插入优盘(推荐>=8G)选择写入硬盘映像,然后制作好就可以了. 插入优盘,启动服务器,按不同服务 ...

  4. 教授专栏18 | 黄阳光: 建网络信誉系统 增线上促销成效

    文 / 黄阳光教授 跨境电子钱包PayPal于今年1月初发布一项中小企数码支付研究报告,发现60%受访中小企已经进行跨境贸易,并占受访者平均32%业务,当中有26%受访者已采用全球跨境支付方案.在线上 ...

  5. 记几次 [线上环境] Dubbo 线程池占满原因分析(第三次:GC STW)

    [线上环境] Dubbo 线程池占满原因排查系列 记几次 [线上环境] Dubbo 线程池占满原因分析(第一次:HttpClient) 记几次 [线上环境] Dubbo 线程池占满原因分析(第二次:C ...

  6. node开发环境(mac)和线上环境(linux)搭建

    以前一直在做php后台,对node没有认真研究,现在前端发展速度这么快,再加上node的飞速发展,javascript统一中原指日可待啊.em~~,废话不多说开始开发环境和线上环境搭建吧,写一下自己的 ...

  7. doctor mysql数据导入_线上环境mysql主从同步的搭建过程

    之前搭建过一套主从同步的mysql集群,但是是基于新数据库,而这次线上环境要升级成主从同步的集群,记录一下升级过程和中间遇到的各种问题. 由于是直接对线上数据库进行修改,因此要保证对线上环境造成尽量小 ...

  8. Keepalived+Nginx实现高可用,反向代理---模拟实现线上环境

    [前言] 在对Keepalived+Nginx进行了研究后,将这项技术推广上线,并配合运维进行网站搭建起来.经过一段时间的运行线上环境 运行已经稳定,不过自己还需要进行更加深入的研究:那么如何模拟线上 ...

  9. 生产环境和开发环境_环境部署:开发、测试和线上环境的区别

    点击蓝字 关注我们 软件开发环境(Software Development Environment,SDE)是指在基本硬件和宿主软件的基础上,为支持系统软件和应用软件的工程化开发和维护而使用的一组软件 ...

最新文章

  1. SecureCRT中sqlplus,使用Backspace删除时 ^H^H
  2. Java_异常_04_ OutOfMemoryError系列
  3. 【算法竞赛学习】资金流入流出预测-挑战Baseline_时间序列规则
  4. 训练(线段树+树状数组) poj——3264
  5. 语言怎么表示词谱_跨语言词表示方法(一)
  6. 张晨北京科技大学计算机,混合群智能优化算法研究及应用
  7. java处理金额大写为数字,Java中金额数字转换为大写数字
  8. 条形码是什么,主要有什么区别
  9. 安卓问题-第三方相关
  10. Matlab根据特征值排序特征向量
  11. Aho-Corasick 算法
  12. C# Bitmap引用System.Drawing报错 “...不存在类型命名空间名...”的修复
  13. 国产品牌积极布局,游戏手机会是行业增长新风口吗?
  14. 腾讯携手中科院国家天文台落地FAST 用云计算探索星辰大海
  15. 希腊海底失落之城最新打揭秘
  16. 魅族手机CUP浮点运算测试BUG
  17. Mac和Windows共享文件,不借助任何软件
  18. 自动驾驶--定位技术
  19. 【图像增强】基于萤火虫算法实现图像对比度增强附matlab代码
  20. BUSD停BUSD停止发行,从HAY的发行机制看去中心化稳定币的重要性

热门文章

  1. 对layoutInflater的理解
  2. 几个用于序列化的代码片段
  3. php7性能原理,php7卓越性能背后的原理有哪些?
  4. android cne服务,Android内存优化-了解内存篇
  5. for循环执行 mybatis_mybatis sql循环的使用
  6. 分布式机构 RPC远程过程调用
  7. 数据库知识:SQLServer变量相关知识介绍
  8. 计算机系统基础:设备管理采用的相关技术知识笔记
  9. Linux文件压缩命令笔记
  10. PC和服务器的IP地址信息DNS,PC和服务器的IP地址信息DNS