2022年8月版:slackのバックアップ方法
あと10日でも無料slackの過去ログが90日までしか閲覧できなくなります。講義も含めて、気軽にスペースを作っていた私としては、どうにかバックアップができないかと色々試してました。1ヶ月、なかなか良いものが見つかってませんでしたが、ようやく良さげなものに出会ったので、記録しておきます。
手順
slackdump というものを使います。
同じ名前の別ツールがある(間違えないようにあえてリンクしません)ので要注意。そちらでダウンロードしたものは、後述するビューアと相性が悪く閲覧できませんでした。またファイルのダウンロードにも対応してません。
Quick startの欄に簡単に使い方が書いてあります。
以降は、とりあえず、Macでの使い方
1. Releaseというページに行って、自分のパソコンにあったものをダウンロード。私は、M1 Macなので、darwin-arm64をダウンロードしました。
2. tar.gzを解凍します。きっとアーカイブユーティリティで勝手にやってくれるはず。
3. ターミナルを開いて、当該フォルダに移動。以下、xxxxの部分はユーザ名が入ります。
cd /Users/xxxx/Downloads/Downloads/slackdump-v2.2.0-alpha-darwin-amd64
4. そこで以下のコマンドを打ってみてください。
./slackdump -h
そうすると、このダイアログがでます。sudoをつけても出ます。
5. 一旦、Finderに戻って、右クリック⇒開く、とします。
6. そうすると、以下のダイアログが出るので、左側の「開く」ボタンをクリック
7. そうすると、エラーが出ますが、OKと押して閉じる。これで準備完了です。
8. 再びターミナルに行って、以下のコマンドを打つ。ファイル名yyyyは自分で決めてください。最後の-downloadをつけることで、ファイルも根こそぎダウンロードされます。
sudo ./slackdump -export yyyy.zip -export-type standard -download
9. 実行すると再びダイアログが出るので、「開く」を押す。
10. そうするとターミナルに以下のコマンドが出てきます。test部分はバックアップしたいslackのURL(例:test.slack.com )です。slack.comまでフルに打っても良いですし、testだけでもOKでした。
% sudo ./slackdump -export yyy.zip -export-type standard -download
Slackdump v2.2.0-alpha Copyright (c) 2018-2022 rusq (build: 88158c2)
? Enter Slack Workspace Name: [? for help] test
11. そうすると、ブラウザが立ち上がり、ログインを求められ、ログインすると、ダウンロード開始されます。
私の場合、マジックリンクでslackに入ることが多く、パスワードを明示的に設定していないことが多くて、いちいち、パスワードをリセットして、再設定しました。これはちょっと面倒ですが、Googleでサインインしている人などは手間ではない気がします。
12. 次に、別のslack、test2のバックアップをしようとして、以下のようにコマンドを打つと、いきなりバックアップがスタートします。これは、ログイン状態が保たれてしまっているからのようです。
sudo ./slackdump -export zzzz.zip -export-type standard -download
13. そのため、次を始める前に、一度、別のコマンドを打ちます。
./slackdump -auth-reset
14. 打つとこのダイアログが出て来るのですが、ここでExitを選ぶと、リセットされてませんでした。
Slackdump v2.2.0-alpha Copyright (c) 2018-2022 rusq (build: 88158c2)
? What would you like to do? [Use arrows to move, type to filter]
> Dump - save a list of conversations
Export - save the workspace or conversations in Slack Export format
List - list conversations or users on the screen
Exit - exit Slackdump and return to OS
15. この辺はよくわかってないのですが、Exportと進み(下矢印を押してエンター)、適当に最後までいく(standard, a, 何もなし, Y, a)と、ブラウザが立ち上がるので閉じる、ここまでやればリセットされています。
16. あとは、8-15を繰り返していけばOKです。
ダウンロードしたzipの閲覧方法
こちらは、Slack Export Viewerというのを使います。
https://github.com/hfaran/slack-export-viewer
Pythonが入っていることが前提ですが、以下のコマンドだけでインストール完了です。
pip install slack-export-viewer
あとは、ターミナルで、先程ダウンロードしたzipを指定します。
slack-export-viewer -z /path/to/export/zip
そうすると、ブラウザが起動して、slackっぽく閲覧できます。
もう1つの閲覧方法は、Slack Log Viewer
Windows版は、ここから、「Visual Studio 2019 の Microsoft Visual C++ 再頒布可能パッケージ」のインストールが必要ですが、slackdumpが作ったzipを読み込めることを確認しました。
Mac/Linuxも対応と上記には書いてあるものの、動作は確認できていません。tar.xzが壊れているのか、解凍できません。ファイルサイズがWindows版の1/100以下であることを考えると、違うものがアップされているような気もします。13時間前の更新ということを考えると、今後、アップデートされる予感がします。
最後に
ここまで書いて気づいたのですが、Private Channelも、viewer上はPublic Channelに振り分けられていました。まぁ実用上は問題ないと思います。