• ベストアンサー

履歴について

historyコマンドで、 履歴をみることができますが、 リモートログインした際に、 一般ユーザは、セッションが違っても、 履歴をみることができるようです。 (みることができなければ、指摘していただきたいと思います。) rootでの場合は、 セッションごとに、 履歴が違うようですが、 履歴をみることは出きるでしょうか。 あるいは、 どのファイルに書き込まれているのでしょうか。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • entree
  • ベストアンサー率55% (405/735)
回答No.1

シェルを書いていただかないと回答できないと思います。 ヒストリ機能はシェルによって実装が異なるので。 例えば、Solaris の sh はヒストリ機能はありません。 でも、基本的には他セッションの履歴は参照できないはずです。 (これも実装によるわけで、コマンドの実行履歴を都度どこかのファイルに 書き出していれば実現できるでしょう) ただし、例えば bash の場合、ログアウトした時点で .bash_history ファイルに履歴の内容が記録されるので、次に同じユーザでログインした 際に .bash_history ファイルに残された履歴を参照することはできます。

kazui-o
質問者

補足

回答ありがとうございます。 csh系は使ってないので、 sh系を書きます。 opensolarisで使っているのですが、 shでも、ログインしたときに、 .sh_historyのファイルが作成されて、 historyが使えました。 問題なく?、履歴が残されていました。 bashですが、 以下を.bash_profile等のファイルに追記して、 複数でログインしても履歴の損失なく、 うまく残っていました。 function share_history { # 以下の内容を関数として定義 history -a # .bash_historyに前回コマンドを1行追記 history -c # 端末ローカルの履歴を一旦消去 history -r # .bash_historyから履歴を読み込み直す } PROMPT_COMMAND='share_history' # 上記関数をプロンプト毎に自動実施 shopt -u histappend # .bash_history追記モードは不要なのでOFFに 加えて、以下を追記して、 日時も残るようにしました。 HISTTIMEFORMAT='%Y-%m-%d %T ' shでは、 うまく反映されないのですが、 もしわかっていたら、 教えていただければと思います。

関連するQ&A

  • 履歴について。

    履歴についてですが、 コンソール上では、 linux(bash)では、 ユーザごとに、 .bash_historyに履歴が残りますが、 リモートアクセスでの操作だと、 ユーザが同じでもアクセス先が違うと、 履歴が分かれているようですが、 (残っていません。) ファイルも違うのでしょうか。 また、ファイルはどこにあるのでしょうか。 履歴や足跡や操作を監視することは可能でしょうか。 history、secure.log(ssh)、lastcomm以外に、 監視や制限をする方法はあるでしょうか。

  • コマンドの履歴を取りたい。

    早速ですが、コマンドの履歴を取りたいのですが何か方法はありますでしょうか。 .historyを見たんですが、実行日時が分からないので使えませんでした。 ほしい情報は、「ユーザー名」「コマンド」「実行日時」です。 例えばrootがpsと実行した場合には最終的には 「root,ps,2006/07/05 18:00」 と言う感じで履歴を取りたいです。 よろしくお願いいたします。

  • リモートデスクトップ接続しているユーザをCUI的に見る

    リモートデスクトップ接続しているユーザをCUI的に見る windows serverにPCからリモートデスクトップ接続が2台迄できます。 既に2台接続していると、接続できません。 この時に、誰がリモートでログインしているのかを知りたいです。 リモートデスクトップ接続が2台されていても、それとは関係無くPowerShellからCUI的なログインができます。 Enter-PSSession サーバ名 ここから、リモートデスクトップ接続しているユーザIDを知るコマンドはありませんか? 調べてみて、惜しいコマンドはいくつか見つけました。 net session ・・・ セッションを使用しているユーザ net file ・・・ ファイルを使用しているユーザ

  • .bash_historyについて

    .bash_historyファイルがホームディレクトリと、ルート直下に有ります。 ホームディレクトリの.bash_historyは各ユーザのコマンド履歴だと理解できるのですが、ルート直下の.bash_history(所有者はroot) は誰のコマンド履歴でしょうか? /root/.bash_historyもあるのでrootのコマンド履歴が2カ所あるというのも理解できないです。 [root@localhost ~]# locate .bash_history /home/hoge/.bash_history /home/abc/.bash_history /.bash_history /root/.bash_history

  • すべてのリモートログインのrootログインを禁止する

    お世話になっております。 現在RedHat Linux Enterprise 5にて検証を行っております。 そこでユーザからの要望で、全てのリモートログインにおける rootユーザログインを禁止したいという要望が出てきました。 すべてというのは、ssh、ftp、telnet、その他のユーザ、パスワードを 指定してログインしてくるセッションのことを指しております。 一般ユーザのみのログインを可能にしたいのです。 sshやftp、telnet等、個別にrootログインの禁止はできますが、 すべてのリモートアクセスを制限する設定などは ありますでしょうか。

  • XWindowとリモートのログイン時の違い

    Solaris2.6を使用しています。 Xwindowから端末エミュレータを開いた場合と リモートでログインした場合、環境変数が異なっています。 設定をどこでしているのかがわかりません。 Xwindowでログインする際は端末エミュレータを開くユーザは はじめからスーパーユーザです。 リモートでログインする際は、telnetで一般ユーザでログイン後  su - しています。 スーパーユーザのシェルはsh、通常使用している一般ユーザはcshです。 どなたか、環境変数を使い分けるための設定ファイルなどご存知の方が いらっしゃいましたらご教授ください。 また、情報が足りない場合は必要な情報を教えてください。 よろしくお願いします。

  • rootにpathを通す方法

    こんにちは、kaituyoと申します。 Solaris8でのpathの通し方の質問です。一般ユーザーの場合ですとHOMEディレクトリの中の「.cshrc」ファイルにpathを書きこみシェルを再実行させればコマンドが使えるようになりました。しかし、rootでログインすると使えません。それで、rootにもpathを通そうかしたら「.cshrc」が見つかりません。  rootでpathを通してコマンドを実行できるようにはどうしたらいいのでしょうか? よろしくお願いします。

  • CentOS8にxrdpを入れ、リモートデスクトッ

    CentOS8にxrdpをインストールしてWindowsからリモートデスクトップをしようとしています。 rootでのログインは成功しましたが、一般ユーザーでのログインができません。 yum --enablerepo=epel install -y xrdp tigervnc-server systemctl start xrdp.service systemctl enable xrdp.service firewall-cmd --permanent --zone=public --add-port=3389/tcp firewall-cmd --reload CentOS8側の設定を行った後に、 Windowsからリモートデスクトップ接続しました。 rootでログインするのには成功しました。 一般ユーザでるグインしようとすると、 Login to serverの画面で同じように Session Xvnc username ユーザー password パスワード として、 『OK』を押すと、 画面が真っ黒になった後、 リモートデスクトップ接続の画面まで戻ってしまいます。 ユーザーとパスワードは正しく、直接はログインできます。 ユーザー、パスワードを間違えた場合は、『conecting log』の画面に行きますので、入力は正しいです。 一般ユーザ側で何か設定が必要なのでしょうか?

  • インターネット履歴ファイル(*.dat)の中身を監査する方法

    宜しくお願い致します。 ユーザーのインターネット利用状況を調査/監査するために、リモートでユーザーの各PCのインターネット履歴ファイルの中身を参照しようと思っているのですが、ファイル形式がDATの為、メモ帳等を利用しても見る事が出来ません。何かしら中身を見る方法はあるのでしょうか。 c:\Documents and Settings\**\Local Settings\History\History.IE5\MSHist012006052220060529\index.dat 以上、宜しくお願い致します。

  • LinuxでGUIでsuできませんか?

    LinuxでGUIでsuできませんか? どういう事かというと、 CUIベースで作業する際には su - してルートの作業が出来ます。 これと同じ事をGUIベースでできないかという事です。 例えば 設定ファイルの書換などは $ su - でrootユーザでホームディレクトリへ 後はrootでログインしたのと同じなのでroot権限のファイルも触れます。 $ vi root-file またはコマンド起動時に一回一回スイッチ $ sudo vi root-file これをGNOME上のGUI操作でできませんか? su - みたいな何かで、rootアカウントとしてrootのデスクトップへ 後はrootでログインしたのと同じなので、「ファイル」アイコンからディレクトリを手繰ってroot権限のファイルも触れる。 rootログインを許可して、一旦ログアウトして、rootでログインとかではなく、 一旦、一般ユーザでログインしてrootにスイッチってできませんか? コマンド起動時に一回一回スイッチの場合、 sudo gedit みたいな事をコマンドからではなく、マウスクリック起動で、Windowsの右クリックからの「管理者として実行」みたいな感じで実行ってできませんか? 「アカウント毎スイッチ」「rootとして実行」それぞれ出来るかできないか、あるいはこのディストリでこれが出来るとか教えて下さい。