*ターゲット*ユーザーのbash履歴に「sudo」コマンドを追加する

*ターゲット*ユーザーのbash履歴に「sudo」コマンドを追加する

何年も私を悩ませてきたのは、rootで実行されたコマンドのシェル履歴を取得するには、2つの異なる場所を確認する必要があることです。

  1. 確認してみてください/root/.bash_history
  2. /brian/.bash_historyコマンドを確認する必要がありますsudo

bashソリューションはありますか(または実際にどのsudoshell - ターゲットユーザーのシェル履歴にコマンドを保存する切り替えを行いますか?

ベストアンサー1

私はあなたが仮定働くそのプライベートUnixでは、私のようにルートで唯一のユーザーモードです。分裂した性格を避けるために、rootとしてログインします。今のところ - そんなこと知っています一種のセキュリティの質問。

システム管理者として、私はインストール、テストなどで忙しいので、ユーザーに満足のいくログインを提供できませんでした。

複数のコンソールおよび/またはxtermを使用している場合、bash履歴はまだ混乱しています。これまでに私が持っていた唯一の組織は、hist-keep私がよく使ういくつかのコマンドを含む小さなファイルです。

検索したい場合私のものコマンドのシェル履歴ルートとして実行

検索するだけですか、それとも履歴ファイルを「ロード」して次のことを行いますか?過去の検索

sudo昨日はあまり浮かんでいませんでした。sudoと医者質問。 「sudo」と「pseudo」は英語で同じ発音を持っており、「kana」(または「alias」)を考えると、実際に意味論的なつながりがあると思いました。

Sudoは、実際にコマンドを個別に追跡することです。これは、「root」が「brian」(および他の人)が「root」という仮名で実行することを確認する方法です。

しかし、あなたはもっと欲しいです。マージ他の歴史。

私は解決策がhistory -rルートの履歴ファイルにsudo行を挿入するよりもファイルに関連していると思います。

応急処置ソリューションはもちろん簡単な関数/スクリプトです探す両方のファイルで次のようになります。

grep $1 $root-hist
grep "sudo.*$1" $user-hist

これにより、sudoroot-combigrep "mount"「mount」を含むすべての関連行を取得できます。 (使いやすいタブの完成名を直接選択してください)

おすすめ記事