CentOS 7はhttp方式に基づいてローカルyumソースを構築する

9920 ワード

1.yumソフトウェア保存ディレクトリの作成
[root@localhost ~]# mkdir -p /www/share/yum

2.yumプロファイルの変更
まずyumプロファイルをバックアップし、yumプロファイルのyumパッケージ保存ディレクトリを変更し、rmpパッケージキャッシュ機能をオンにします.
[root@localhost ~]# cp /etc/yum.conf /etc/yum.conf.bak
[root@localhost ~]# vim /etc/yum.conf 
[main]
#cachedir=/var/cache/yum/$basearch/$releasever
cachedir=/www/share/yum/$basearch/$releasever
keepcache=1

3.createrepoとhttpのインストール
createrepoコマンドはyumソース(ソフトウェアウェアハウス)を作成するために使用されます.すなわち、ローカルの特定の場所に格納されている多くのrpmパケットにインデックスを作成し、各パケットに必要な依存情報を記述し、メタデータを形成します.
[root@localhost ~]# yum install createrepo httpd -y

4.http共有ディレクトリの作成
[root@yumrepo www]# vim /etc/httpd/conf.d/share.conf
#http share
Alias /share /www/share
"/www/share">
    Options Indexes FollowSymLinks
    IndexOptions NameWidth=* DescriptionWidth=* FoldersFirst
    IndexOptions SuppressIcon HTMLTable Charset=UTF-8 SuppressHTMLPreamble
    Order allow,deny
    Allow from all
    Require all granted

5.httpプロファイルの変更
http構成のバックアップとプロファイルの変更
[root@localhost ~]# cp /etc/httpd/conf/httpd.conf{,.bak}
[root@localhost ~]# echo "
ServerName localhost
#       
ServerSignature Off
ServerTokens Prod
">>/etc/httpd/conf/httpd.conf

6.httpサービスの開始
[root@localhost ~]# systemctl enable httpd.service && systemctl restart httpd.service
[root@localhost ~]# netstat -antp|grep 'httpd'

ブラウザアクセス192.168.92.60/share、正常CentOS7基于http方式搭建本地yum源_第1张图片
7.YUMソフトウェアウェアハウスの作成
[root@localhost ~]# mkdir -p /www/share/centos7_rpm
[root@localhost ~]# createrepo -p /www/share/centos7_rpm/
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
[root@localhost ~]# ll /www/share/centos7_rpm/
total 4
drwxr-xr-x 2 root root 4096 Jun 19 09:40 repodata

8.ソースファイルの作成
[root@localhost ~]# echo "
[My_share]
name=My_Souce
baseurl=http://192.168.92.60/share/centos7_rpm/
gpgcheck=0
enabled=1
cost=88
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
">/www/share/Lan7.repo

9.パッケージのダウンロード
1.yumキャッシュのrpmパケットを/www/share/centos 7_にコピーするrpm/
[root@localhost ~]# find /www/share/yum -name *.rpm |sed -r 's#.*#mv & /www/share/centos7_rpm/
#'|bash

2.インストールされていないパッケージをダウンロード
[root@localhost ~]# yum install --downloadonly --downloaddir=/www/share/centos7_rpm/ -y    

3.インストール済みのパッケージを再ダウンロード
[root@localhost ~]# yum reinstall --downloadonly --downloaddir=/www/share/centos7_rpm/ -y    

4.更新元
[root@localhost ~]# createrepo --update -p /www/share/centos7_rpm/
##########################################

5.rpmダウンロード、yum更新shellの作成
[root@localhost ~]# echo '#!/bin/sh
[ $# = 0 ] && {
echo "   "
/usr/bin/createrepo --update -p /www/share/centos7_rpm/
} || {
echo "yum  "
yum install --downloadonly --downloaddir=/www/share/centos7_rpm/ -y $*
echo "   "
/usr/bin/createrepo --update -p /www/share/centos7_rpm/
}
'>yumd.sh
[root@localhost ~]# ln -s $(pwd)/yumd.sh /usr/bin/yumd
[root@localhost ~]# chmod +x yumd.sh

yumd更新ソースを実行し、yumdソフトウェア1ソフトウェア2を実行すると、関連ソフトウェアがダウンロードされ、ソースが更新されます.
10.OpenStackインストールパッケージのダウンロード
1.参照として、必要に応じて他のコンポーネントを追加
[root@localhost ~]# yum install centos-release-openstack-queens -y #  OpenStack   
[root@localhost ~]# yum install --downloadonly --downloaddir=/www/share/centos7_rpm/ -y \
python-openstackclient openstack-selinux python-openstackclient python2-PyMySQL \
openstack-utils \
mariadb mariadb-server mariadb-galera-server python2-PyMySQL \
erlang socat rabbitmq-server \
openstack-keystone httpd mod_wsgi memcached python-memcached \
apr apr-util \
openstack-glance python-glance \
openstack-nova-api openstack-nova-conductor \
openstack-nova-console openstack-nova-novncproxy \
openstack-nova-scheduler openstack-nova-placement-api \
openstack-nova-compute python-openstackclient openstack-selinux \
openstack-neutron openstack-neutron-ml2 \
openstack-neutron-linuxbridge python-neutronclient ebtables ipset \
openstack-neutron-linuxbridge ebtables ipset \
openstack-dashboard \
openstack-cinder targetcli python-keystone lvm2 \
corosync pacemaker pcs fence-agents resource-agents \
openstack-neutron-linuxbridge

2.更新元
createrepo --update -p /www/share/centos7_rpm/

11.クライアント使用ソース
1.サービス側ソースファイルをローカルにダウンロードする
wget -O /etc/yum.repos.d/Lan7.repo http://192.168.92.60/share/Lan7.repo

2.クライアントテスト、ソース名myshareを表示正常
yum install httpd

参照元:http://www.cnblogs.com/elvi/p/7657770.html