背景
私は開発チームで働いており、プロジェクトごとにクライアント環境をシミュレートするために異なるサーバー設定を持っています。各サーバーで何をしているのか、どこから始めるべきかを追跡するのは難しいかもしれません。この問題を軽減するために、ターミナルマルチプレクサ(tmux / screen)の使用を開始しました。
私の問題は、私が作業しているサーバーにあり、プロジェクトリーダーが間違いを犯してシステムをリセットすることです。これが起こると、私がいた場所、私がやっていたことに戻ることができるすべての画面と時間が失われます。
質問
すべての開発者にはサーバーへのrootアクセス権が与えられます。プロジェクトリーダーがサーバーをリセットすることを決定した場合は、ユーザーのログインまたは画面実行の警告を受け取るようにサーバーを設定できるかどうか疑問に思います。
(可能であれば、私が実行しているタスクとサーバーをリセットするための別の解決策を見つける必要がある理由を説明するメッセージを含めたいと思います。
答え1
短縮されたコマンドwrite-to-allwall
は、伝統的にログインしているすべてのユーザーにメッセージをブロードキャストするために使用されます。
しかし、部署が正しく機能するためには、人間的な次元でもコミュニケーションがなされなければならないと思います。
who
または、w
ログインしているユーザーのリストとその端末がアイドル状態であるかどうかを示し、ユーザーがまだアクティブであるかどうかを示しますが、バックグラウンドジョブを実行している可能性があるため、正常に終了する必要があります。
誰もが同じユーザーとしてログインすることは本当に誰であるかわからず、セキュリティ上の問題を引き起こす可能性があるため、良い考えではありません。このsudo
コマンドは、ユーザーまたはユーザーグループが特定のユーザーとして一部またはすべてのコマンドを実行し、root
sudoを使用してログインし/var/log/syslog
たり、監査証跡を提供したりするのに最適な方法です。 (どのログファイルもディストリビューションによって異なります)。/var/log/messages
/var/log/auth
あなたの会社は、サーバー全体で標準的な共通環境を持つ方が良いでしょう。おそらく、テスト、開発、統合、生産などのための隔離されたインスタンスを提供する仮想サーバーを検討します。あなたの質問は多くのトピックを扱うので、短い答えでそれを解決するのは難しいです。
答えなければならない質問が多いようですが、他の人が業界のベストプラクティスに関する良いドキュメントを教えてくれることを願っています。
編集1 @Dodzi Dzakuma、まあ、それは1つの方法かもしれませんが、なぜシステムをそのように頻繁にシャットダウンする必要があるのだろうか。長期的には、クロージャ関連のスクリプトを開発するよりも基本的な問題を解決する方が良いかもしれません。また、シャットダウンはrootとして実行する必要があります。これは私が使用することをお勧めしますsudo
。使用しているサーバーとは別に、チャットサーバーを介して互いに通信する他の方法はありますか?
@slm ありがとうございます。