Debian に .NET SDK または .NET ランタイムをインストールするInstall the .NET SDK or the .NET Runtime on Debian

この記事では、Debian に .NET をインストールする方法について説明します。This article describes how to install .NET on Debian. Debian のバージョンがサポート対象外である場合、.NET もそのバージョンでサポート対象外となります。When a Debian version falls out of support, .NET is no longer supported with that version. ただし、サポート対象外の場合でも、これらの手順がそれらのバージョンで .NET を実行するのに役立つことがあります。However, these instructions may help you to get .NET running on those versions, even though it isn't supported.

.NET アプリを開発する場合は、SDK をインストールします (これにはランタイムが含まれます)。Install the SDK (which includes the runtime) if you want to develop .NET apps. または、アプリを実行する必要があるだけの場合は、ランタイムをインストールします。Or, if you only need to run apps, install the Runtime. ランタイムをインストールする場合は、ASP.NET Core ランタイム をインストールすることをお勧めします。これには .NET と ASP.NET の Core ランタイムの両方が含まれているためです。If you're installing the Runtime, we suggest you install the ASP.NET Core Runtime as it includes both .NET and ASP.NET Core runtimes.

既に SDK またはランタイムをインストールしている場合は、dotnet --list-sdksdotnet --list-runtimes コマンドを使用して、インストールされているバージョンを確認します。If you've already installed the SDK or Runtime, use the dotnet --list-sdks and dotnet --list-runtimes commands to see which versions are installed. 詳細については、.NET が既にインストールされていることを確認する方法に関するページを参照してください。For more information, see How to check that .NET is already installed.

重要

パッケージ マネージャーによるインストールは、x64 アーキテクチャでのみサポートされています。Package manager installs are only supported on the x64 architecture. ARM などの他のアーキテクチャについては、Snap、インストーラー スクリプト、手動のバイナリ インストールなど、他の方法で .NET をインストールする必要があります。Other architectures, such as ARM, must install .NET by some other means such as with Snap, an installer script, or through a manual binary installation.

パッケージ マネージャーを使用せずに .NET をインストールする方法の詳細については、次の記事のいずれかを参照してください。For more information on installing .NET without a package manager, see one of the following articles:

サポートされているディストリビューションSupported distributions

次の表は、現在サポートされている .NET リリースと、それらがサポートされている Debian のバージョンの一覧です。The following table is a list of currently supported .NET releases and the versions of Debian they're supported on. これらのバージョンは、.NET のバージョンがサポート終了になるか、Debian のバージョンの有効期限が切れるまでサポートされます。These versions remain supported until either the version of .NET reaches end-of-support or the version of Debian reaches end-of-life.

  • ✔️ は、Debian または .NET のバージョンがまだサポートされていることを示します。A ✔️ indicates that the version of Debian or .NET is still supported.
  • ❌ は、Debian または .NET のバージョンがその Debian のリリースではサポートされていないことを示しています。A ❌ indicates that the version of Debian or .NET isn't supported on that Debian release.
  • Debian のバージョンと .NET のバージョンの両方に ✔️ が付いている場合、その OS と .NET の組み合わせはサポートされています。When both a version of Debian and a version of .NET have ✔️, that OS and .NET combination is supported.
DebianDebian .NET Core 2.1.NET Core 2.1 .NET Core 3.1.NET Core 3.1 .NET 5.0.NET 5.0
✔️ 10✔️ 10 ✔️ 2.1✔️ 2.1 ✔️ 3.1✔️ 3.1 ✔️ 5.0✔️ 5.0
✔️ 9✔️ 9 ✔️ 2.1✔️ 2.1 ✔️ 3.1✔️ 3.1 ✔️ 5.0✔️ 5.0
88 ✔️ 2.1✔️ 2.1 ❌ 3.1❌ 3.1 ❌ 5.0❌ 5.0

次のバージョンの .NET は、サポート対象外となりました。The following versions of .NET are no longer supported. これらのダウンロードは、まだ公開されています。The downloads for these still remain published:

  • 3.03.0
  • 2.22.2
  • 2.02.0

プレビュー バージョンの削除Remove preview versions

