• ベストアンサー

md5sum途中で止まったように見える

下記コマンドを実行しました。 [コマンド]  find /var/log/ -type f -exec md5sum {} \ ログファイルによっては、「リアルタイムで追記されるファイル」等あります。 <質問> コマンド実行後、応答が無い時、 「ファイルのmd5sum処理に処理時間ががかかって応答が無い状態なのか? この状態なら何のファイルを処理中なのかわかると助かります。」 それとも 「普通にフリーズしているのか?(何らかのファイルで引っかかって処理が進んでいないのか?)」 を判断するコマンド or 方法は何かありませんでしょうか? ご教授お願いします。

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

  • ベストアンサー
noname#189141
noname#189141
回答No.4

-f 間違いです。 気付いていただけるものかと思ってました。 find /var/log/ -type f -print -exec md5sum {} ¥

kureakai
質問者

お礼

追加補足ありがとうございます。 問題なく動きました。 ご教授ありがとうございました。

その他の回答 (3)

noname#208507
noname#208507
回答No.3

> 「普通にフリーズしているのか? (何らかのファイルで > 引っかかって処理が進んでいないのか?)」 > を判断するコマンド or 方法は何かありませんでしょうか? 別の端末から top コマンドを実行してみて、find と md5sum の どちらかが CPU 占有率の高いプロセスの上位に現れるかが、 処理が進んでいるかの目安になると思います。

kureakai
質問者

お礼

やはり、top等のコマンドになりますか。 情報ありがとうございました。

noname#189141
noname#189141
回答No.2

find /var/log -type -f -print -exec md5sum {} ¥ とりあえずファイル名は出るかと思います。

kureakai
質問者

お礼

情報ありがとうございます。 教えて頂いたコマンドを実行しましたが find /var/log -type -f -print -exec md5sum {} \; 下記のようなエラーメッセージがでてしまいました。 :find: Arguments to -type should contain only one letter

  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.1

>「ファイルのmd5sum処理に処理時間ががかかって応答が無い状態なのか? この状態なら何のファイルを処理中なのかわかると助かります。」 別の端末でpsコマンド…でしょうか。 findから起動されたmd5sumのpidが判れば、/procディレクトリから調べられるかも知れません。 psコマンドだけでも「どのファイルか」は判ると思われますが。

kureakai
質問者

お礼

>findから起動されたmd5sumのpidが判れば、/procディレクトリから調べられるかも知れません。psコマンドだけでも「どのファイルか」は判ると思われますが。 psコマンドでの判断ですか。ありがとうございました。

