Tシャツを使用すると、sudo権限が失われます


1

インストーラースクリプトを書いているsudoので、AWS RedHatインスタンスでテストするときに実行する必要があるため、として直接実行することはできませんroot。画面だけでなくファイルにもログを書き込みたいです。それ以上簡単なものはないはずです、

古い学校>> /tmp/Solr_Install.log 2>&1に行ってバックグラウンドでテールプロセスを開始することもできます。tail -f installer.log &このソリューションは、画面上の出力を複製または3倍にする傾向があるため、Tee-Totallerソリューションを選択しました。

力の力を使うだけで、2>&1 | tee -a /tmp/Solr_Install.logこのソリューションではsudo権限が失われ、スクリプトが失敗します。

質問:テールに同じ行が2〜3回表示されるのはなぜですか?(tail -f最後の10行を表示するという事実と関係がありますか?)

  • これはどういうわけか修正できますか?

  • ティーするときにsudoを失うのはなぜですか?

  • これは回避できますか?

  • ログ資料をファイルに入れて同時に画面に表示する他の方法はありますか?


多分これはあなたのニーズに合うケースかもしれunix.stackexchange.com/questions/61931/...
Echoes_86

Echoes_86、あなたの許しを請う必要があります。私は再確認し、あなたのソリューションは、技術的には、@ BatchyXソリューションが機能することを確認しました。どうしてsudo mojoを失うのかはまだわかりませんが、少なくとも、実用的な解決策はあります。
レフティGバログ

解決策を見つけてうれしいです。私にとっては、(あなたの質問から理解できるように)アプローチがあなたexec > >(tee "/tmp/Solr_Install.log") 2>&1にとって最適です。
Echoes_86

回答:


1

sudoセッションに固有の特権ではありません。 sudo昇格された特権で他のコマンドを実行するコマンドです。だから、あなたを実行するteesudo

2>&1 | sudo tee -a /tmp/Solr_Install.log W

動作しないのはティーではなく、ティーのために失敗するスクリプトの残りの部分です。満足のいく答えではないので、この答えをそのまま支持しないでください。
レフティGバログ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.