0

私は私のejabberdを爆破しました。何が壊れているのか本当にわかりません。とにかく、後でそれを見てみましょう。私が必要としているのは私の名簿です。すべてが mnesia db に保存されます。

連絡先を抽出したい (覚えておいてください、ejabberd を開始できません。erl は動作しています)

どうすればこれを最善の方法で行うことができますか? 私は erlang や mnesia を使ったことはありません。ファイル roster.DCD に自分の名簿が含まれていると思われます。

今のところ、そのファイルの内容をテキストファイルにダンプするだけで十分です...

どんな助けでも大歓迎です:-)

敬具

4

1 に答える 1

1

ejabberd 問題の原因が Mnesia データベースの破損以外にあると仮定すると、Erlang シェルを起動してデータベースから直接読み取ることができます。次のコマンドを実行します。

erl -sname ejabberd@myhost -s mnesia -mnesia dir '"/var/lib/ejabberd"'

典型的な Ejabberd 構成を使用していると想定していることに注意してください。/var/lib/ejabberd を正しいディレクトリ名に置き換えます。

あるいは、ejabberd を少なくともstartにすることができれば、たとえそれが何らかの意味で「機能しない」場合でも、Ejabberd を開始してから を実行するだけで、これをさらに単純化できますejabberdctl debug。これにより、正しいノード名を推測する必要がなくなります。

とにかく、Erlang シェルを開いたら、次のコマンドを実行します。

mnesia:dump_to_textfile("my_ejabberd.txt").

Ctrl+C を 2 回押して終了すると、すべての設定が完了します。

于 2011-06-18T17:46:37.797 に答える