tmuxセッションの制限された権限

tmuxセッションの制限された権限

私はtmuxセッションを使用してlibvirtを使用して仮想マシンを生成するいくつかのPythonコード(/ opts / ...に格納されている仮想環境を使用します。Pythonバイナリはコピーされましたが接続されていません)を実行するスクリプトを実行しています。スクリプトが完了した後にvirsh list --allこのtmuxセッションを実行すると、マシンは表示されません。私が実行すると、sudo virsh list --allそれらが表示されます。セッションを終了すると、virsh list --all仮想マシンが期待どおりに表示されます。また、後で作成する新しいtmuxセッションにも期待どおりにリストされます。何が起こり、この問題を解決するには?

tmuxの外部でスクリプトを実行すると、仮想マシンのリストが機能しますvirsh list --all

答え1

これが問題が解決するかどうかわかりません。しかし、以下は私の問題を解決しました。

  • すべてのtmuxセッションを停止します。
    • 実際にはすべてであるため、tmuxこれ以上システムで実行されません。
  • ログアウト
  • もう一度ログインしてください
  • 新しく始めるtmux

これでvirsh list --all期待どおりに動作します。tmux

私の問題は、libvirt私が起動した後に私のユーザーがグループに追加されることですtmux。したがって、その中のすべての会話は、tmux新しい会話でもまだグループ化されていませんlibvirt


tmux新しいtmux呼び出しはまだ同じ古いサーバーで開始されるため、これは面倒ですtmux(現在のサーバーで起動してから、Unixソケットを介してFDパスを介してサーバーに転送される可能性がありますが、それはうまくいきませんtmux。ため息)。それで、すべてのものがこのサーバーと一緒に消えます。 (私はサーバーとすべてのクライアントがそれを持っていて、それらのうちの1つが死んでいても本当に悪いことは起こらないことを願っていますtmux)。ttytmux

そしてtmuxサーバーが頻繁にクラッシュします。tmux1,000台の仮想マシンで実行する場合、1年に1回は1日3回を意味します。衝突の確率が10^-20(「衝突の可能性が高い」)と同じくらい低い場合でも、tmux今日のすべてのコンピュータは少なくとも1秒あたり10^10のコマンドを実行するため、競合が頻繁に発生することを意味します。これはおおよそ今日を意味します。 、飛行機の墜落事故は350年ごとに起こります。

計算単位が1,000億個で、衝突当たりの作業損失が5ドルであるというおおよその見積もりにもかかわらず、これは依然としてtmux不安定な設計による純損失が1日100万ドルをはるかに超える可能性があることを意味します。

すみません。数学だけをやります。 (「衝突」には、すべてのセッションにアクセスできないようにする「停止」またはその他の可能性が含まれますが、停止は問題の最も一般的な原因であり、それほどtmux致命的ではありませtmuxん。です。どこか - 申し訳ありませんttytmuxttytmuxtty

関連情報