タグ

ブックマーク / srkzhr.hatenadiary.org (2)

  • ARG_MAXとshell組み込みコマンド(bash) - 半径5メートル

    twitterのfriend timelineのログをファイルベースでログとってたら*1、気がつくとarchiveのディレクトリに5万件超のファイルが蓄積されていました。 これだけの件数のファイル群はrmコマンドで一気に消そうとしても、消せません。 -bash-3.00$ rm * -bash: /bin/rm: 引数リストが長すぎますこの引数リストの長さの上限はARG_MAXというマクロ定数で定義されているようです。 -bash-3.00$ getconf ARG_MAX 131072ARG_MAXの制限により、コマンドに渡す引数が(うちの環境では)131072byteを超えてしまうと上記のエラーになってしまいます。この場合は一つのファイルが「786587805」のような名前で保存されている為、5万件超のファイルを指定する「*」のファイルグロブが展開されたファイルリストの文字列が余裕で1

    ARG_MAXとshell組み込みコマンド(bash) - 半径5メートル
  • 日曜の早朝4時に動き出すmakewhatisプロセス - 半径5メートル

    夜中に突然自鯖がウィーンと唸り出したので、vmstatとか見たら案の定cpuのidleが0になっていました。 topコマンドで見るとmakewhatisという見慣れないプロセスがゴリゴリ動いています。 -bash-3.00$ ps -ef | grep makewhat root 15448 15447 0 04:22 ? 00:00:00 /bin/bash /etc/cron.weekly/00-ma root 15449 15447 0 04:22 ? 00:00:00 awk -v progname=/etc/cron.weeklyme {????? print progname ":\n"????? progname="";???? }???? { pri root 15451 15448 6 04:22 ? 00:00:10 /bin/bash /usr/bin/makewha

    日曜の早朝4時に動き出すmakewhatisプロセス - 半径5メートル
    iww
    iww 2008/11/07
  • 1