関連するQ&A

  • md5sumファイル比較

    <コマンド> find /var/log/squid/ -type f -exec md5sum {} find /mnt/backup/squid/ -type f -exec md5sum {} にて同じファイルからmd5sumで取得しました。 <結果> ff6bf6f97dc90b05a950015c17fb8146 /var/log/squid/squid.log-20130202.gz ff6bf6f97dc90b05a950015c17fb8146 /mnt/backup/squid/squid.log-20130202.gz 2つのsquid.log-20130202.gz が同じものか比較したいのですが、 前のパス「/var/log/squid/」「 /mnt/backup/squid/」が異なるために 比較しても異なるファイルとみなされます。 cutコマンドでパイプしてみたりしたのですが、 今度は、どちら側のファイルmd5sum結果だったかわからなくなってしまいます。(mntか?varか?) <cut対応> find /var/log/squid/ -type f -exec md5sum {} \; | cut -d "/" -f1,5 →結果:ff6bf6f97dc90b05a950015c17fb8146 /squid.log-20130202.gz <質問> 「/var/log/squid/」「 /mnt/backup/squid/」の部分が異なっていても、 ファイル名(squid.log-20130202.gz)とmd5sum値が同じなら、同じという結果を出すコマンドライン、 またはシェルスクリプトで対応できる方法を探しています。 ご教授お願いします。

  • シェルスクリプトでmd5sum

    シェルスクリプトでmd5sumを計算して2つのファイルを比較しようとしています。 /bin/sh # ファイル名を出力 echo "fileout1_${file1DirFile}"→/var/log/httpd.log 入っています。 echo "fileout2_${file2DirFile}"→/root/httpd.log 入っています。 #-- MD5値取得 file1DirFileMD5=`md5sum ${file1DirFile} | awk '{printf("%s",$1)}'` file2DirFileMD5=`md5sum ${file2DirFile} | awk '{printf("%s",$1)}'` この後、ifで「file1DirFileMD5」と「file2DirFileMD5」比較。 <質問> #-- MD5値取得 の部分の下二行で、シェルスクリプトが止まります。 止まる原因が分からないのです。(処理が進まず、止まったままになります) 原因がわからず困っております。 別の書き方でも構わないので、解決方法はないでしょうか。 ご教授お願いします。

  • md5について

    メッセージダイジェストを表示させるコマンドはmd5sumなどだと思いますが、では作成したファイルのメッセージダイジェストを作成(生成)するコマンド(やり方)はどのようになりますでしょうか? ご存知の方、よろしくお願いします。

  • PHPでUNIXコマンドを発行してファイルへ追記できない

    PHPでUNIXコマンドを発行してファイルへ追記できない 現在,/etc/aliasesファイルへ,PHPから文字列を追加したいのですが,うまくいかず,皆様のお知恵を頂ければと思います. 現在,sudoersにapacheユーザを追加しており,パスワードを渡せば全権限を持たせています. それで,PHP上で $command = "echo '".___APACHEPASS___."' | sudo -S cp /etc/aliases /etc/alias_bak/aliases.bak.".date("YmdHis"); exec($command, $output); とすれば,aliasesファイルのバックアップファイルが生成されます. ところが,文字列を追記するため,コマンド $command = "echo '".___APACHEPASS___."' | sudo -S echo '{$_POST['user_name']}: | /var/www/html/test.php' >> /etc/aliases"; を発行しても追記されません. バックアップファイルコマンドが実行されれば,/var/log/secureにログが残りますが,追記コマンドでは失敗のログすら記録されていません. なお,コマンド自体を表示させると, echo 'apache-password' | sudo -S echo 'user-name: | /var/www/html/test.php' >> /etc/aliases となっており,rootのコマンドラインで echo 'user-name: | /var/www/html/test.php' >> /etc/aliases を実行すれば,正常に追記されます. 乱文となってしまいましたが,追記されない原因の見当がついたかた,ご教授頂けると幸いです. よろしくお願い致します.

  • SHA1SUMができない。

    こちらのサイトを参考にCentOSのインストールを試みています。 しかし、いきなり壁が... sha1sumを実行すると、「sha1sum: SHA1SUM: No such file or directory」となってしまい、チェックができません。 dirコマンドにてそのフォルダにisoイメージx6、sha1sum.txt、sha1sum.exeファイルが入っているのは確認してます。 何からチェックしたらよいでしょうか?

  • Java getRuntime().exec() でのパイプ利用に関して。

    はじめまして。 JavaのgetRuntime().execでコマンドプロンプトを動かそうと思っております。 コマンドプロンプトで「netstat -an | find "***"」というコマンドをJavaから実行したいと思っています。 しかし、Javaではパイプ(=|)を利用したコマンドは実行できない。 ということを検索してたどり着きました。 例などでは、「シェル」を利用しろ。などとかかれていましたが何をどうすればいいかわかりません。 String[] s = {"netstat","-an"}; Process process = Runtime.getRuntime().exec(s); 今は上記の状態で「netstat -an」が実行されています。 どうすれば「find "***"」で***の検索をかけることができるでしょうか? どうぞ、よろしくお願いいたします。

    • ベストアンサー
    • Java
  • Winで使うMD5(改ざん検出のみでいいです)はどこにあるんでしょうか?

    FTPサイトなどからダウンロードしたファイル内容の検証に使うMD5のWindows用のものってどこにあるんでしょうか?講習会で、講師の人がコマンドラインで"md5sum"ってやってたのは見たことがあるので、ネットで探してみたんですが、うまく見つけられないので、ご存知の方がいらっしゃいましたら教えてください。

  • シェルスクリプトについて教えてください

    以下のようなフォルダ構成があります。 /var/tmp/組織コード/log このlogディレクトリ配下に0byteのファイルがたくさんあり、それを全て定期的に削除したいと思っています。 また、同ディレクトリにはそれ以外のファイルやフォルダも入っていて、それらは絶対に削除してはいけないものです。 以下のようなコマンドを考えたのですが、なにか懸念される点はあるでしょうか? find /var/tmp/*/log -size 0c -exec rm {} \; いろいろ調べたのですが、Linux系は初心者のため、これで妥当かどうか不安なのです。 環境はSolaris11で、bashです。 「組織コード」の部分を固定値にしてコード数分コマンドを書けば確実だとは思いますが、組織コードが増えたり変わるたびにシェルにもメンテが必要になるので、イマイチだと思っています。 詳しい方、ぜひアドバイスしていただけないでしょうか。 よろしくお願いします。

  • sha1sumコマンドの使い方を教えて下さい。 

    FC6のソース及び SHA1SUM(txt)をwindows機のデスクトップ上の同じフォルダ にダウンロードしました。 CDに焼く前に、sha1sumコマンドでチェックをするため、 C:\Documents and Settings\Taro>cd C:\Documents and Settings\Taro\デスクトップ\ Fedora6 [Enter] C:\Documents and Settings\Taro\デスクトップ\Fedora6>sha1sum -c SHA1SUM.txt [Enter] とすると、 ------------------- 'sha1sum' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 C:\Documents and Settings\Taro\デスクトップ\Fedora6> ------------------- となってしまいます。 sha1sumコマンドはどのようにして使うのでしょうか? 使うための前処理はどのように行えばよいのでしょうか? 使い方を教えて下さい。 

  • lprコマンド(印刷)を実行すると、lprコマンド実行ログを取るように

    lprコマンド(印刷)を実行すると、lprコマンド実行ログを取るようにしたい。 osはCentOSです。このCentOS上からlprコマンドを実行すると 指定されたプリンタから印刷されます。ログも取りたいと思い、 CentOS上にて、/etc/syslog.confに、 lpr.* /var/log/lpr.log を追記し、syslogを再起動させました。しかし、 プリンタからlprコマンドで印刷をしてもログは記録されません。 利用できるファシリティにlprはあるはずなのですが・・・。 プリンタの実行ログを作成するには何か足りない設定があるのでしょうか?