精简系统服务:关闭多余系统服务
优化vim编辑器:增加关键字高亮显示功能
加入一些别名规则:grep --color=auto 和 netstat -tunlp
优化软硬节点限制
改进系统密码由用户输入
============================================================
实验环境:VMware CentOS5.6(64bit)
根据自己的习惯,将CentOS重新打包成一个新ISO,可以自动分区、选择原件包,快速安装系统.
先用虚拟机按照正常的流程安装一个CentOS系统,接下来在这系统上去建立我们的定制系统:
1、挂载光驱
2、创建临时目录
mkdir -p /root/iso/CentOS |
3、提取需要的RPM包,正常安装好操作系统在/root目录下会有install.log文件,这个就是操作系统安装RPM包的记录,我们从这些记录中,将所需的RPM包从/mnt/CentOS中复制到/root/iso/CentOS里面去
#!/bin/bash
cd /root
awk ''/Installing/{print $2}'' install.log | sed ''s/^[0-9]*://g'' >package.txt
DVD=''/mnt/CentOS''
PACKDIR=''/root/package.txt''
NEW_DVD=''/root/iso/CentOS/''
while read LINE
do
cp ${DVD}/${LINE}*.rpm /${NEW_DVD} || echo "$LINE don''t cp......."
done < package.txt
rm -f package.txt |
4、把原镜像除了CentOS目录外的文件全部复制至/root/iso目录下
cd /mnt
ls | grep -v CentOS | xargs -i cp -Rp {} /home/test/ |
5、把/root目录下的anaconda-ks.cfg复制至/root/iso目录下,并根据自己实际需要修改安装要求
# Kickstart file automatically generated by anaconda.
install
cdrom
lang en_US.UTF-8
keyboard us
network --device eth0 --bootproto dhcp
firewall --disabled --port=22:tcp
authconfig --enableshadow --enablemd5
selinux --disabled
timezone --utc Asia/Shanghai
bootloader --location=mbr --driveorder=sda
# 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
part /boot --fstype ext3 --size=100
part swap --size=8192
part / --fstype ext3 --size=100 --grow
%packages
@base
@core
@development-tools
@dialup
@editors
@text-internet
keyutils
openCryptoki
libhbaapi
brltty
dmraid-events-logwatch
libhbalinux
aide
kexec-tools
nfs4-acl-tools
tpm-tools
iscsi-initiator-utils
trousers
bridge-utils
authd
fipscheck
squashfs-tools
star
sssd
hardlink
freeipmi
x86info
device-mapper-multipath
hfsutils
fcoe-utils
edac-utils
hesinfo
fuse-libs
convmv
fuse
cpufreq-utils
openswan
freeipmi
gcc44-c
gcc44-gfortran
pexpect
dejagnu
imake
java-1.6.0-openjdk-devel
gcc-objc
ElectricFence
memtest86
gcc-gnat
libgfortran44
gcc44
expect
java-1.6.0-openjdk
unifdef
nasm
%post
for i in `ls /etc/rc3.d/S*`
do
CURSRV=`echo $i|cut -c 15-`
echo $CURSRV
case $CURSRV in
crond | irqbalance | microcode_ctl | lvm2-monitor | network | random | sshd | syslog )
echo "Base services, Skip!"
;;
*)
echo "change $CURSRV to off"
chkconfig --level 235 $CURSRV off
service $CURSRV stop
;;
esac
done
sed -i "8i alias vi=''vim''" /root/.bashrc
sed -i "8i alias grep=''grep --color=auto''" /root/.bashrc
sed -i "9i alias n=''netstat -tunlp''" /root/.bashrc
echo ''syntax on'' > /root/.vimrc
sed -i ''s/^GSSAPIAuthentication yes$/GSSAPIAuthentication no/'' /etc/ssh/sshd_config
sed -i ''s/^#UseDNS yes$/UseDNS no/'' /etc/ssh/sshd_config
echo "* hard nofile 65535" >> /etc/security/limits.conf
echo "* soft nofile 65535" >> /etc/security/limits.conf
/usr/sbin/eject
reboot
|
|