1. 程式人生 > >如何同步openstack RDO源至本地進行離線安裝

如何同步openstack RDO源至本地進行離線安裝

同步本地源可以採用兩種方法:
1.rsync
2.reposync


第一種方案參考如下段程式:
#!/bin/bash
#Script name:rsync_yumrepo.sh
RsyncBin="/usr/bin/rsync"
RsyncPerm='-avrt --delete --no-iconv --bwlimit=1000'


Centos_7_epel='/data/yum_repo/Centos-7/epel/'


LogFile='/data/yum_repo/rsync_yum_log'
Date=`date +%Y-%m-%d`
#check
function check {
if [ $? -eq 0 ];then
    echo -e "\033[1;32mRsync is success!\033[0m" >>$LogFile/$Date.log
else
    echo -e "\033[1;31mRsync is fail!\033[0m" >>$LogFile/$Date.log
fi
}
if [ ! -d "$LogFile" ];then
    mkdir $LogFile
fi
#rsync centos 5 base
#echo 'Now start to rsync centos 5 base!' >>$LogFile/$Date.log
#$RsyncBin $RsyncPerm rsync://mirrors.yun-idc.com/centos/5/os/ $Centos_5_base >>$LogFile/$Date.log
#check
#rsync centos 5 epel
echo 'Now start to rsync centos 5 epel!' >>$LogFile/$Date.log
$RsyncBin $RsyncPerm --exclude=SRPMS/ --exclude=ppc64/ rsync://dl.fedoraproject.org/pub/epel/7/x86_64 $Centos_7_epel >>$LogFile/$Date.log
check




語法為:rsync  [option] resource destination


rsync comes with ABSOLUTELY NO WARRANTY.  This is free software, and you
are welcome to redistribute it under certain conditions.  See the GNU
General Public Licence for details.


rsync is a file transfer program capable of efficient remote update
via a fast differencing algorithm.


Usage: rsync [OPTION]... SRC [SRC]... DEST
  or   rsync [OPTION]... SRC [SRC]... [
[email protected]
]HOST:DEST
  or   rsync [OPTION]... SRC [SRC]... [[email protected]]HOST::DEST
  or   rsync [OPTION]... SRC [SRC]... rsync://[[email protected]]HOST[:PORT]/DEST
  or   rsync [OPTION]... [[email protected]]HOST:SRC [DEST]
  or   rsync [OPTION]... [[email protected]]HOST::SRC [DEST]
  or   rsync [OPTION]... rsync://[
[email protected]
]HOST[:PORT]/SRC [DEST]
The ':' usages connect via remote shell, while '::' & 'rsync://' usages connect
to an rsync daemon, and require SRC or DEST to start with a module name.


rsync將會把resource中的RPM包下載到指定的目錄中。




2.reposync
reposync比價簡單,其簡單用法為rsync -repoid repository-id


可以用yum repolist檢視repo的ID
yum repolist 
[
[email protected]
openstack-common]# yum repolist
Failed to set locale, defaulting to C
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
repo id                                                         repo name                                                                                         status
centos-iso                                                      CentOS-ISO                                                                                        3576
epel                                                            Extra Packages for Enterprise Linux 7 - x86_64                                                    8327
epel-debuginfo                                                  Extra Packages for Enterprise Linux 7 - x86_64 - Debug                                            1919
openstack-kilo                                                  OpenStack Kilo Repository                                                                          280
openstack-kilo-common                                           openstack kilo common                                                                              493
repolist: 14595


如上,同步epel到本地當前目錄:
reposync -repoid=epel


reposync的前提是先在系統裡面安裝repository庫,然後到遠端repository去下載rpm包。例如可以先安裝rdo的openstack-kilo庫:
yum insatll  http://rdo.fedorapeople.org/openstack-kilo/rdo-release-kilo.rpm
安裝完成之後將會在/etc/yum.repos.d目錄下生成openstack-kilo.repo的檔案,此時即可yum repolist 檢視到。




3.製作本地yum源


簡單建立repository的命令如下:
createrepo -update --baseurl=packages_dir packages_dir #packages_dir是包含所有rpm包的絕對路徑


此命令將會把package_dir目錄下的包生成repository,在該目錄下會生成repodata子目錄,然後在/etc/yum.repos.d目錄下編輯.repo檔案
[openstack-kilo]
name=OpenStack Kilo Repository
#baseurl=http://repos.fedorapeople.org/repos/openstack/openstack-kilo/el7/
baseurl=file:///data/yum_repo/rdo-openstack-kilo/openstack-kilo
skip_if_unavailable=0
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-kilo


然後重新整理:yum clean all;yum makecache即可。

相關推薦

如何同步openstack RDO本地進行離線安裝

同步本地源可以採用兩種方法: 1.rsync 2.reposync 第一種方案參考如下段程式: #!/bin/bash #Script name:rsync_yumrepo.sh RsyncBin="/usr/bin/rsync" RsyncPerm='-avrt --de

Anaconda包查詢,conda自定義本地channel作為python package進行離線安裝,離線建立環境

自定義本地channelChannels are the path that conda takes to look for packages, and the easiest way to use and manage custom channels is to use a private or publ

通過DataWorks資料整合歸檔日誌服務資料MaxCompute進行離線分析

開發十年,就只剩下這套架構體系了! >>>   

