RHEL と CentOS Stream に .NET SDK または .NET Runtime をインストールする
重要
.NET 9 は 2024 年 11 月 12 日にリリースされました。 パッケージがパッケージ マネージャー フィードに表示されるか、特定の Linux ディストリビューションにパッケージが含まれるには時間がかかる場合があります。
.NET は Red Hat Enterprise Linux (RHEL) でサポートされています。 この記事では、RHEL と CentOS Stream に .NET をインストールする方法について説明します。
.NET アプリを開発する場合は、SDK をインストールします (これにはランタイムが含まれます)。 または、アプリを実行する必要があるだけの場合は、ランタイムをインストールします。 ランタイムをインストールする場合は、ASP.NET Core ランタイムをインストールすることをお勧めします。これには .NET と ASP.NET の Core ランタイムの両方が含まれているためです。
dotnet --list-sdks
および dotnet --list-runtimes
コマンドを使用して、インストールされているバージョンを確認します。 詳細については、.NET が既にインストールされていることを確認する方法に関するページを参照してください。
ご利用の Red Hat サブスクリプションを登録する
Red Hat から RHEL に .NET をインストールするには、まず、Red Hat Subscription Manager を使用して登録する必要があります。 ご利用のシステムでまだこれを行っていない場合、または不明な場合は、.NET 向けの Red Hat の製品ドキュメントを参照してください。
重要
これは CentOS Stream には適用されません。
サポートされているディストリビューション
RHEL と CentOS Stream の両方で現在サポートされている .NET のリリースの一覧は、次の表のとおりです。 これらのバージョンは、.NET のバージョンがサポート終了になるか、Linux のディストリビューションがサポート終了になるまでサポートされます。
配布 | .NET |
---|---|
RHEL 9 | 9.0, 8.0, 6.0 |
RHEL 8 | 9.0, 8.0, 6.0 |
RHEL 7 | 6.0 |
CentOS Stream 9 | 9.0, 8.0, 6.0 |
CentOS Stream 8 | 8.0、6.0 |
CentOS Linux は現在サポートされていません |
重要
.NET 9 は現在プレビュー段階であり、パッケージ リポジトリでは使用できない場合があります。
次のバージョンの .NET は、❌ サポート対象外となりました。
- .NET 7
- .NET 6 (2024 年 11 月 12 日より)
- .NET 5
- .NET Core 3.1
- .NET Core 3.0
- .NET Core 2.2
- .NET Core 2.1
- .NET Core 2.0
プレビュー バージョンをインストールする
.NET のプレビューおよびリリース候補バージョンは、パッケージ リポジトリでは入手できません。 .NET のプレビューとリリース候補は、次のいずれかの方法でインストールできます。
プレビュー バージョンの削除
パッケージ マネージャーを使用して .NET のインストールを管理しているとき、以前、プレビュー リリースをインストールしている場合、競合が発生することがあります。 パッケージ マネージャーは、プレビューではないリリースを .NET の以前のバージョンとして解釈することがあります。 プレビューではないリリースをインストールするには、最初にプレビュー バージョンをアンインストールします。 .NET をアンインストールする方法の詳細については、「.NET ランタイムと SDK を削除する方法」を参照してください。
RHEL 9
.NET は、RHEL 9 の AppStream リポジトリ に含まれています。
重要
.NET 9 は 2024 年 11 月 12 日にリリースされました。 パッケージがパッケージ マネージャー フィードに表示されるか、特定の Linux ディストリビューションにパッケージが含まれるには時間がかかる場合があります。
SDK のインストール
.NET SDK を使用すると、.NET を使用してアプリを開発できます。 .NET SDK をインストールする場合、対応するランタイムをインストールする必要はありません。 .NET SDK をインストールするには、次のコマンドを実行します。
sudo dnf install dotnet-sdk-8.0
.NET CLI の使用方法については、「.NET CLI の概要」を参照してください。
ランタイムをインストールする
ASP.NET Core ランタイムを使用すると、ランタイムを提供しない .NET を使用して作成されたアプリを実行できます。 次のコマンドを実行すると、.NET の最も互換性の高いランタイムである ASP.NET Core ランタイムがインストールされます。 ターミナルで、次のコマンドを実行します。
sudo dnf install aspnetcore-runtime-8.0
ASP.NET Core ランタイムの代替手段として、ASP.NET Core サポートを含まない .NET ランタイムをインストールできます。それには、前のコマンドの aspnetcore-runtime-8.0
を dotnet-runtime-8.0
で置き換えます。
sudo dnf install dotnet-runtime-8.0
.NET CLI の使用方法については、「.NET CLI の概要」を参照してください。
RHEL 8
.NET は、RHEL 8 の AppStream リポジトリ に含まれています。
重要
.NET 9 は 2024 年 11 月 12 日にリリースされました。 パッケージがパッケージ マネージャー フィードに表示されるか、特定の Linux ディストリビューションにパッケージが含まれるには時間がかかる場合があります。
SDK のインストール
.NET SDK を使用すると、.NET を使用してアプリを開発できます。 .NET SDK をインストールする場合、対応するランタイムをインストールする必要はありません。 .NET SDK をインストールするには、次のコマンドを実行します。
sudo dnf install dotnet-sdk-8.0
.NET CLI の使用方法については、「.NET CLI の概要」を参照してください。
ランタイムをインストールする
ASP.NET Core ランタイムを使用すると、ランタイムを提供しない .NET を使用して作成されたアプリを実行できます。 次のコマンドを実行すると、.NET の最も互換性の高いランタイムである ASP.NET Core ランタイムがインストールされます。 ターミナルで、次のコマンドを実行します。
sudo dnf install aspnetcore-runtime-8.0
ASP.NET Core ランタイムの代替手段として、ASP.NET Core サポートを含まない .NET ランタイムをインストールできます。それには、前のコマンドの aspnetcore-runtime-8.0
を dotnet-runtime-8.0
で置き換えます。
sudo dnf install dotnet-runtime-8.0
.NET CLI の使用方法については、「.NET CLI の概要」を参照してください。
RHEL 7 ❌ .NET 8
.NET 8 は RHEL 7 と互換性がないため、機能しません。
RHEL 7 ✔️ .NET 6
次のコマンドでは、scl-utils
パッケージがインストールされます。
sudo yum install scl-utils
SDK のインストール
.NET SDK を使用すると、.NET を使用してアプリを開発できます。 .NET SDK をインストールする場合、対応するランタイムをインストールする必要はありません。 .NET SDK をインストールするには、次のコマンドを実行します。
subscription-manager repos --enable=rhel-7-server-dotnet-rpms
yum install rh-dotnet60 -y
scl enable rh-dotnet60 bash
Red Hat では、rh-dotnet60
を永続的に有効にすることは推奨されません。他のプログラムに影響を与える可能性があるためです。 rh-dotnet
を永続的に有効にする場合は、~/.bashrc ファイルに次の行を追加します。
source scl_source enable rh-dotnet60
.NET CLI の使用方法については、「.NET CLI の概要」を参照してください。
ランタイムのインストール
.NET ランタイムを使用すると、ランタイムを含まない .NET を使用して作成されたアプリを実行できます。 次のコマンドを実行すると、.NET Core の最も互換性の高いランタイムである ASP.NET Core ランタイムがインストールされます。 ご利用のターミナルで、次のコマンドを実行します。
subscription-manager repos --enable=rhel-7-server-dotnet-rpms
yum install rh-dotnet60-aspnetcore-runtime-6.0 -y
scl enable rh-dotnet60 bash
Red Hat では、rh-dotnet60
を永続的に有効にすることは推奨されません。他のプログラムに影響を与える可能性があるためです。 rh-dotnet60
を永続的に有効にする場合は、~/.bashrc ファイルに次の行を追加します。
source scl_source enable rh-dotnet60
ASP.NET Core ランタイムの代替手段として、ASP.NET Core サポートを含まない .NET ランタイムをインストールできます。それには、前のコマンドの rh-dotnet60-aspnetcore-runtime-6.0
を rh-dotnet60-dotnet-runtime-6.0
で置き換えます。
CentOS Stream 9
.NET は、CentOS Stream 9 用の AppStream リポジトリに含まれています。
SDK のインストール
.NET SDK を使用すると、.NET を使用してアプリを開発できます。 .NET SDK をインストールする場合、対応するランタイムをインストールする必要はありません。 .NET SDK をインストールするには、次のコマンドを実行します。
sudo dnf install dotnet-sdk-8.0
.NET CLI の使用方法については、「.NET CLI の概要」を参照してください。
ランタイムをインストールする
ASP.NET Core ランタイムを使用すると、ランタイムを提供しない .NET を使用して作成されたアプリを実行できます。 次のコマンドを実行すると、.NET の最も互換性の高いランタイムである ASP.NET Core ランタイムがインストールされます。 ターミナルで、次のコマンドを実行します。
sudo dnf install aspnetcore-runtime-8.0
ASP.NET Core ランタイムの代替手段として、ASP.NET Core サポートを含まない .NET ランタイムをインストールできます。それには、前のコマンドの aspnetcore-runtime-8.0
を dotnet-runtime-8.0
で置き換えます。
sudo dnf install dotnet-runtime-8.0
.NET CLI の使用方法については、「.NET CLI の概要」を参照してください。
CentOS Stream 8
Microsoft リポジトリを使用して .NET をインストールします:
sudo rpm -Uvh https://packages.microsoft.com/config/centos/8/packages-microsoft-prod.rpm
sudo yum install dotnet-sdk-8.0
.NET CLI の使用方法については、「.NET CLI の概要」を参照してください。
CentOS Linux の場所
.NET は CentOS Linux でサポートされなくなりました。 2024 年 6 月 30 日、CentOS Linux のサポートは終了しました。 詳細については、CentOS Stream 8 と CentOS Linux 7 のサポートが間もなく終了することに関する記事を参照してください。
依存関係
パッケージ マネージャーを使用してインストールする場合、次のライブラリが自動的にインストールされます。 ただし、手動で .NET をインストールする場合、または自己完結型アプリを公開する場合は、次のライブラリがインストールされていることを確認する必要があります。
- krb5-libs
- libicu
- openssl-libs
- zlib
ターゲット ランタイム環境の OpenSSL バージョンが 1.1 以降である場合は、compat-openssl10
をインストールする必要があります。
依存関係は yum install
コマンドを使用してインストールできます 次のスニペットは、libicu
ライブラリのインストールを示しています。
sudo yum install libicu
依存関係の詳細については、「Self-contained Linux applications」(自己完結型 Linux アプリケーション) をご覧ください。
.NET アプリで System.Drawing.Common アセンブリを使用している場合、libgdiplus もインストールする必要があります。 System.Drawing.Common は Linux でサポートされなくなったため、これは .NET 6 のみで機能し、System.Drawing.EnableUnixSupport
ランタイム構成スイッチを設定する必要があります。
最新バージョンの libgdiplus をインストールするには、システムに Mono リポジトリを追加します。
その他のバージョンをインストールする方法
.NET の他のリリースをインストールするために必要な手順については、.NET 向けの Red Hat のドキュメントを参照してください。
パッケージ マネージャーのトラブルシューティング
このセクションでは、パッケージ マネージャーを使用して .NET または .NET Core をインストールするときに発生する可能性のある一般的なエラーについて説明します。
見つからない fxr
、libhostfxr.so
、または FrameworkList.xml
に関連するエラー
これらの問題の解決方法の詳細については、「fxr
、libhostfxr.so
、FrameworkList.xml
エラーのトラブルシューティングを行う」を参照してください。
次のステップ
.NET