Logo Neurocoda

XiaomiカメラNAS不要ソリューション

Neurocoda
Neurocoda
2026-07-03 12:47:44 1.8k Words 10 Mins ...

アイデア

RcloneとOpenListのWebDAV APIを使って、123Openドライブ(またはOpenListがサポートする他のクラウドドライブ)をローカルディレクトリにマウントし、Sambaでそのディレクトリを共有します。XiaomiカメラCW500はOpenWrtと同じLAN内に配置し、XiaomiカメラはSambaプロトコルでOpenWrtの共有ディレクトリに接続して監視動画をアップロードします。

このアイデアは、適切なNASがないが、監視カメラのクラウドストレージサービスを購入したくないユーザーに適しています。

デバイス情報

OpenWrt

モデルOctopus Planet(章魚星球 S912)
アーキテクチャAArch64 Processor : Cortex-A53 * 8(Arm64)
ファームウェアバージョンOpenWrt R2024.11.05 / LuCI Master (git-24.283.20555-a1e6216)
カーネルバージョン6.1.114-flippy-92+o

Docker

Docker バージョン27.2.0
REPOSITORY TAG IMAGE ID CREATED SIZE
openlistteam/openlist latest 6c11957205f7 2 weeks ago 136MB

XiaomiカメラCW500

NAS転送機能:対応(メモリーカードが必要)
NASプロトコル:SMB1.0/SMB2.0
現在はLAN内のNAS転送のみ対応(2025-07-26)

前提条件

123ドライブのAPIキーを入手
https://www.123pan.com/developer

OpenList設定

OpenListのデプロイ

docker-compose.ymlを作成

vim docker-compose.yml

以下を記入

version: '3.8'
services:
alist:
image: openlistteam/openlist:latest
container_name: openlist
restart: unless-stopped
network_mode: host
volumes:
- OpenList:/opt/openlist/data
environment:
- PUID=0
- PGID=0
- UMASK=022
volumes:
OpenList:

コンテナを起動

Terminal window
docker-compose -f docker-compose.yml up -d

コンテナの状態を確認

Terminal window
docker logs openlist

コンテナが正常に起動し、パスワードが docker logs openlist の出力に表示されています。

クラウドドライブの追加

http://<OpenWrtIP>:5244 にアクセスし、ログインします(パスワードは docker logs openlist の出力を参照)


ログイン後、Manage をクリック

Storages セクションで Add ボタンをクリックしてストレージを追加

123Open を選択

Mount PathClientIDClientSecret を入力

メイン画面に戻ると、ディレクトリが表示され、正常にアクセスできることを確認

右下のツールバーにあるファイル作成をクリックし、クラウドドライブにアクセスできるかテストし、ついでにテストファイル test を作成

注:監視録画を暗号化してアップロードしたい場合は、Cryptストレージを追加で設定し、WebDAVユーザーのルートディレクトリを暗号化ストレージに指定してください。詳細はOpenListのドキュメントを参照。

WebDAVユーザーの追加

WebDAVユーザーを追加し、権限を設定

アクセスできるかテスト

Terminal window
curl -v http://127.0.0.1:5244/dav/


401 Unauthorized が表示されれば正常です

注:ついでに管理者アカウントのパスワードも変更することをお勧めします。

Rclone設定

設定の作成

以下のコマンドを入力

Terminal window
rclone config

ここに n を入力

次に、この設定に名前を付けます(私は WebDAV-123Open としました)