パッケージ マネージャーを使用して .NET のインストールを管理しているとき、以前、プレビュー リリースをインストールしている場合、競合が発生することがあります。When using a package manager to manage your installation of .NET, you may run into a conflict if you've previously installed a preview release. パッケージ マネージャーは、プレビューではないリリースを .NET の以前のバージョンとして解釈することがあります。The package manager may interpret the non-preview release as an earlier version of .NET. プレビューではないリリースをインストールするには、最初にプレビュー バージョンをアンインストールします。To install the non-preview release, first uninstall the preview versions. .NET をアンインストールする方法の詳細については、「.NET ランタイムと SDK を削除する方法」を参照してください。For more information about uninstalling .NET, see How to remove the .NET Runtime and SDK.

Debian 10 ✔️Debian 10 ✔️

APT を使用したインストールは、少ないコマンドで実行できます。Installing with APT can be done with a few commands. .NET をインストールする前に、次のコマンドを実行して、信頼されたキーの一覧に Microsoft パッケージ署名キーを追加し、パッケージ リポジトリを追加します。Before you install .NET, run the following commands to add the Microsoft package signing key to your list of trusted keys and add the package repository.

ターミナルを開き、次のコマンドを実行します。Open a terminal and run the following commands:

wget https://packages.microsoft.com/config/debian/10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb

SDK のインストールInstall the SDK

.NET SDK を使用すると、.NET を使用してアプリを開発できます。The .NET SDK allows you to develop apps with .NET. .NET SDK をインストールする場合、対応するランタイムをインストールする必要はありません。If you install the .NET SDK, you don't need to install the corresponding runtime. .NET SDK をインストールするには、次のコマンドを実行します。To install the .NET SDK, run the following commands:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-5.0

重要

"パッケージ dotnet-sdk-5.0 が見つかりません" のようなエラー メッセージが表示される場合は、「APT のトラブルシューティング」セクションをご覧ください。If you receive an error message similar to Unable to locate package dotnet-sdk-5.0, see the APT troubleshooting section.

ランタイムをインストールするInstall the runtime

ASP.NET Core ランタイムを使用すると、ランタイムを提供しない .NET を使用して作成されたアプリを実行できます。The ASP.NET Core Runtime allows you to run apps that were made with .NET that didn't provide the runtime. 次のコマンドを実行すると、.NET の最も互換性の高いランタイムである ASP.NET Core ランタイムがインストールされます。The following commands install the ASP.NET Core Runtime, which is the most compatible runtime for .NET. ご利用のターミナルで、次のコマンドを実行します。In your terminal, run the following commands:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-5.0

重要

"パッケージ aspnetcore-runtime-5.0 が見つかりません" のようなエラー メッセージが表示される場合は、「APT のトラブルシューティング」セクションをご覧ください。If you receive an error message similar to Unable to locate package aspnetcore-runtime-5.0, see the APT troubleshooting section.

ASP.NET Core ランタイムの代替手段として、ASP.NET Core サポートを含まない .NET ランタイムをインストールできます。それには、前のコマンドの aspnetcore-runtime-5.0dotnet-runtime-5.0 で置き換えます。As an alternative to the ASP.NET Core Runtime, you can install the .NET Runtime, which doesn't include ASP.NET Core support: replace aspnetcore-runtime-5.0 in the previous command with dotnet-runtime-5.0:

sudo apt-get install -y dotnet-runtime-5.0

Debian 9 ✔️Debian 9 ✔️

APT を使用したインストールは、少ないコマンドで実行できます。Installing with APT can be done with a few commands. .NET をインストールする前に、次のコマンドを実行して、信頼されたキーの一覧に Microsoft パッケージ署名キーを追加し、パッケージ リポジトリを追加します。Before you install .NET, run the following commands to add the Microsoft package signing key to your list of trusted keys and add the package repository.

ターミナルを開き、次のコマンドを実行します。Open a terminal and run the following commands:

wget -O - https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.asc.gpg
sudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/
wget https://packages.microsoft.com/config/debian/9/prod.list
sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg
sudo chown root:root /etc/apt/sources.list.d/microsoft-prod.list

SDK のインストールInstall the SDK

.NET SDK を使用すると、.NET を使用してアプリを開発できます。The .NET SDK allows you to develop apps with .NET. .NET SDK をインストールする場合、対応するランタイムをインストールする必要はありません。If you install the .NET SDK, you don't need to install the corresponding runtime. .NET SDK をインストールするには、次のコマンドを実行します。To install the .NET SDK, run the following commands:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-5.0

重要

