我有一个在 Debian Wheezy 上运行的服务器。
它的apt源文件具有以下配置:
deb http://ftp.uk.debian.org/debian/ wheezy main non-free contrib
deb-src http://ftp.uk.debian.org/debian/ wheezy main non-free contrib
deb http://security.debian.org/ wheezy/updates main contrib non-free
deb-src http://security.debian.org/ wheezy/updates main contrib non-free
# wheezy-updates, previously known as 'volatile'
deb http://ftp.uk.debian.org/debian/ wheezy-updates main contrib non-free
deb-src http://ftp.uk.debian.org/debian/ wheezy-updates main contrib non-free
当我尝试更新时,收到官方 Debian 存储库的 GPG 错误:
root@osgb:~# apt-get clean
root@osgb:~# apt-get update
Get:1 http://security.debian.org wheezy/updates Release.gpg
Get:2 http://ftp.uk.debian.org wheezy Release.gpg
Get:3 http://ftp.uk.debian.org wheezy-updates Release.gpg
Get:4 http://security.debian.org wheezy/updates Release
Ign http://security.debian.org wheezy/updates Release
E: GPG error: http://security.debian.org wheezy/updates Release: The following signatures were invalid: NODATA 1 NODATA 2
如果我从sources.list
文件中删除安全存储库并再次尝试apt-get update
,则这次会弹出相同的错误ftp.uk.debian.org
root@osgb:~# apt-get clean
root@osgb:~# apt-get update
Get:1 http://ftp.uk.debian.org wheezy Release.gpg
Get:2 http://ftp.uk.debian.org wheezy-updates Release.gpg
Get:3 http://ftp.uk.debian.org wheezy Release
Ign http://ftp.uk.debian.org wheezy Release
E: GPG error: http://ftp.uk.debian.org wheezy Release: The following signatures were invalid: NODATA 1 NODATA 2
到目前为止我尝试的是;
- 尝试了许多其他镜子,
- 尝试手动安装
debian-keyring
和debian-archive-keyring
deb 文件, - 通过创建部分文件夹、apt-get 清理等方式删除
/var/lib/apt/lists
并强制再生(正如许多帖子中提供的那样)
他们都没有帮助。
那么,这个错误是怎么回事?也就是说,它意味着什么?你有什么办法可以解决它吗?
更新(2015 年 8 月 18 日):
服务器没有任何磁盘空间问题。它有一个单独的分区设置,其中有大量的空闲空间:
root@osgb:~# df -h
Filesystem Size Used Avail Use% Mounted on
rootfs 259G 22G 224G 9% /
udev 10M 0 10M 0% /dev
tmpfs 1.2G 240K 1.2G 1% /run
/dev/disk/by-uuid/b76a2c04-44b6-4a9e-bace-7286a67a0f8d 259G 22G 224G 9% /
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 4.6G 0 4.6G 0% /run/shm
更新(2015 年 8 月 20 日)
按照建议,我尝试更新密钥,但似乎我的服务器已经有了最新的密钥。不幸的是,NODATA 错误仍然存在。
root@osgb:~# apt-key update
gpg: key B98321F9: "Squeeze Stable Release Key <[email protected]>" not changed
gpg: key 473041FA: "Debian Archive Automatic Signing Key (6.0/squeeze) <[email protected]>" not changed
gpg: key 65FFB764: "Wheezy Stable Release Key <[email protected]>" not changed
gpg: key 46925553: "Debian Archive Automatic Signing Key (7.0/wheezy) <[email protected]>" not changed
gpg: key 518E17E1: "Jessie Stable Release Key <[email protected]>" not changed
gpg: key 2B90D010: "Debian Archive Automatic Signing Key (8/jessie) <[email protected]>" not changed
gpg: key C857C906: "Debian Security Archive Automatic Signing Key (8/jessie) <[email protected]>" not changed
gpg: Total number processed: 7
gpg: unchanged: 7
root@osgb:~# apt-get update
Get:1 http://ftp.uk.debian.org wheezy Release.gpg
Get:2 http://ftp.uk.debian.org wheezy-updates Release.gpg
Get:3 http://ftp.uk.debian.org wheezy Release
Ign http://ftp.uk.debian.org wheezy Release
E: GPG error: http://ftp.uk.debian.org wheezy Release: The following signatures were invalid: NODATA 1 NODATA 2
=========================================================================
决议和最后的话:
我认为这不可能是防火墙问题,因为使用的端口是 80,我可以手动连接。但是,检测到防火墙在应用程序级别阻止了服务器的请求。防火墙认为 apt-get 是一个可疑的应用程序,除非明确允许,否则应将其阻止。我们将其添加到白名单中,现在一切正常!
答案1
当我被本地防火墙阻止时,我遇到了这个问题。您可能需要更改存储库行以不使用 ftp 镜像。
尝试http://free.hands.com/debian/。该行的其余部分很好;你只需替换http://ftp.uk.debian.org。