ユーザーがログインするか ID が想定されるたびに実行されるカスタム シェル スクリプトがあり、/etc/profile.d に配置され、いくつかの基本的な環境変数操作を実行します。最近、画面が実行されている場合、何も入力しなくても画面が再接続されるように、いくつかのコードを追加しました。ただし、いくつかの問題があります。root としてログインし、su - 別のユーザーにログインすると、コードが 2 回目に実行されます。コードが最初に実行されるときに、コードの 2 回目の実行を防ぐために設定できる変数はありますか?
ディスクに何かを書き込もうとしましたが、新しい端末セッションを開始した場合にコードが実行されないようにしたくありません。これが問題のコードです。最初に再接続を試みます - 既に接続されているために失敗した場合 (中断されたセッション上にある可能性があるため)、セッションを元に戻します。
screen -r
if [ -z "$STY" ]; then
exec screen -dR
fi
最終的に、このバグにより、ユーザーを別のユーザーに置き換えることができなくなります。これを行うとすぐに、画面セッションが取得され、最初の場所に戻るからです。かなりイライラする