搭建本地pypi方法 – 僅同步openstack依賴的的pypi軟體包

 使用devstack搭建openstack開發環境,一個很頭疼的問題就是devstack通過pip安裝依賴的一些軟體包,由於網路環境的差異,導致很多無法連線外網或者連線外網受限的實驗室環境非常崩潰,前面一篇文章介紹過《基於CentOS的pip本地源搭建方法》,文中的方法

centos--軟件--本地軟件---離線安裝

logfile rep 利用 列表 服務 字符 uri 順序 ani 一、軟件源配置文件 1、/etc/yum.conf 配置文件 [main] cachedir=/var/cache/yum #yum下載的RPM包的緩存目錄 keepcache

CentOS7同步遠程yum本地

reposync createrepo 應用場景:今天有朋友問我,說他搭建cloudstack測試環境,但是安裝包不太好下,要一個個手動去wget,我就問他,幾個包可以這麽做,要很多包咋辦,其實我們在同步遠程一些安裝包的時候,通常會用到reposync這個命令,本篇文章也是通過這條命令來下載cloud

Ubuntu apt 本地 離線安裝軟體

流沙的刺客:https://blog.csdn.net/candcplusplus/article/details/52156324 將下載好的包( /var/cache/apt/archives目錄下的所有檔案)複製到U盤中,準備轉移。如果你不想拷貝多餘的包檔案,你可以提前將 /var

Docker--離線安裝以及本地yum構建

docker離線安裝 由於是做內網的部署,所以伺服器不會有外網存在,因此需要使用docker進行部署相應容器。先要進行離線部署docker環境 環境要求 1. centos7.0核心 2

構建YUM本地離線安裝Docker

     在docker的使用過程中有時候會遇到一些私有化部署的問題,就是在一些無法上網的機器上面安裝使用dokcer,這就引出了docker的離線安裝的問題 環境:      通過 uname -r 命令檢視你當前的核心版本      centos 7.0核心版本3.1

CentOS 6.5搭建本地OpenStack軟體

搭建centos6.5下openstack icehouse版本的時候,發現rdo方式已經不能用centos6.5,最新的版本需要升級到centos7才可以,於是自己搭建本地的openstack yum源。方法轉載 1 2 3 4 5 mkdir

Ubuntu apt 本地 離線安裝

今天一臺主機(Ubuntu 14.04)不知道為什麼連不上外網了。只能和區域網內的其他主機相互ping通。但是上面一個正在跑的程式出了問題,需要安裝兩個額外的包,而且這兩個包依賴還挺多的樣子。這可急死我了。但是我另一臺筆記本可以上外網。碰巧也安裝的是Ubuntu

centos6搭建本地openstack軟體

1、把相關軟體包全部下載到本地機器  wget -np -nH –cut-dirs=1 -r -c -L –exclude-directories=repodata –accept=rpm,gz,xml http://repos.fedorapeople.org/rep

Openstack EOL 版本離線安裝

ORC sea led readme fire eve rpm安裝 dir track 當Openstack EOL,網上的yum源無法安裝openstack版本和rdo ,則無法正常通過yum源直接安裝openstack和rdo ,只是直接安裝openstack後,也無

eclipse部署web項目本地的tomcat但在webapps中找不到問題

install add 工程 部署 n) http rem 服務器 目錄 一、發現問題 在eclipse中新建Dynamic Web Project,配置好本地的tomcat並寫好代碼後選擇Run on Server,但運行後發現在tomcat的安裝目錄下的webapps並

eclipse部署web項目本地的tomcat但在webapps中找不到

top net 停止 解決 鏈接 sta cal mov link 第一次安裝或者重新安裝eclipse,在部署項目的時候很可能會遇到 eclipse部署web項目至本地的tomcat但在webapps中找不到的問題。這是因為你的eclipse中的server中的項目部署路

由於ServerIP老是變來變去,所以,要在本地進行配置。

src pen 寫入 fig alt 配置 u3d 讀取 com 1. 2. 3. private void readConfig() { string cfgpath = System.IO.Path.Combine(Enviro

能把opencv的碼也進行調試嗎?(需要pdb文件才行)

pri 選擇 deb 5.7 .net microsoft 文件 debug 選項 能把opencv的源碼也進行調試嗎?(需要pdb文件才行)1.我是用的Qt Creator,然後"工具\選項\調試器\概要\源碼路徑映射"中,選擇"添加Qt源碼",目標路徑是Qt的源碼路徑,

[轉載]eclipse部署web項目本地的tomcat但在webapps中找不到

代碼 內置 ada apps 瀏覽器中 host cor 本地 找到 轉自:http://blog.csdn.net/qq_20545159/article/details/49559357 一、發現問題 在eclipse中新建Dynamic Web Project,配

elasticsearch 本地環境搭建

步驟 netflix 信息 本地 變量 sea not 生效 使用 本篇文章網上有跡可尋,但是每個人在搭建的時候會遇到各種問題,與本地環境有關,下面寫下我自己的搭建過程以及遇到的問題: 1、資源準備 ElasicSearch版本:6.0.0: https://gith

62.使用碼包進行安裝

相關 wget 過程 bin all config follow 命令 ref 相關命令 PS:可以在源碼包可以查看INSTALL 可以查看到安裝的方式$ ./configure --prefix=PREFIX$ make$ make install$ PREFIX/bin