この方法でFedora 22をFedora 23にアップグレードしようとしました。ガイド しかし、問題が発生してFedora 22を使用しているようです。しかし、システムはFedoraを実行していると思います。24
$ cat /etc/*-release
Fedora release 24 (Rawhide)
NAME=Fedora
VERSION="24 (Workstation Edition)"
ID=fedora
VERSION_ID=24
PRETTY_NAME="Fedora 24 (Workstation Edition)"
ANSI_COLOR="0;34"
CPE_NAME="cpe:/o:fedoraproject:fedora:24"
HOME_URL="https://fedoraproject.org/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Fedora"
REDHAT_BUGZILLA_PRODUCT_VERSION=Rawhide
REDHAT_SUPPORT_PRODUCT="Fedora"
REDHAT_SUPPORT_PRODUCT_VERSION=Rawhide
PRIVACY_POLICY_URL=https://fedoraproject.org/wiki/Legal:PrivacyPolicy
VARIANT="Workstation Edition"
VARIANT_ID=workstation
Fedora release 24 (Rawhide)
Fedora release 24 (Rawhide)
dnfはFedora 24リポジトリを検索するため、機能しません。
この問題をどのように解決できますか?
答え1
この試み:
- 各ファイルの
/etc/*-release
バージョン値を23に設定します。 - fedora-rawhideリポジトリを無効にする(
/etc/yum.repo.d/fedora-rawhide.repo
設定で変更enable=0
) - 端末で実行
dnf distro-sync
- この段階でパッケージにエラーが発生し、〜しない限りパッケージを含むF24名前の値が実行されます
dnf remove <entier package name>
。 - やり直す
dnf distro-sync
このソリューションでは、Fedora 23が正しくインストールされます。
答え2
あなたが言及したガイドは少し複雑で、1ページに不要な追加情報がたくさん含まれているため、トピック全体が非常に複雑に見えますが、実際にはほとんどの場合2つの簡単なコマンドで十分です。また、システムアップグレードプラグインの使用方法を実際に説明するページに移動するには、2つのリンク(dnfを使用しないことを知らせる警告メッセージの「方法」と「専用ページ」)に従う必要があります。アップグレードを準備する正式な方法です。
特に質問にリンクされているこのウィキページでは、yum / dnfを使用して直接アップグレードする方法について説明します。推奨しない、これは正式な方法ではありません。 「推奨しない」とは、一般に「何か問題が発生する可能性がある」を意味する。少なくともページの上部には、ユーザーが自分が何をしているのかわからない限り、そのページに記載されている操作を実行しないように、デフォルトで通知する黄色の警告通知があります。 Fedoraには正式なアップグレード方法があります。昔はPreUpgrade、Fedora 18からFedUp、Fedora 23にアップグレードすると、今はdnfプラグイン「system-upgrade」です。はっきり言えば、これはdnfプラグイン、ちょうどdnf自体ではありません。
どのコマンドが使用されたかは明確ではないので、これは非常に一般的な答えになります。
元の質問には回答が承認されましたが、作成者のコメントによるとエラーが発生しました。まず、いいえ妥当な理由がない限り、構成ファイルのバージョン番号を手動で変更します。おそらくもっと壊れるでしょう。
23ではなく生皮にアップグレードされたようです。この場合、ダウングレードを試してください。だから私は次のように提案することができます。
# dnf system-upgrade --releasever=23 --setopt=deltarpm=false distro-sync
# dnf system-upgrade reboot
忘れないでシステムのアップグレードプラグインのパラメータを呼び出す!
何いいえ太陽
設定ファイルのバージョン番号を変更せずにdnfを実行してください。運が良ければ、他のプログラムが依存するファイルを誤って修正しただけであり、運が悪いと、特にリポジトリファイルを変更すると、今後のアップデート/アップグレードが中断されることがあります。また、ファイル$releasever
から変数を削除しないでください/etc/yum.repos.d/*.repo
。これらの変数は重要です。その後、6か月以内に次のアップグレードのために再度変更することを忘れてしまうと、アップグレードが中断または悲惨に失敗する可能性があります。
設定ファイルを変更した場合(間違ったアドバイスに基づいてインターネット上で多くのコンテンツが見つかる場合)、変更する前に最初に作成した各ファイルのバックアップコピーを使用して変更を元に戻します。
Fedora 22からFedora 23にアップグレードする方法(公式)
FedUp は廃止され、現在は systemd を使用してシステムをアップグレードするため、アップグレードの準備と起動を行う新しいコマンド「dnf system-upgrade...」があります。ただし、互換性の理由から、fedup コマンドは引き続き機能します。
もう一度アップグレードはdnfによって開始されます。入れると言うシステムのアップグレード、dnf自体ではありません。したがって、少なくともこのプラグインの現在のバージョンを最初にインストールする必要があります。
準備する:
- 「システムのアップグレード」プラグインのインストール/アップデート:場合によっては、依存関係の問題について文句を言うことができ、/を
dnf install dnf-plugin-system-upgrade
追加する必要があります。--best
--allowerasing
dnf install --best dnf-plugin-system-upgrade
- あなたしなければならないアップグレードを準備する前にシステムを更新してください。一般に、とにかく動作しますが、更新しないとアップグレードが機能するという保証はありません。
dnf upgrade
次に、基本的に2段階のプロセスであるアップグレードを準備して開始します。
# dnf system-upgrade download --releasever=23
または# fedup --network 23
(次にリダイレクトdnf system-upgrade
)# dnf system-upgrade reboot
最後のコマンドはシステムをアップグレードモードで再起動します。起動時に選択する必要がある新しいGrubスタートアップエントリ「システムアップグレード」を作成するFedUpとは異なり、システムはスケジュールされたシャットダウンを実行し、正常に起動してグラフィックデスクトップをロードする前にアップグレードプロセスを開始します。すべてが順調に進むと、新しいFedora 23が起動します。
dnf Pythonトレースエラー
現在、すべてのdnf呼び出しのトレースを表示するdnf割り込みの問題に関する報告があります。この問題はシステムを正常に更新して解決する必要がありますが、dnfなしでは不可能であるため、回避策を使用する必要があります。すべてのdnf呼び出しのエラーメッセージは次のとおりです。
Traceback (most recent call last):
File "/bin/dnf", line 36, in <module>
...
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 51: ordinal not in range(128)
解決策は、LANG=C
たとえば、完全な更新を実行するために各dnf呼び出しの前に追加することです。
# LANG=C dnf -y upgrade
dnfシステムアップグレードの再起動サイクル
場合によっては、システムのアップグレードは開始されませんが、一度だけ起動してからシステムに再起動するのではなく、再起動ループにかかってシステムを使用できなくなります。こんなことがよく起きているようです。閲覧ファイルだからここでも言及すべきだと思いました。アップグレード - 再起動サイクルを終了する方法:
- 起動後、Grubのスタートメニューから[起動パラメータのe編集]をクリックします。テキスト領域から で始まる行まで下にスクロールし、
linux
クリックしてEndカーソルを行の末尾に移動し(スペースの後ろ)追加しますrd.break
。その後、F10起動をクリックして緊急モードに入ると、シェルが表示されます。 - ファイルを削除する必要があるため、ルートファイルシステムは読み取り専用でマウントされているため、読み書きで再マウントする必要があります。
# mount -o remount,rw /sysroot
- システムアップグレードリンクの削除:
# rm /sysroot/system-update
- 再起動(コマンド
reboot
またはCtrl++)すると、システムは正常に起動します。以下を実行してアップグレードファイルを消去することもできます。AltDeldnf system-upgrade clean
答え3
いいですね。以下は、スーパーユーザーモードで実行する操作です。
- rm すべて/etc/yum.repo.d/*.rpmnew
- すべての/etc/yum.repo.d/*.repoの場合:手動で
$releasever
23に置き換えます。 - ステップ3に進みます。