AmazonLinux2で運用しているdotnet環境をアップデートするとまた502エラーになった‥

dotNET_Logo

yum update適用後、また502エラーが発生

以前にブログに残した不具合で dotnet 実行ファイルが配置されるパスが変更されて、サービス化した起動ファイルが動かなくなっていたのだが。

今回も原因は同じだった。(※原因は最後の項目に後述)

アップデート後にdotnet実行ファイルのPATHが変更

  • AmazonLinux2での2021年11月(.NET6アップデート)以降の実行ファイルパス
/usr/share/dotnet/dotnet

share へ移動するなら、 /usr/share/dotnet/bin/dotnet の方が一般的なパスの規則にあうように思えるが。 share 直下にプログラムファイルが配置されている。

解決方法

  • エイリアスを作成して対応
    sudo ln -s /usr/share/dotnet/dotnet /usr/local/bin/dotnet
    

補足として、対象のインスタンスはWebフロント用で、直前のバージョンで/usr/local/bin/dotnetに配置していたので運用上問題ないものとしてエイリアス化している。

/usr/local/bin/dotnet だとPATH変数の環境になるためローカルユーザーでも実行できてしまうので、複数のユーザーで共有する環境の場合は適用しても良いかどうか確認したほうが良い。

※補足:原因は以前にブログに残した不具合と同じ

前回の不具合

AmazonLinux2で運用しているdotnet core3.1環境をアップデートしたら502エラーになった症状と対策の備忘録
不具合の発生状況 .NET core 3.1環境で運用しているWebシステムを.NET6対応にパッケージをアップデートすると、再起動後に502エラーになってしまった。 不具合発生時の影響 パッケージアップデート以外にシステム設定に変更なし
yum update

適用後に、

/usr/bin/dotnet

の実行ファイルが

/usr/local/bin/dotnet

へ移動していて、systemdから呼び出すサービスで不具合になっていた。
不具合としては今回も同じ症状でした。