WebDAV の番号を見つけて入力(私の場合は 46

WebDAVのURLを入力(これはOpenListが提供するWebDAVインターフェース:http://Openlist-IP:5244/dav/

http://127.20.10.1:5244/dav/

認証方式を選択。ここでは 5(その他の認証方式)を選択

先ほどOpenListで作成したユーザー名を入力

パスワードを2回入力(パスワードは表示されません)

ここはEnterキーを押す

ここは n またはそのままEnter

y またはEnter

これで完了

次にアクセスできるかテスト

rclone ls WebDAV-123Open:

先ほど作成したテストファイルが表示される

マウント

マウントディレクトリを作成

mkdir -p /mnt/webdav

手動でマウントをテスト

rclone mount WebDAV-123Open: /mnt/webdav --allow-other --vfs-cache-mode writes &

マウント成功を確認

df -h | grep webdav
ls /mnt/webdav


私の環境では明らかにマウント成功しています

アンマウント

fusermount -uz /mnt/webdav

自動起動マウントの設定

/etc/rc.local ファイルを編集(exit 0 の前にスクリプトを挿入すると、システム起動時に実行されます)

vim /etc/rc.local

コマンドを挿入

sleep 15
mkdir -p /mnt/webdav
chmod 777 /mnt/webdav
/usr/bin/rclone \
--config /root/.config/rclone/rclone.conf \
mount WebDAV-123Open: /mnt/webdav \
--allow-other \
--dir-perms 0777 \
--file-perms 0777 \
--umask 000 \
--vfs-cache-mode writes \
--buffer-size 256M \
--vfs-read-chunk-size 32M \
--vfs-read-chunk-size-limit off \
--vfs-cache-max-age 5m \
--dir-cache-time 1h \
--no-modtime \
--no-checksum \
--contimeout 5m \
--timeout 10m \
--retries 10 \
--low-level-retries 20 \
--log-level DEBUG \
--log-file /tmp/rclone-mount.log \
--daemon &

手動で実行し、マウントできるか確認(/etc/rc.local に他の特別なコマンドがある場合、先ほど挿入したコマンドを直接コピーして実行してください)

Terminal window
/etc/rc.local
df -h | grep webdav
ls /mnt/webdav

先ほどと同じように text.txt が表示されれば問題ありません

デバイスを再起動し、自動マウントを確認

Terminal window
reboot

再接続後、以下を実行

Terminal window
sleep 30
df -h | grep webdav
ls /mnt/webdav


問題ありません。

rcloneの設定は以上です。次にsambaの設定を行います。

Samba設定

Sambaのインストール

luci-app-samba4 をインストール

opkg update
opkg luci-app-samba4

以下のパッケージが自動でインストールされるはずです

  • samba4-libs
  • samba4-server
  • autosamba
  • luci-app-samba4
  • luci-i18n-samba4-zh-cn

ユーザー設定

shadow-useradd をインストール

opkg update
opkg install shadow-useradd

インストールに失敗した場合は、リポジトリを変更してみてください(バックアップを忘れずに)

rootユーザーにsambaパスワードを追加:

smbpasswd -a root

新しいLinuxユーザー sambashare を作成し、ホームディレクトリを設定:

opkg update
opkg install shadow-useradd
useradd sambashare -g root
passwd sambashare
mkdir /home/sambashare
chown sambashare /home/sambashare/

sambashareユーザーにsambaパスワードを追加:

smbpasswd -a sambashare

共有ディレクトリ

OpenWrtのパネルで直接設定します(NetBIOSを無効にしないでください。無効にするとXiaomiカメラがデバイスを見つけられなくなります)

確認

再起動と自動起動の設定

Terminal window
/etc/init.d/samba4 restart
/etc/init.d/samba4 enable

状態を確認

/etc/init.d/samba4 status
logread | grep smb
netstat -tuln | egrep '137|138|139|445'

リモート接続のテスト

ファイルの読み書きテスト(ファイルをドラッグ&ドロップ)

XiaomiカメラCW500設定

カメラの設定画面で、設定 -> ストレージ設定 -> NASネットワークストレージ に移動し、そのまま追加

マウントポイントを確認:

ファイルが正しく保存されています。

OpenListでも確認可能:

遭遇した問題

Q0:XiaomiカメラがOpenWrtデバイスを見つけられないのはなぜ?
A0:まず同じネットワークセグメントかどうかを確認し、次にOpenWrtのsamba設定でNetBIOSが無効になっていないか確認してください(無効にしないでください

Q1:Xiaomiカメラが共有ディレクトリに書き込めないのはなぜ?
A1:rcloneのマウントパラメータにある権限設定 --dir-perms 0777--file-perms 0777 を確認してください。この方法ではrcloneマウントディレクトリを使用しているため、chmod 777 で権限を設定するのではなく、rcloneのマウントパラメータで権限を設定する必要があります。

Q2:権限がないと表示されるのはなぜ?
A2:Q1&A1を参照

補足

もしパブリックネットワークからこの内部「NAS」デバイスにアクセスしたい場合は、内部ネットワークトンネルを設定してください:

参考

最も完全なrcloneでクラウドドライブをローカルにマウント(Alist編)ソリューション
OpenWRTのsamba共有設定

Title: XiaomiカメラNAS不要ソリューション Author: Neurocoda Created at: 2026-07-03 12:47:44 Link: https://neurocoda.com/ja/posts/xiaomi-camera-no-nas-solution-ja/ License: This work is licensed under CC BY-ND 4.0.

Comments