問題を解決するには、script /dev/null
を実行してみてください ユーザーとして su
screen
を起動する前に .
script -q -c "su $USER -l -c \"screen -m -d -S $NAME $DAEMON start\"" /dev/null
詳細:
- https://serverfault.com/questions/116775/sudo-as-different-user-and-running-screen/116830
これは、sudo su user_name
を実行した可能性があるために発生します。 その後、screen コマンドを実行しました。
これを修正するには 2 つの方法があります。
<オール>script /dev/null
と入力して、シェルの所有権を取得します ユーザー user_name
として 次にscreen
と入力します このコマンドを実行してシェルを所有します
#script /dev/null
そして画面を試してください
#screen -r < name of the screen >
ここで承認された両方の回答に触発されて、次の関数を .bashrc
に追加しました :
sscreen(){
script -q -c "screen $*" /dev/null;
}
今は sscreen
を使っています screen
の代わりに この問題について二度と考える必要はありません。