仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1608|回复: 9
打印 上一主题 下一主题

[shell编程] 给大家带来CentOS 6.5体系定制与封装疾速实行剧本

[复制链接]
跳转到指定楼层
楼主
发表于 2015-1-14 20:14:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们!在年夜型企业大概是IDC做运维的伴侣常常会有如许子的需求,有些人大概还不是很懂得Linux的二次封装有甚么优点,这里复杂说一下,就是当你要重复做一个操纵的时分,好比说要安排300台WEB办事器,这时候候你假如一台一台装,然后装完体系后再往设置这个WEB使用,那要花几工夫啊,是吧!可是假如你装好一台办事器,然后将这个体系举行二次封装,如许子你下次再要安排不异的WEB办事器的时分就只必要拿这个封装的体系往安排就OK,这是否是复杂多了,这时候候有人大概会嫌疑会不会存在驱动成绩,固然体系自己OK的,他是没有成绩的,除非你是特别的硬件。实在复杂的了解就是一个windows的ghost封装差未几。假如你仍是不是很分明,大概你必要多读几回这段笔墨。后期有测试过网上的一些教程,发明在CentOS6.0以上都不太好用了,因为工夫的缘故原由,我这里只是贴出封装的shell,实在全部还必要有一个对照庞大的历程,你大概必要专心往懂得一下上面这个shell的意义,有必要的伴侣能够接洽我。固然我常常会用它来封装像openvpn、vsftpd、web等办事器,让它可以完成全主动化疾速安排,以进步我的事情效力,前期无机会将前次公布的vsftpd办事器的封装包发明来人人分享一下,年夜侠不要拍砖!头已在流血。
#!/bin/bash
#web:www.ckuyun.com
SYSTEM_DIR=/home/linuxidc
SYSTEM_NAME=linuxidc
mount_ISO(){
mkdir-p/home/linuxidc/Packages
mkdir-p/home/source
mkdir-p/mnt/cdrom1
mkdir-p/mnt/cdrom2
echo"请确保光驱内里有ISO文件,且能够被挂载"
echo"请输出Y/y持续,恣意键则加入运转"
readret
[${ret}!="Y"-a${ret}!="y"]&&exit1
echo"echo默许情形,挂载的是/dev/cdrom到/mnt/cdrom1"
mount/dev/cdrom/mnt/cdrom1
mount/dev/cdrom1/mnt/cdrom2
ls/mnt/cdrom2|grepPackages
if["$?"!=0]
then
echo"光盘挂载不乐成,请手动从头挂载,大概实验当地ISO挂载"
echo"请输出当地ISO的路径:"
readret
ls${ret}
["$?"!=0]&&echo"当地ISO不存在大概路径毛病,加入运转"&&exit1
["$?"==0]&&mount-oloop${ret}/mnt/cdcom1
fi
}
copy_ISO_file(){
#awk/装置/{print$2}install.log|sed-e/^$/d-es/^//g|grep-vFINISHED|grep-v":">/home/source/packges.list
mkdir-p/home/source
cp-p/root/packges.list/home/source/packges.list
mkdir-p/home/linuxidc/Packages/conf/
cp-p/root/PS/*/home/linuxidc/Packages/conf/
forpackgesin$(cat/home/source/packges.list)
do
cp/mnt/cdrom1/Packages/$packges*/home/linuxidc/Packages
[$?!=0]&&echo"copy$packgesisfaied!"&&cp/mnt/cdrom2/Packages/$packges*/home/linuxidc/Packages
done
rsync-a--exclude=Packages--exclude=repodata/mnt/cdrom2//home/linuxidc/
cp-p/root/initrd.img/home/linuxidc/isolinux/initrd.img
mv/home/linuxidc/CentOS_BuildTag/home/linuxidc/linuxidc_BuildTag
}
rebuild_repo_xml(){
cd${SYSTEM_DIR}
rm-fv${SYSTEM_DIR}/repodata/*
mkdir-p${SYSTEM_DIR}/repodata/
cp-fv/mnt/cdrom2/repodata/*-c6-x86_64-comps.xml${SYSTEM_DIR}/repodata/comps.xml
createrepo-u"media://$(head-1.discinfo)"-g${SYSTEM_DIR}/repodata/comps.xml${SYSTEM_DIR}/
find${SYSTEM_DIR}/repodata/-typef-nameTRANS.TBL|xargs/bin/rm-fv
}
isolinux_cfg(){
cat>${SYSTEM_DIR}/isolinux/isolinux.cfg<<EOF
defaultauto
timeout600
#defaultvesamenu.c32
#prompt1
displayboot.msg
menubackgroundsplash.jpg
menutitleWelcometolinuxidc6.4!
menucolorborder0#ffffffff#00000000
menucolorsel7#ffffffff#ff000000
menucolortitle0#ffffffff#00000000
menucolortabmsg0#ffffffff#00000000
menucolorunsel0#ffffffff#00000000
menucolorhotsel0#ff000000#ffffffff
menucolorhotkey7#ffffffff#ff000000
menucolorscrollbar0#ffffffff#00000000
labelauto
menulabel^AutoInstallsystem
menudefault
kernelvmlinuz
appendks=cdrom:/isolinux/ks.cfginitrd=initrd.img
labellinux
menulabel^Installorupgradeanexistingsystem
kernelvmlinuz
appendinitrd=initrd.img
labelvesa
menulabelInstallsystemwith^basicvideodriver
kernelvmlinuz
appendinitrd=initrd.imgxdriver=vesanomodeset
labelrescue
menulabel^Rescueinstalledsystem
kernelvmlinuz
appendinitrd=initrd.imgrescue
labellocal
menulabelBootfrom^localdrive
localboot0xffff
labelmemtest86
menulabel^Memorytest
kernelmemtest
append-
EOF
}
ks_file(){
cat>${SYSTEM_DIR}/isolinux/ks.cfg<<EOF
#Kickstartfileautomaticallygeneratedbyanaconda.
#linuxidc
#date2013-07-20
#version=V6.4
install
text
cdrom
langzh_CN.UTF-8
keyboardus
skipx
network--deviceeth0--bootprotostatic--ip192.168.50.1--netmask255.255.255.0--gateway192.168.50.254--hostnamelinuxidc-FTP
rootpw--iscrypted/gvPu5dZM6eis
firewall--service=ssh
authconfig--enableshadow--passalgo=sha512
selinux--enforcing
timezone--utcAsia/Shanghai
bootloader--location=mbr--driveorder=sda--append="rhgbcrashkernel=autoquiet"
#Thefollowingisthepartitioninformationyourequested
#Notethatanypartitionsyoudeletedarenotexpressed
#heresounlessyouclearallpartitionsfirst,thisis
#notguaranteedtowork
#clearpart--none
clearpart--all--initlabel
zerombryes
part/boot--fstype=ext4--size=100
partswap--size=4000
part/--fstype=ext4--size=10000
part/opt--fstype=ext4--grow--size=1000
reboot
#repo--name="linuxidc"--baseurl=cdrom:sr0--cost=100
%packages--nobase
@base
%packages
@chinese-support
@core
glibc-2.12-1.107.el6.i686
lrzsz
%post--nochroot
cp/mnt/source/Packages/conf/settings.sh/mnt/sysimage/tmp/settings.sh
mv/mnt/sysimage/etc/vsftpd/vsftpd.conf/mnt/sysimage/etc/vsftpd/vsftpd.conf.back
mv/mnt/sysimage/etc/pam.d/vsftpd/mnt/sysimage/etc/pam.d/vsftpd.back
cp/mnt/source/Packages/conf/vsftpd.conf/mnt/sysimage/etc/vsftpd/vsftpd.conf
cp/mnt/source/Packages/conf/ftpmgt.exe/mnt/sysimage/etc/vsftpd/ftpmgt.exe
cp/mnt/source/Packages/conf/vsftpd/mnt/sysimage/etc/pam.d/vsftpd
cp/mnt/source/Packages/conf/moban/mnt/sysimage/etc/vsftpd/moban
cp/mnt/source/Packages/conf/xianzhi/mnt/sysimage/etc/vsftpd/xianzhi
chmod750/mnt/sysimage/tmp/settings.sh
%post
/tmp/settings.sh
EOF
}
build_new_ISO(){
cd${SYSTEM_DIR}
mkisofs-o${SYSTEM_NAME}.iso-bisolinux/isolinux.bin-cisolinux/boot.cat-no-emul-boot-boot-load-size4-boot-info-table-R-J-v-Vlinuxidc-T${SYSTEM_DIR}
}
main(){
mount_ISO
copy_ISO_file
isolinux_cfg
ks_file
rebuild_repo_xml
build_new_ISO
}
main

本篇文章来历于Linux公社网站(www.ckuyun.com)原文链接:http://www.ckuyun.com/Linux/2014-03/98376.htm
本篇文章来历于Linux公社网站(www.ckuyun.com)原文链接:http://www.ckuyun.com/Linux/2014-03/98376.htm
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!
因胸联盟 该用户已被删除
沙发
发表于 2015-1-15 07:57:01 | 只看该作者

给大家带来CentOS 6.5体系定制与封装疾速实行剧本

大致看明白了,楼主的思维太过发散、太过跳跃了。楼主,加强集中精力叙述一件事情的能力。不要再发散了……
若天明 该用户已被删除
板凳
发表于 2015-1-17 21:47:30 | 只看该作者
另外Linux上也有很多的应用软件,安装运行了这些软件后,你就可以在Linux上编辑文档、图?片,玩游戏、上网、播放多媒体文件等。
飘飘悠悠 该用户已被删除
地板
发表于 2015-1-26 23:15:55 | 只看该作者
尽量不要提问纯属是扯蛋.学习Linux特别是自己一个人初学入手的时候没人教很困难.当然如果可以的话平时多去买些Linux书...对学习Linux很有帮助.
若相依 该用户已被删除
5#
发表于 2015-2-5 07:21:40 | 只看该作者
当然你不需搭建所有服务,可以慢慢来。自己多动手,不要非等着别人帮你解决问题。
活着的死人 该用户已被删除
6#
发表于 2015-2-11 08:23:37 | 只看该作者
Linux只是个内核!这点很重要,你必须理解这一点。只有一个内核是不能构成一个操作系统的。
admin 该用户已被删除
7#
发表于 2015-3-2 05:57:48 | 只看该作者
在学习的过程中,我们用的是VM虚拟机,开始时真的不真的该怎么去做,特别是我的是命令窗口界面,别人的是图形界面,我都不知道怎么调过来。
再见西城 该用户已被删除
8#
发表于 2015-3-11 05:30:10 | 只看该作者
就这样,我们一边上OS理论课,一边上这个实验,这样挺互补的,老师讲课,一步一步地布置任务
透明 该用户已被删除
9#
发表于 2015-3-17 23:12:07 | 只看该作者
任何人都可以根据自己的喜好来定制适合自己的操作系统,Linux?是抢占式多任务多用户操作系统.
兰色精灵 该用户已被删除
10#
发表于 2015-3-25 13:01:19 | 只看该作者
Linux的成功就在于用最少的资源最短的时间实现了所有功能,这也是符合人类进化的,相信以后节能问题会日益突出。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-6 02:56

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表