Nextcloud を安全なプライベート パーソナル クラウドとして設定したいと考えています。データをさまざまなデバイスに提供する必要があります。一方では、ラップトップとスマートフォンで、同期には Nextcloud クライアントを使用するだけです。ただし、LAN にはデスクトップ コンピューターもあります。ここでは、ローカル コピーは必要ありません。この PC には SSD しかなく、Nextcloud のサイズは約 120 GB になるため、ローカル コピーは避けたいと考えています。
以前、SMB/CIFS共有を提供するXpenologyよりもDSMを使用していました。これは私のデスクトップでうまく機能し、安定しています。共有をマウントするだけですべてがうまく機能します。残念ながら、Nextcloudはサーバー側の外部ストレージとしてSMB/CIFSのみ使用可能。
そこで質問です。クラウド同期なしでローカルで Nextcloud のファイルにアクセスするにはどうすればいいのでしょうか?
解決策についての考え
WebDAV とは何ですか?
基本的に、これは SMB の代わりのようです。しかし、私の過去の経験からすると、WebDAV は SMB ほど遅く、安定していないようです。大きなファイルの場合、ファイルを開く前にまずホールファイルをダウンロードする必要があるため、WebDAV の方が遅くなると思います (WebDAV は HTTP プロトコルに基づいているようです)。
アップデート:Nextcloud で WebDAV を試してみました。ビルトインなので設定は簡単でした。しかし、思った通り、問題に遭遇しました。たとえば、WebDAV では映画を再生できませんでした。Nextcloud で「ファイル記述子が不正です」というエラーが表示されました。WebDAV ではこれは不可能のようです。まずファイルをローカルにダウンロードする必要がありますが、これは手間がかかり、視聴後にローカル コピーを削除し忘れるとクライアントにゴミデータが発生します。SMB なら、これをもっとうまく行うことができます。
Samba を実行していますか?
最初は、自分の Samba サーバーを単純に実行しようと思っていました。Nextcloud と Samba に LDAP を使用すると、これら 2 つのサービスのアカウントが重複して混乱することはありません。しかし、別の問題に遭遇しました。Samba は Nextcloud のロジックをバイパスします。これにより、バージョン履歴が失われるだけではありません。Nextcloud は Nextcloud クライアントによってアップロードされたファイルのみを追跡していることにも気付きました。Nextcloud のファイルシステムにファイルを配置しても、Nextcloud Web UI には表示されません。
したがって、カスタム SMB クライアントを使用して Nextcloud を回避すると、解決するよりも多くの問題が発生するようです。
答え1
クラウド同期なしでローカルで Nextcloud のファイルにアクセスするにはどうすればよいですか?
必要ありません。このサービスは単純にそのようには機能しません。すでにお分かりのとおり、基盤となるストレージには確かにアクセスできます。ただし、これにより Nextcloud のすべてがバイパスされるため、使用を完全に停止したほうがよいでしょう。
ownCloud、Nextcloud、Pydio などのサービスはファイルシステムに依存しないように設計されているため、ACL やメタデータ ストレージなどのファイルシステム機能にあまり依存せず、代わりにこれらの機能を独自に実装しています。ファイルシステムがメタデータ ストレージと同期しなくなると、必ず奇妙なことが発生します。
実際の要件 (主に、ブラウザ経由での表示、またはブラウザ経由での管理) に応じて、代わりに syncthing などの同期のみのソリューションを使用することもできます。これは Samba にも対応しています。
さらに、もっと使い勝手が良いかもしれない代替の WebDAV クライアントもあります。簡単に検索してみると、商用ソフトウェアの ExpanDrive が見つかりました。
Seafile (Nextcloud に相当) は、Windows 上でドライブとして表示される「Seafile Drive クライアント」を提供します。https://blogs.seafile.com/2016/09/02/announcing-seafile-drive-client-a-new-way-to-map-seafile-storage-as-virtual-drive/
ドライブクライアントは無料のコミュニティ版でサポートされています。しかし、Seafileの設定は難しいと感じました。Nextcloudに比べてはるかに複雑です。Dockerツールただし利用可能です。
答え2
実は、@Daniel B の以前の回答と @Insanemal のコメントは間違っています。NextCloud サーバーを用意し、Samba/CFIS を使用して接続することは間違いなく可能です。
これを行うには、NextCloud の公式の手順に従って NextCloud をインストールします。私は NextCloud AIO の使用を好みます。NextCloud AIO は Docker 化されており、必要に応じて別のマシンに簡単に移動できます。NextCloud を起動して実行したら、iNotifyScan をインストールする必要があります。これはドライブをスキャンし、サーバー上のフットプリントは非常に小さいです。このように、Samba を使用して追加、削除、更新、移動、コピーなどを行うと、iNotifyScan は NextCloud データベースを更新して変更を表示します。iNotifyScan はインストールが非常に簡単です。インストールと構成には 5 分もかかりませんでした。
ここに、iNotifyScan のインストール方法についての詳細な手順が記載されている記事があります。インストールと構成には 10 分もかかりません。 https://www.bitproof.co.uk/post/setting-up-inotifyscan-for-your-nextcloud-server