"パッケージ dotnet-sdk-5.0 が見つかりません" のようなエラー メッセージが表示される場合は、「APT のトラブルシューティング」セクションをご覧ください。If you receive an error message similar to Unable to locate package dotnet-sdk-5.0, see the APT troubleshooting section.

ランタイムをインストールするInstall the runtime

ASP.NET Core ランタイムを使用すると、ランタイムを提供しない .NET を使用して作成されたアプリを実行できます。The ASP.NET Core Runtime allows you to run apps that were made with .NET that didn't provide the runtime. 次のコマンドを実行すると、.NET の最も互換性の高いランタイムである ASP.NET Core ランタイムがインストールされます。The following commands install the ASP.NET Core Runtime, which is the most compatible runtime for .NET. ご利用のターミナルで、次のコマンドを実行します。In your terminal, run the following commands:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-5.0

重要

"パッケージ aspnetcore-runtime-5.0 が見つかりません" のようなエラー メッセージが表示される場合は、「APT のトラブルシューティング」セクションをご覧ください。If you receive an error message similar to Unable to locate package aspnetcore-runtime-5.0, see the APT troubleshooting section.

ASP.NET Core ランタイムの代替手段として、ASP.NET Core サポートを含まない .NET ランタイムをインストールできます。それには、前のコマンドの aspnetcore-runtime-5.0dotnet-runtime-5.0 で置き換えます。As an alternative to the ASP.NET Core Runtime, you can install the .NET Runtime, which doesn't include ASP.NET Core support: replace aspnetcore-runtime-5.0 in the previous command with dotnet-runtime-5.0:

sudo apt-get install -y dotnet-runtime-5.0

Debian 8 ❌Debian 8 ❌

❌ このバージョンの Debian は現在サポートされていないことに注意してください。❌ Please note that this version of Debian is no longer supported.

APT を使用したインストールは、少ないコマンドで実行できます。Installing with APT can be done with a few commands. .NET をインストールする前に、次のコマンドを実行して、信頼されたキーの一覧に Microsoft パッケージ署名キーを追加し、パッケージ リポジトリを追加します。Before you install .NET, run the following commands to add the Microsoft package signing key to your list of trusted keys and add the package repository.

ターミナルを開き、次のコマンドを実行します。Open a terminal and run the following commands:

wget -O - https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.asc.gpg
sudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/
wget https://packages.microsoft.com/config/debian/8/prod.list
sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg
sudo chown root:root /etc/apt/sources.list.d/microsoft-prod.list

SDK のインストールInstall the SDK

.NET Core SDK を使用すると、.NET Core を使用してアプリを開発できます。The .NET Core SDK allows you to develop apps with .NET Core. .NET Core SDK をインストールする場合、対応するランタイムをインストールする必要はありません。If you install the .NET Core SDK, you don't need to install the corresponding runtime. .NET Core SDK をインストールするには、次のコマンドを実行します。To install the .NET Core SDK, run the following commands:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-2.1

重要

"パッケージ dotnet-sdk-2.1 が見つかりません" のようなエラー メッセージが表示される場合は、「APT のトラブルシューティング」セクションをご覧ください。If you receive an error message similar to Unable to locate package dotnet-sdk-2.1, see the APT troubleshooting section.

ランタイムをインストールするInstall the runtime

.NET Core ランタイムを使用すると、ランタイムを含まない .NET Core を使用して作成されたアプリを実行できます。The .NET Core Runtime allows you to run apps that were made with .NET Core that didn't include the runtime. 次のコマンドを実行すると、.NET Core の最も互換性の高いランタイムである ASP.NET Core ランタイムがインストールされます。The following commands install the ASP.NET Core Runtime, which is the most compatible runtime for .NET Core. ご利用のターミナルで、次のコマンドを実行します。In your terminal, run the following commands.

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-2.1

重要

"パッケージ aspnetcore-runtime-2.1 が見つかりません" のようなエラー メッセージが表示される場合は、「APT のトラブルシューティング」セクションをご覧ください。If you receive an error message similar to Unable to locate package aspnetcore-runtime-2.1, see the APT troubleshooting section.

ASP.NET Core ランタイムの代替手段として、ASP.NET Core サポートを含まない .NET Core ランタイムをインストールできます。それには、前のコマンドの aspnetcore-runtime-2.1dotnet-runtime-2.1 で置き換えます。As an alternative to the ASP.NET Core Runtime, you can install the .NET Core Runtime, which doesn't include ASP.NET Core support: replace aspnetcore-runtime-2.1 in the previous command with dotnet-runtime-2.1.

