代码:
1 #!/bin/bash
2 #Author:ChickenLxg
3 #Date & Time:2011-01-02 17:54:09
4 #Description:
5
6 [ ! -e /var/yum ] && mkdir /var/yum || mv /var/yum /var/yum.old && mkdir /var/yum
7
8 [ ! -e /media/cdrom ] && mkdir /media/cdrom
9
10 mount /dev/cdrom /media/cdrom
11
12 cp -r /media/cdrom/{Server,Cluster,ClusterStorage,VT} /var/yum
13
14 umount /dev/cdrom
15
16 rpm -qa | grep "createrepo" &> /dev/null || rpm -ivh `find / -name "createrepo*.rpm"`
17
18 ( createrepo -g /var/yum/Server/repodata/comps-rhel5-server-core.xml /var/yum/Server && echo -e "/033[31;5mServer's yum repository Done./033[0m" ) || ( echo "Built yum repository wrong!" && exit 1 )
19 ( createrepo -g /var/yum/Cluster/repodata/comps-rhel5-cluster.xml /var/yum/ && echo -e "/033[31;5mCluster's yum repository Done./033[0m" )||( echo "Built yum repository wrong!" && exit 1 )
20 ( createrepo -g /var/yum/ClusterStorage/repodata/comps-rhel5-cluster-st.xml /var/yum/ClusterStorage && echo -e "/033[31;5mClusterStorages yum repository Done./033[0m" )||( echo "Built yum repository wrong!" && exit 1)
21 ( createrepo -g /var/yum/VT/repodata/comps-rhel5-vt.xml /var/yum/VT && echo -e "/033[31;5mVT's yum repository Done./033[0m" )||( echo "Built yum repository wrong!" && exit 1 )
22
23 [ ! -e /etc/yum.repos.d/"local.repo" ] && touch /etc/yum.repos.d/"local.repo"
24
25 echo "[server]
26 name=server
27 baseurl=file:///var/yum/Server
28 gpgcheck=0
29 enabled=1
30
31 [VT]
32 name=VT
33 baseurl=file:///var/yum/VT
34 gpgcheck=0
35 enabled=1
36
37 [ClusterStorage]
38 name=CS
39 baseurl=file:///var/yum/ClusterStorage
40 gpgcheck=0
41 enabled=1
42
43 [Cluster]
44 name=Cluster
45 baseurl=file:///var/yum/Cluster
46 gpgcheck=0
47 enabled=1" > /etc/yum.repos.d/local.repo
48
49 echo "YUM! COMPELETE!"
截图:
总结:
将/var/yum改为/var/yum.old后如果对shell进行测试的时候出错,那么下次重新执行shell的时候以前拷贝到/var/yum中的文件还要再次拷贝,浪费时间。
将4个目录考到/var/yum中时可以使用 cp -r {S,C,CS,VT} /var/yum 缩短shell语句长度
现在还是有点不理解createrepo命令的使用,是让先前几个拷贝到/var/yum中的目录进行关联么?
改变字体的颜色 echo -e "/033[nmSTRING /033[0m" -e一定要加,否则不会改变字体颜色