Fedora 22でパッケージ管理システムがYumからDNFに

Fedora 22が2015/05/26にリリースされたのでさっそくインストールしてみました。DNFというパッケージ管理システムが導入されています。


1 YumからDNFへ

パッケージ管理システムがYumからDNFに移行されています。

DNFはアルゴリズムの改善やメンテナンス性の向上を目的としたもののようです。

Yumの開発者が亡くなられたのが乗り換えの後押しなのかもしれません。

 

systemdやfirewalldと同様にインパクトがありそうな変更ですが、Yumで出来たことは基本的にDNFでできるようになっているようです。

 

/usr/bin/yumは/usr/bin/dnfを呼び出すスクリプトになっています。

executable="/usr/bin/dnf"
msg="Yum command has been deprecated, redirecting to '$executable $@'.\n"\
"See 'man dnf' and 'man yum2dnf' for more information.\n"\
"To transfer transaction metadata from yum to DNF, run:\n"\
"'dnf install python-dnf-plugins-extras-migrate && dnf-2 migrate'\n"

echo -e $msg >&2
exec $executable "$@"

yumコマンドと同様にdnfコマンドにコマンドの名前と引数を指定します。

$ dnf [コマンド] [引数]

2 YumとDNFの非互換

Yumで使えたコマンドの大部分はDNFでも使えるようです。

しかし、いくつかのコマンドはなくなっています。

 

oは使えるコマンド、xは使えないコマンドです。

o autoremove
x check
o check-update
o clean
x deplist
o distro-sync
o distribution-synchronization
o downgrade
o erase
x fs
x fssnapshot
o group
o groups
o help
o history
o info
o install
x langavailable
x langinfo
x langinstall
x langlist
x langremove
o list
x localinstall
x localupdate
x load-transaction
x makecache
o provides
o reinstall
o remove
o repo-pkgs
x repoinfo
o repolist
o repository-packages
x resolvedep
o search
x shell
x swap
o update
x update-minimal
o update-to
o upgrade-to
o updateinfo
o upgrade
x version

使えなくなったコマンドやオプションについては代替え手段がDNFのページ に記載されています。

代替え手段の例は以下のとおりです。

yum deplist [パッケージ名]
dnf repoquery --requires [パッケージ名]
yum check
dnf repoquery --unsatisfied
yum localinstall [RPMファイル]
dnf install [RPMファイル]

使い勝手はほぼ変わらないというか、より洗練された形になってるようです。

 

Fedora 22関連のリンク