sudo apt-get install -y dotnet-runtime-2.1

その他のバージョンをインストールする方法How to install other versions

パッケージ マネージャーのフィードに追加されるパッケージは、変更可能な {product}-{type}-{version} の形式で名前が付けられます。The packages added to package manager feeds are named in a hackable format: {product}-{type}-{version}.

  • productproduct
    インストールする .NET 製品の種類。The type of .NET product to install. 有効なオプションは次のとおりです。Valid options are:

    • dotnetdotnet
    • aspnetcoreaspnetcore
  • typetype
    SDK またはランタイムを選択します。Chooses the SDK or the runtime. 有効なオプションは次のとおりです。Valid options are:

    • SDKsdk
    • ランタイムruntime
  • versionversion
    インストールする SDK またはランタイムのバージョン。The version of the SDK or runtime to install. この記事では常に、サポートされている最新バージョンの手順について説明します。This article will always give the instructions for the latest supported version. 有効なオプションは、次のようなリリース バージョンです。Valid options are any released version, such as:

    • 5.05.0
    • 3.13.1
    • 3.03.0
    • 2.12.1

    ダウンロードしようとしている SDK/ランタイムが Linux ディストリビューションで使用できない可能性があります。It's possible the SDK/runtime you're trying to download is not available for your Linux distribution. サポートされているディストリビューションの一覧については、「.NET Core の依存関係と要件」を参照してください。For a list of supported distributions, see .NET Core dependencies and requirements.

使用例Examples

  • ASP.NET Core 5.0 ランタイムをインストールする: aspnetcore-runtime-5.0Install the ASP.NET Core 5.0 runtime: aspnetcore-runtime-5.0
  • .NET Core 2.1 ランタイムをインストールする: dotnet-runtime-2.1Install the .NET Core 2.1 runtime: dotnet-runtime-2.1
  • .NET 5.0 SDK をインストールする: dotnet-sdk-5.0Install the .NET 5.0 SDK: dotnet-sdk-5.0
  • .NET Core 3.1 SDK をインストールする: dotnet-sdk-3.1Install the .NET Core 3.1 SDK: dotnet-sdk-3.1

パッケージがないPackage missing

パッケージ バージョンの組み合わせが正しくない場合は、使用できません。If the package-version combination doesn't work, it's not available. たとえば、ASP.NET Core SDK がない場合、SDK コンポーネントは .NET SDK に含まれています。For example, there isn't an ASP.NET Core SDK, the SDK components are included with the .NET SDK. aspnetcore-sdk-2.2 は正しくありません。dotnet-sdk-2.2 にする必要がありますThe value aspnetcore-sdk-2.2 is incorrect and should be dotnet-sdk-2.2. .NET Core によってサポートされている Linux ディストリビューションの一覧については、.NET の依存関係と要件に関するページを参照してください。For a list of Linux distributions supported by .NET Core, see .NET dependencies and requirements.

APT を使用して .NET を更新するUse APT to update .NET

.NET で新しい修正プログラムのリリースを利用できる場合は、次のコマンドを使用して、APT で簡単にアップグレードすることができます。When a new patch release is available for .NET, you can simply upgrade it through APT with the following commands:

sudo apt-get update
sudo apt-get upgrade

APT のトラブルシューティングAPT troubleshooting

このセクションでは、APT を使用して .NET をインストールするときに発生するおそれがある一般的なエラーについて説明します。This section provides information on common errors you may get while using APT to install .NET.

パッケージが見つからないUnable to find package

重要

パッケージ マネージャーによるインストールは、x64 アーキテクチャでのみサポートされています。Package manager installs are only supported on the x64 architecture. ARM などの他のアーキテクチャについては、Snap、インストーラー スクリプト、手動のバイナリ インストールなど、他の方法で .NET をインストールする必要があります。Other architectures, such as ARM, must install .NET by some other means such as with Snap, an installer script, or through a manual binary installation.

パッケージ マネージャーを使用せずに .NET をインストールする方法の詳細については、次の記事のいずれかを参照してください。For more information on installing .NET without a package manager, see one of the following articles:

