その他
4年前の reMarkable 2 を復活させる方法
Reviving a four year old reMarkable 2 (oskrim.github.io)
要約
4年間放置されていた reMarkable 2 タブレットが、クラウド同期の失敗やソフトウェアアップデートの不具合に直面しました。この記事では、SSH接続を介してシステムクロックを修正し、ソフトウェアアップデートを複数回実行することで、デバイスを正常な状態に復旧させる手順を詳述しています。最終的には、クラウド同期が機能しない場合の代替手段として、SSH経由でのファイル転送やWebインターフェースの有効化についても解説しています。
全文翻訳
2021年に購入した古い reMarkable 2 ペーパータブレットを見つけました。約4年間ほど使用されていませんでした。デバイスは悲惨な状態でした。クラウド同期が失敗していました。表示される唯一のものは、謎のエラー0でした。ソフトウェアアップデートも機能しませんでした。この記事では、もしあなたが同様の状況に陥った場合に、タブレットを動作状態に戻す方法を詳しく説明します。
エラーについてググっていると、あるフォーラム投稿で、投稿者が「高速な解決策」と呼ぶものを見つけました。SSHでログインし、時計を設定します。
ssh root@10.11.99.1 # USB経由
# Wi-Fi経由: タブレットのLAN IP
# パスワード: タブレット上で、設定 → ヘルプ → 著作権とライセンス → 一般情報
# (ユーザー名 root、パスワード、IPアドレスはすべてそこにリストされています)
timedatectl # ずれを確認します
timedatectl set-ntp 0 # まず自動時刻同期を無効にするか、set-time がエラーになります
timedatectl set-time '2026-07-15'
timedatectl set-ntp 1
時刻を設定した後、ソフトウェアアップデートをダウンロードできるようになりました。
ソフトウェアアップデート
最初のソフトウェアアップデートの後、クラウド同期は別のエラー、HTTP 400 を返すようになりました。ジャーナルで実際の詳細なエラーメッセージを見つけました。「同期できません。reMarkable クラウドの使用を続行するには、このアプリケーションを更新してください。」
journalctl -u rm-sync.service --since '-45 min' --no-pager
クラウドは私の古いシステムバージョンを拒否していました。最初のアップデートではタブレットは 3.11.2.5 にしか到達せず、それ以上アップデートされませんでした。swupdate.service の journalctl は、ホスト名を解決できないことを示していました (アップデート後の再起動後、Wi-Fi/DNS が起動する前にアップデーターが開始され、再試行されませんでした)。
アップデートサービスを再起動すると、設定画面で 3.27.3.0 が提供され、2回目のアップデートでタブレットは最新の利用可能なソフトウェアバージョンになりました。
systemctl restart swupdate.service
update-engine.service
systemctl is-active swupdate.service
update-engine.service
journalctl --since '-1 min' -u swupdate.service -u update-engine.service
ソフトウェアバージョン 3.22 以降、SSH over Wi-Fi はアップデートによってサイレントに無効化されるようになったため、ポート 22 は LAN 上で拒否されます。代わりに USB 経由でタブレットに SSH 接続してください (例: 10.11.99.1)。
ネットワーク SSH を再有効化するには、rm-ssh-over-wlan on を使用するか、マーカーファイル rm_enable_ssh_wifi_marker をドロップします (dropbear-wlan.socket ユニットはすでに有効化されていますが、非アクティブです)。
rm-ssh-over-wlan on
systemctl is-active dropbear-wlan.socket
systemctl is-enabled dropbear-wlan.socket
test -e /home/root/.config/remarkable/rm_enable_ssh_wifi_marker && echo present
ip -4 -brief address show wlan0
ss -lntp | grep ':22 ' || true
SSH 経由でのファイルインポート
何らかの理由で、クラウド同期はまだ壊れているように見えました。新しいアップロードをプルしませんでした。これをさらにデバッグする代わりに (この時点でクラウド同期の扱いはうんざりしていました)、タブレットにはオプションのWebサーバーがあり、それをオンにしてデバイスからファイルをアップロードおよびエクスポートできるようにすることがわかりました。
それをオンにする前に (WebInterfaceEnabled=true)、xochitl の設定をバックアップしました。
conf=/home/root/.config/remarkable/xochitl.conf
cp -p "$conf" "$conf.codex-backup-before-usb-web"
if grep -q '^WebInterfaceEnabled=' "$conf"; then
sed -i 's/^WebInterfaceEnabled=.*/WebInterfaceEnabled=true/' "$conf"
else
sed -i '/^\\\[General\\\\]$/a WebInterfaceEnabled=true' "$conf"
fi
systemctl restart xochitl.service
grep '^WebInterfaceEnabled=' "$conf"
systemctl is-active xochitl.service
PDF の検査とアップロード:
curl --max-time 30 -sS http://10.11.99.1/documents/ | jq -r '.[].VisibleName'
set -e
for file in ./my-pdf-files/*.pdf; do
name=${file##*/}
status=$(curl --max-time 300 -sS -o /dev/null -w '%{http_code}' \
-F "file=@${file};type=application/pdf" http://10.11.99.1/upload)
printf '%s\t%s\n' "$status" "$name"
test "$status" = 201
done