CentOS7 で 'Mondo Rescue' のインストールに失敗する

## The GPG keys listed for the "rhel 7 x86_64 - mondorescue Vanilla Packages" repository are already installed but they are not correct for this package.

> CentOS7 に `MondoRescue` を `yum` でインストールしようとすると、依存アプリ（ `perl` の `project builder`）をインストールするタイミングで、GPG のキー不等号による以下のエラーによりインストールできない。
>
>  ```エラー概要.log
>  The GPG keys listed for the "rhel 7 x86_64 - mondorescue Vanilla Packages"
>  repository are already installed but they are not correct for this package.
>  Check that the correct key URLs are configured for this repository.
>  ```

- Mondo Rescure とは[^mondo]

[^mondo]: **Mondo Rescure とは** Linux および FreeBSD（i386）の OS 復旧用のイメージ、つまり**リカバリー・ディスクの作成および復元ツール**です。<br>Red Hat, RHEL, Fedora, CentOS, OpenSuSE, SLES, Mandriva, Debian, Ubuntu, Gentoo といった、さまざまなディストリビューションのバックアップに使えます。また、CD/DVD/USB/ネットワーク経由など複数のメディアから復旧できます。<br>一般的なリカバリーのように、用意された LiveCD イメージで起動後、復旧データ（バックアップ・データ）を読み込ませるタイプではなく、メディア起動用の OS と復旧データを１つのイメージにして保存します。OS は、リカバリー専用に開発された Mindi Linux がバックアップしたマシンに最適化された状態で同梱されます。これにより、一般的な LiveCD のように[バニラ状態](https://ja.wikipedia.org/wiki/%E3%83%90%E3%83%8B%E3%83%A9_(%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2))であることによるデバイス・ドライバー不足などの問題を軽減しています。<br>[Hugo Rabson](http://oldwww.mondorescue.org/) 氏によって開発され、現在は [Bruno Cornec 氏と Andree Leidenfrost 氏の２名の有志でメンテナンス](http://www.mondorescue.org/)されています。[Wikipedia 英語版の Google 翻訳をみる](https://translate.google.com/translate?hl=ja&sl=en&tl=ja&u=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FMondo_Rescue) @ Google

## TL; DR（概要）

2018/03/09 追記：現在は以下のコマンドで GPG キーの問題もなく `Mondo Rescue` をインストール出来ました。

```shell-session
# cd /etc/yum.repos.d
# wget http://www.mondorescue.org/ftp/centos/7/x86_64/mondorescue.repo
# yum -y install mondo lzop
```

上記で NG の場合は以下をお試しください。

```shell-session:mondorescue_インストール手順.log
# cd ~/
# yum -y update
# wget ftp://ftp.mondorescue.org/rhel/7/x86_64/perl-ProjectBuilder-0.14.5-1.rhel7.noarch.rpm
rpm -ivh perl-ProjectBuilder-0.14.5-1.rhel7.noarch.rpm

# cd /etc/yum.repos.d/
# wget ftp://ftp.mondorescue.org/rhel/7/x86_64/mondorescue.repo
# yum --enablerepo=mondorescue install mondo
```

詳細、または従来の手順でインストールしたい場合は [GPG キーを手動で変更する](#gpg%E3%82%AD%E3%83%BC%E3%82%92%E5%A4%89%E6%9B%B4%E3%81%99%E3%82%8B%E8%A7%A3%E6%B1%BA%E6%B3%95)必要があります。TS;DR をご覧ください。

## TS; DR（原因と詳細）

[吸った揉んだあったので](https://blog.keinos.com/20170718_2796)本家に問い合わせたところ、SHA1 の問題があってから**現在使っている GPG のキーを変えたので、更新の発生していない古いパッケージは以前の GPG キーままによるエラー**とのこと。
>Well, I've changed my GPG Key (to comply with new requirements around GPG keys ans sha1 issues).
>
>So the new packages such as this new version of pb are signed with my ne key while the old stayed signed with the old key.

また、次期バージョン（MondoRescue 3.3.0）で[ GPG キーは統一される予定](http://trac.mondorescue.org/ticket/816)なのでチケット発行したから追跡してね、ですって。
>>All that will be solved when I'll publish 3.3.0 as all pkgs will have the new keys, that way yum won't have issues anymore.
>
>And it's tracked here: http://trac.mondorescue.org/ticket/816

- 2017/09/14追記： 2017/08/30 にチケット（issue）がクローズされました。すでにインストールしちゃっているので未検証ですが、恐らく直っていると思われます。
- 2017/11/30追記： 2017/08/30 にチケット 816 にて解決方法が公開されていました。(thx @takuya26m) 

### GPGキーを変更する解決法

> pb 0.14.6 now has the correct support. Test has been done on CentOS 7 and CentOS 6 with the new pb-test.repo file generated. For the net stable version, it will also be fixed there.
> 
> Meanwhile, you can modify the mondo.repo file and replace the line:
> 
>     gpgkey=ftp://ftp.project-builder.org/centos/6/x86_64/mondorescue.pubkey
> 
> by the line:
> 
>     gpgkey=ftp://ftp.project-builder.org/centos/6/x86_64/mondorescue.pubkey ftp://ftp.project-builder.org/test/centos/6/x86_64/pb-0x141B9FF237DB9883.pubkey
> 
> For the beta, I'll publish it soon this week and that will contain the fix.

Mondo Rescue レポジトリファイル（`mondo.repo`）に記載されている `gpgkey` の値を上記2番目の値に書き換え、インストールを実行したところ、インストールに成功しました。

----

# 詳細なログ

```shell-session:詳細なログ.log
Retrieving key from ftp://ftp.mondorescue.org//rhel/7/x86_64/mondorescue.pubkey
Importing GPG key 0x37DB9883:
 Userid     : "Bruno Cornec (primary address) <bruno@victoria.frmug.org>"
 Fingerprint: 54aa 7ada 8c6b 0f5d 51c7 5dc0 141b 9ff2 37db 9883
 From       : ftp://ftp.mondorescue.org//rhel/7/x86_64/mondorescue.pubkey
Is this ok [y/N]: y
warning: /var/cache/yum/x86_64/7/mondorescue/packages/perl-ProjectBuilder-0.14.5-1.rhel7.noarch.rpm: Header V4 RSA/SHA512 Signature, key ID 20ebfb0e: NOKEY
Retrieving key from ftp://ftp.mondorescue.org//rhel/7/x86_64/mondorescue.pubkey


The GPG keys listed for the "rhel 7 x86_64 - mondorescue Vanilla Packages" repository are already installed but they are not correct for this package.
Check that the correct key URLs are configured for this repository.


 Failing package is: perl-ProjectBuilder-0.14.5-1.rhel7.noarch
 GPG Keys are configured as: ftp://ftp.mondorescue.org//rhel/7/x86_64/mondorescue.pubkey
```

#検証環境
- CentOS7 （7.3.1611, Core）
- さくらのVPS、標準OSのインストール直後より