如何在CentOS上主持deb / apt回购?

我想为Ubuntu Precise制作一个puppet客户端及其依赖关系的镜像,但托pipe在我的CentOS 6主机上。

如果我做

cd /var/ftp wget -A deb -r -np -nH --cut-dirs=1 http://apt.puppetlabs.com/pool/precise/dependencies/ wget -A deb -r -np -nH --cut-dirs=1 http://apt.puppetlabs.com/pool/precise/main/ 

然后在Ubuntu Precise上添加以下内容到/etc/yum.repos.d/mypuppet.repo

 deb ftp://puppet.example.com precise main deb ftp://puppet.example.com precise dependencies 

然后我得到

 W: Failed to fetch ftp://puppet.example.com/dists/precise/dependencies/binary-amd64/Packages Unable to fetch file, server said 'Failed to open file. ' 

有什么工具或如何在CentOS上主持deb / apt回购?

我想说这个任务的适当工具是debmirror(1) ,它可以在CentOS仓库中find。

确保从密钥服务器导入puppetlabs存储库的GPG密钥:

 # gpg --recv-keys 1054B7A24BD6EC30 gpg: requesting key 4BD6EC30 from hkp server pool.sks-keyservers.net gpg: key 4BD6EC30: public key "Puppet Labs Release Key (Puppet Labs Release Key) <[email protected]>" imported gpg: 3 marginal(s) needed, 1 complete(s) needed, classic trust model gpg: depth: 0 valid: 3 signed: 4 trust: 0-, 0q, 0n, 0m, 0f, 3u gpg: depth: 1 valid: 4 signed: 6 trust: 3-, 0q, 0n, 0m, 1f, 0u gpg: depth: 2 valid: 1 signed: 1 trust: 1-, 0q, 0n, 0m, 0f, 0u gpg: next trustdb check due at 2014-05-11 gpg: Total number processed: 1 gpg: imported: 1 (RSA: 1) 

然后,从他们的仓库中获取软件包:

 # debmirror --check-gpg --keyring=/path/to/keyring.gpg --method=http \ --root=/ --arch amd64 --dist precise --section main,dependencies \ --nosource --host apt.puppetlabs.com --progress /path/to/local/repo 

这样,你确保目录结构是正确的,并且所有预期的文件都存在。

您只同步了deb文件,忘记检索软件包列表定义,可以在http://apt.puppetlabs.com/dists/precise/上find它&#x3002;

我真的build议你同步所有的存储库:

 rsync -av --copy-links --del rsync://apt.puppetlabs.com/packages/apt/ /var/ftp/ 

使用Rsync,您可以更轻松地了解您的文件。 我很确定,如果你有deb文件和包定义它将工作。

http://apt.puppetlabs.com/README.txt

祝你今天愉快。