dnfで特定バージョンを指定してインストールするやり方

## はじめに
特定バージョンのパッケージをインストールするやり方のメモ
Postgresqlで特定のバージョンを指定してインストールしたかったけど、上手く行くまで苦労したのでまとめとく


## インストール可能なパッケージの検索
以下コマンドでインストール可能なパッケージのバージョンを調べてたが、これだと最新バージョンのしか表示されない。
```shell-session
# dnf info postgresql*-server
利用可能なパッケージ
名前         : postgresql14-server
バージョン   : 14.10
リリース     : 2PGDG.rhel8
Arch         : x86_64
サイズ       : 5.7 M
ソース       : postgresql14-14.10-2PGDG.rhel8.src.rpm
リポジトリー : pgdg14
概要         : The programs needed to create and run a PostgreSQL server
URL          : https://www.postgresql.org/
ライセンス   : PostgreSQL
説明         : PostgreSQL is an advanced Object-Relational database management system (DBMS).
             : The postgresql14-server package contains the programs needed to create
             : and run a PostgreSQL server, which will in turn allow you to create
             : and maintain PostgreSQL databases.

名前         : postgresql11-server
バージョン   : 11.22
リリース     : 2PGDG.rhel8
Arch         : x86_64
サイズ       : 4.9 M
ソース       : postgresql11-11.22-2PGDG.rhel8.src.rpm
リポジトリー : pgdg11
概要         : The programs needed to create and run a PostgreSQL server
URL          : https://www.postgresql.org/
ライセンス   : PostgreSQL
説明         : PostgreSQL is an advanced Object-Relational database management system (DBMS).
             : The postgresql11-server package contains the programs needed to create
             : and run a PostgreSQL server, which will in turn allow you to create
             : and maintain PostgreSQL databases.

名前         : postgresql12-server
バージョン   : 12.17
リリース     : 2PGDG.rhel8
Arch         : x86_64
サイズ       : 5.2 M
ソース       : postgresql12-12.17-2PGDG.rhel8.src.rpm
リポジトリー : pgdg12
概要         : The programs needed to create and run a PostgreSQL server
URL          : https://www.postgresql.org/
ライセンス   : PostgreSQL
説明         : PostgreSQL is an advanced Object-Relational database management system (DBMS).
             : The postgresql12-server package contains the programs needed to create
             : and run a PostgreSQL server, which will in turn allow you to create
             : and maintain PostgreSQL databases.

名前         : postgresql13-server
バージョン   : 13.13
リリース     : 2PGDG.rhel8
Arch         : x86_64
サイズ       : 5.5 M
ソース       : postgresql13-13.13-2PGDG.rhel8.src.rpm
リポジトリー : pgdg13
概要         : The programs needed to create and run a PostgreSQL server
URL          : https://www.postgresql.org/
ライセンス   : PostgreSQL
説明         : PostgreSQL is an advanced Object-Relational database management system (DBMS).
             : The postgresql13-server package contains the programs needed to create
             : and run a PostgreSQL server, which will in turn allow you to create
             : and maintain PostgreSQL databases.

名前         : postgresql15-server
バージョン   : 15.5
リリース     : 2PGDG.rhel8
Arch         : x86_64
サイズ       : 6.0 M
ソース       : postgresql15-15.5-2PGDG.rhel8.src.rpm
リポジトリー : pgdg15
概要         : The programs needed to create and run a PostgreSQL server
URL          : https://www.postgresql.org/
ライセンス   : PostgreSQL
説明         : PostgreSQL is an advanced Object-Relational database management system (DBMS).
             : The postgresql15-server package contains the programs needed to create
             : and run a PostgreSQL server, which will in turn allow you to create
             : and maintain PostgreSQL databases.

名前         : postgresql16-server
バージョン   : 16.1
リリース     : 4PGDG.rhel8
Arch         : x86_64
サイズ       : 6.7 M
ソース       : postgresql16-16.1-4PGDG.rhel8.src.rpm
リポジトリー : pgdg16
概要         : The programs needed to create and run a PostgreSQL server
URL          : https://www.postgresql.org/
ライセンス   : PostgreSQL
説明         : PostgreSQL is an advanced Object-Relational database management system (DBMS).
             : The postgresql16-server package contains the programs needed to create
             : and run a PostgreSQL server, which will in turn allow you to create
             : and maintain PostgreSQL databases.


# dnf search postgresql*-server
===================================================== 名前 一致: postgresql*-server =====================================================
postgresql11-server.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql12-server.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql13-server.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql14-server.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql15-server.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql16-server.x86_64 : The programs needed to create and run a PostgreSQL server
```





## 特定バージョンを指定してインストール
以下オプションを付けて実行するとインストール可能な過去のバージョンも含めて表示される.
_ex)postgresql14.7をインストールしたかった場合_
```shell-session
# dnf --showduplicates search postgresql14-server
postgresql14-server-14.7-1PGDG.rhel8.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql14-server-14.0-1PGDG.rhel8.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql14-server-14.1-1PGDG.rhel8.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql14-server-14.10-1PGDG.rhel8.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql14-server-14.10-2PGDG.rhel8.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql14-server-14.2-1PGDG.rhel8.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql14-server-14.2-4PGDG.rhel8.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql14-server-14.3-1PGDG.rhel8.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql14-server-14.4-1PGDG.rhel8.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql14-server-14.5-1PGDG.rhel8.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql14-server-14.6-1PGDG.rhel8.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql14-server-14.7-1PGDG.rhel8.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql14-server-14.8-1PGDG.rhel8.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql14-server-14.8-2PGDG.rhel8.x86_64 : The programs needed to create and run a PostgreSQL server
postgresql14-server-14.9-2PGDG.rhel8.x86_64 : The programs needed to create and run a PostgreSQL server
```

Postgresql14.7のパッケージの名称が以下だと分かったのでそれを指定してインストールして終わり!
**postgresql14-server-14.7-1PGDG.rhel8.x86_64**