Linux コマンドとシェル スキル
tmux: 接続を超えて存続するセッション
tmux は、SSH 接続が切断されたときに長時間実行されている作業を維持するターミナル マルチプレクサです。切り離されたサーバー プロセスがウィンドウとペインを保持し、その後の接続 (ラップトップ、オフィス ネットワーク、別の都市) は同じライブ セッションに再接続されます。 tmux と screen の比較の背後にある専用の部分、つまり、目新しさから運用インフラストラクチャに変える習慣です。
要点
- 精神モデルはサーバークライアントです。「tmux new -sdeploy」は名前付きの分離セッションを作成します。 `Ctrl-b d` で切り離されます。 「tmuxattach -tdeploy」は、任意の接続から後で何かを返します。デプロイメント、ログテール、コンパイルは、ジョブの途中でスリープ状態になったラップトップでも残ります。
- ウィンドウとペインは作業面です。ウィンドウは Alt スタイルのタスク タブ (Ctrl-b c で作成、n/p または数字で切り替え)、ペインはウィンドウを分割します (Ctrl-b % 垂直、" 水平、矢印キーで移動): 1 つの画面、1 つのコンテキスト — 左側のペインにログインし、右側でサービスを再起動します。
- 構成は ~/.tmux.conf に保持されます。スクロールバックの拡大 (履歴制限)、スクロール/選択のマウス モード、エスケープ時間の短縮 (vi スタイルの遅延によりレイテンシーに敏感なキー処理が無効になります)、セッション名とウィンドウ名を表示するステータス バーが表示されます。構成は、他のすべての動作と同様にバージョン管理内に存在します。
- コピー モードは静かなスーパーパワーです。Ctrl-b [ は検索 (/) と選択範囲のコピーでスクロールバックに入ります。 grep クラスのプレフィックスと組み合わせることで、プレーンな SSH スクロールバックが失われる「3 画面前にエラーを見た」瞬間を回復します。
- チーム セッションは機能します。共有名前付きソケット (tmux -S /tmp/pair.sock) を使用すると、2 人のエンジニアがペアのデバッグまたはハンドオーバーのために同じライブ セッションに接続できます。セッションはソケットが存続する限り存続します (したがって、共有シェルの規律も維持されます: 驚く必要はありませんが、言及してください)。
- スクリプトの実際: `tmux new-session -d -s job 'run-script && send-keys...'`クラスの自動化と cron からの tmux コマンドにより、無人のマルチペイン ログ監視セットアップが行われます。レビューループを超えて存続する必要があるものについては、log-to-file と組み合わせます (代わりに、linux-commands cat-hub がログの所属場所をカバーします)。
現場ノート
1 台のラップトップのバッテリで 3 時間かかった展開では、作業中に 2 回バッテリが切れても tmux を使用して耐えました。セッションはインフラストラクチャであり、ビルドが完了したときエンジニアは眠っていました。
よくある質問
新しいセットアップでは tmux と screen のどちらを使用しますか?
tmux: より良い分割、スクリプトの語彙、生きた設定コミュニティ。 GNU 画面: tmux が存在しない場所にインストールされます (古いレスキュー イメージ、最小限のホスト)。私たちの比較記事では、トレードオフ テーブルについて説明しています。自由に選択できる tmux を選択し、ホストが決定するときは画面を把握してください。
仕事を中断せずに切り離すにはどうすればよいですか?
プレフィックス d (Ctrl-b d) はクライアント ビューのみを切り離します。セッション (ジョブ、シェル) はサーバー側で実行され続けます。強制終了には明示的に「tmux kill-session」が必要なため、切り離しは常に安全です。
2 人が接続して同じセッションを読み取ることはできますか?
はい、共有の名前付きソケット セッションまたは同じセッションへのプレーンな `tmuxattach -t` は両方とも機能します。ペアトレーニング、ハンドオーバー、およびインシデントコマンドは、通常の運用の使用例になりました。
すぐに効果が得られる最小限の構成は何ですか?
スクロールバック履歴が大きくなり、マウス モードがオンになり、エスケープ タイムが短くなり、ホストとセッション名を表示するステータス バーが 4 行になり、ほとんどの「どのボックスにいるのか待ってください」という事態を防ぐことができます。
linux コマンドとシェル スキル に対するKinetikatechの支援
これは何百回と対応してきたケースです:管理者がサーバーを操作するかサーバーと戦うかを決定するコマンドとスクリプトの習慣。すべての基本インストールに存在するツールを使用して、テキストとプロセスを検索、変換、転送、監視します。 Linuxサーバーセキュリティとサーバー管理で、評価、実装、24時間体制の監視、そして重要な時に30分以内の対応という、完全なサイクルを提供します。