見つからない \ 一部のパッケージをインストールできませんでしたUnable to locate \ Some packages could not be installed

"パッケージ {dotnet-package} が見つかりません" や "一部のパッケージをインストールできませんでした" のようなエラー メッセージが表示される場合は、次のコマンドを実行します。If you receive an error message similar to Unable to locate package {dotnet-package} or Some packages could not be installed, run the following commands.

次の一連のコマンドには、2 つのプレースホルダーがあります。There are two placeholders in the following set of commands.

  • {dotnet-package}
    これは、aspnetcore-runtime-3.1 など、インストールする .NET パッケージを表します。This represents the .NET package you're installing, such as aspnetcore-runtime-3.1. これは、次の sudo apt-get install コマンドで使用されます。This is used in the following sudo apt-get install command.

  • {os-version}
    これは、使用しているディストリビューションのバージョンを表します。This represents the distribution version you're on. これは、次の wget コマンドで使用されます。This is used in the wget command below. ディストリビューションのバージョンは、Ubuntu での 20.04 や Debian での 10 などの数値です。The distribution version is the numerical value, such as 20.04 on Ubuntu or 10 on Debian.

まず、パッケージ リストを消去してみてください。First, try purging the package list:

sudo dpkg --purge packages-microsoft-prod && sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update

次に、.NET を再度インストールしてください。Then, try to install .NET again. それでも解決しない場合は、次のコマンドを使用して手動インストールを実行できます。If that doesn't work, you can run a manual install with the following commands:

sudo apt-get install -y gpg
wget -O - https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor -o microsoft.asc.gpg
sudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/
wget https://packages.microsoft.com/config/debian/{os-version}/prod.list
sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg
sudo chown root:root /etc/apt/sources.list.d/microsoft-prod.list
sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y {dotnet-package}

フェッチできないFailed to fetch

.NET パッケージのインストール中に、Failed to fetch ... File has unexpected size ... Mirror sync in progress? のようなエラーが表示されることがあります。While installing the .NET package, you may see an error similar to Failed to fetch ... File has unexpected size ... Mirror sync in progress?. このエラーは、.NET のパッケージ フィードが新しいバージョンのパッケージでアップグレード中であり、後でもう一度試す必要があることを意味している可能性があります。This error could mean that the package feed for .NET is being upgraded with newer package versions, and that you should try again later. アップグレード中は、30 分以上パッケージ フィードを利用できません。During an upgrade, the package feed shouldn't be unavailable for more than 30 minutes. 30 分以上このエラーが継続的に発生する場合は、https://github.com/dotnet/core/issues でイシューを報告してください。If you continually receive this error for more than 30 minutes, please file an issue at https://github.com/dotnet/core/issues.

依存関係Dependencies

パッケージ マネージャーを使用してインストールする場合、次のライブラリが自動的にインストールされます。When you install with a package manager, these libraries are installed for you. ただし、手動で .NET Core をインストールする場合、または自己完結型アプリを公開する場合は、次のライブラリがインストールされていることを確認する必要があります。But, if you manually install .NET Core or you publish a self-contained app, you'll need to make sure these libraries are installed:

  • libc6libc6
  • libgcc1libgcc1
  • libgssapi-krb5-2libgssapi-krb5-2
  • libicu52 (8.x 用)libicu52 (for 8.x)
  • libicu57 (9.x 用)libicu57 (for 9.x)
  • libicu63 (10.x 用)libicu63 (for 10.x)
  • libicu67 (11.x 用)libicu67 (for 11.x)
  • libssl1.0.0 (8.x 用)libssl1.0.0 (for 8.x)
  • libssl1.1 (9.x - 11.x 用)libssl1.1 (for 9.x-11.x)
  • libstdc++6libstdc++6
  • zlib1gzlib1g

System.Drawing.Common アセンブリを使用する .NET Core アプリの場合は、次の依存関係も必要です。For .NET Core apps that use the System.Drawing.Common assembly, you also need the following dependency:

  • libgdiplus (バージョン 6.0.1 以降)libgdiplus (version 6.0.1 or later)

    警告

    最新バージョンの libgdiplus をインストールするには、システムに Mono リポジトリを追加します。You can install a recent version of libgdiplus by adding the Mono repository to your system. 詳細については、「https://www.mono-project.com/download/stable/」を参照してください。For more information, see https://www.mono-project.com/download/stable/.

次の手順Next steps