【linux】バイナリファイルの中身の様子をちょっと見たい
問題
lessやviで、バイナリファイルでもある程度見えるじゃないですか。例えば、MySQLのバイナリログとか。
でもこれ、もうちょっと見やすくならない?
答え
stringsコマンドで、表示可能な文字だけピックアップして表示してもらうことができる。
これでだいたいの設定内容や記録されている内容をつかめることもある。
MySQLのバイナリログの場合
そのまま見るとこんな感じ
# less /var/lib/mysql/mysql-bin.000001 "/var/lib/mysql/mysql-bin.000001" may be a binary file. See it anyway? <FE>bing^R<D9>P^O^A^@^@^@g^@^@^@k^@^@^@^A^@^D^@5.5.29-log^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@ ^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@g^RP^S8^M^@^H^@^R^@^D^D^D^D^R^@^@T^@^D^Z^H^@^@^@^H^H^H^B^@<F6>^X<D9>P^B^A ^@^@^@Y^@^@^@<C4>^@^@^@^H^@^A^@^@^@^@^@^@^@^G^@^@^Z^@^@^@^@^@^@^A^@^@^@^@^@^@^@^@^F^Cstd^D^H^@^H^@^H^@openp ne^@create database openpne^R^Y<D9>P^B^A^@^@^@^@^@^@S^A^@^@^@^@^A^@^@^@^@^@^@^@^@^@^@*^@^@^@^@^@^@^A^@ ^@^@^@^@^@^@^@^F^Cstd^D^H^@^H^@^H^@^K^Droot localhost^@grant usage on *.* to lo
strings するとこんな感じ
# strings /var/lib/mysql/mysql-bin.000001 | less bing 5.5.29-log openpne create database openpne root localhost grant usage on *.* to xxxxxxxx@localhost identified by 'xxxxxxxx'% root localhost grant all on openpne.* to xxxxxxxx@localhost openpne
いちいちmysqlbinlogコマンドでテキストに戻さなくても、これでだいたい様子がつかめたりするかも。
Postfixのメール設定の場合
そのまま見るとこんな感じ
# less /etc/postfix/vmailbox.db "/etc/postfix/vmailbox.db" may be a binary file. See it anyway? ^@^@^@^@^A^@^@^@^@^@^@^@a^U^F^@ ^@^@^@^@^P^@^@^@^H^@^@^@^@^@^@^B^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@x^C <C0>^@^C<FC>^@^@n*<DC><D9><8F>,^@^@^@^@^@^@^A^@^@^@^A^@^@^@^@^@^@^@^@^@^@^@^A^P^@^@<D1><8D>h^^A^@^@^@^A^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@ ^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@ ^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
stringsするとこんな感じ
# strings /etc/postfix/vmailbox.db test.example.com/xxxxxxxx/ xxxxxxxx@test.example.com
今設定どうなってたっけ?virtual.dbはテキストじゃないから読めないよ?というときも、さっと状況を把握できる。
コメント