我已经创建了自己的 deb repo,然后将其添加到客户端:
echo 'deb ftp://puppet.example.com ./' > /etc/apt/sources.list.d/puppet.list
apt-get update
apt-cache search puppet
尽管我可以在里面看到它们,但我看不到任何傀儡文件/var/lib/apt/lists/puppet.example.com_._Packages
。
我这样做之后:
strace -eopen apt-cache search puppet
由于某种原因,无法/var/lib/apt/lists/puppet.example.com_._Packages
读取,并且我的 repo 也被忽略了。
# apt-get update
Get:1 ftp://puppet.example.com ./ Release.gpg
Ign ftp://puppet.example.com ./ Release.gpg
Get:2 ftp://puppet.example.com ./ Release
Ign ftp://puppet.example.com ./ Release
Get:3 ftp://puppet.example.com ./ Packages/DiffIndex
Ign ftp://puppet.example.com ./ Packages/DiffIndex
Get:4 ftp://puppet.example.com ./ Translation-en_GB
Get:5 ftp://puppet.example.com ./ Translation-en
Get:6 ftp://puppet.example.com ./ Packages
Get:7 ftp://puppet.example.com ./ Translation-en_GB
Get:8 ftp://puppet.example.com ./ Translation-en
Get:9 ftp://puppet.example.com ./ Packages
Get:10 ftp://puppet.example.com ./ Translation-en_GB
Get:11 ftp://puppet.example.com ./ Translation-en
Get:12 ftp://puppet.example.com ./ Packages
Get:13 ftp://puppet.example.com ./ Translation-en_GB
Get:14 ftp://puppet.example.com ./ Translation-en
Get:15 ftp://puppet.example.com ./ Packages
Get:16 ftp://puppet.example.com ./ Translation-en_GB
Ign ftp://puppet.example.com ./ Translation-en_GB
Get:17 ftp://puppet.example.com ./ Translation-en
Ign ftp://puppet.example.com ./ Translation-en
Get:18 ftp://puppet.example.com ./ Packages [5,386 B]
问题
为什么apt-cache
不读取/var/lib/apt/lists/puppet.example.com_._Packages
文件?
答案1
您是否创建了 update-mydebs ?如果没有,请在 ~/bin 中创建一个脚本并将其命名为“update-mydebs”。
#! /bin/bash
cd /usr/local/mydebs
dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz
然后:
chmod chmod u+x ~/bin/update-mydebs
如果您已完成所有这些操作,请检查是否安装了 dpkg-dev。