USBドライブ上でchownやchmodを実行しても何も起きないように見える場合は、まずファイルシステムを確認してください。元のコミュニティ回答ではNTFSまたはexFATの可能性が指摘されていました。これらのファイルシステムは、ネイティブのUnix所有者情報やモードビットを扱うext4/Btrfsとは動作が異なるため、妥当な説明です。
元の情報からは、MikeFrizzが実際にどのファイルシステムを使用したのかは分かりません。また、元の投稿者も確認済みの結果を報告していません。そのため、これはすべてのZimaOS USBドライブが権限を無視するという断定ではなく、ファイルシステムを考慮したトラブルシューティングガイドとして扱うべきです。
権限を変更する前にUSBのファイルシステムを確認する
ZimaOSのストレージ画面、または次のような読み取り専用コマンドでディスク形式を確認します。
lsblk -f
現在のZimaOSは、NTFS、exFAT、ext4、Btrfsなどの形式で読み書きをサポートしています。ただし、「読み書き対応」とは、すべてのファイルシステムでUnixのUID/GID/モードメタデータが同じように保持されるという意味ではありません。
現在の対応ディスク形式一覧を使用してください。
NTFSとexFATでは、通常マウントオプションによって権限が決まる
Linuxでは、exFATや多くのNTFSマウント設定において、ファイルの所有者やモードの値は、ext4のように通常のPOSIX権限変更をそのまま保存するのではなく、マウントオプションから決定されます。そのため、chownやchmodが効かないように見えたり、再マウント時に元に戻ったりすることがあります。
これは、ドライブが読み取り専用になっている、または故障しているという意味ではありません。
Linuxファイルシステムを使うと、DockerでPOSIX権限を最も予測しやすく管理できる
USBディスクをZimaOS/Linux専用で使用し、実際のUID/GID/モードを制御する必要がある場合は、ext4またはBtrfsの方が適しています。再フォーマットするとデータが消去されるため、ファイルシステムを変更する前にデータを別の場所へコピーしてください。
Dockerストレージの主な移行方法としてホスト側のシンボリックリンクを使わない
元のユーザーはImmichのデータをUSBへコピーし、以前の場所からシンボリックリンクを作成していました。しかし、コンテナは、マウントされたボリュームの名前空間の外側にあるホスト側のシンボリックリンクを自動的にたどるわけではありません。シンボリックリンクのリンク先が、コンテナから見えないパスである可能性があります。
直接バインドマウントまたはボリュームを使用する方が明確で、確認もしやすくなります。
USBフォルダーをImmichへ直接マッピングする
以前のホストパスをシンボリックリンクで別の場所へ転送するのではなく、Immichアプリまたはコンテナのボリュームを編集し、実際のUSBフォルダーをImmichが想定するコンテナ内パスにマウントしてください。
現在のIceWhaleのドキュメントでは、コンテナ側のパスを変更せずにホスト側のパスを変更できることが説明されています。
現在のZimaOS Dockerボリュームパスの仕組みを使用してください。
すべてのImmichコンポーネントを任意のUSBストレージへ無計画に移動しない
Immichのメディアライブラリやアップロード用ストレージには、PostgreSQLデータベースやアプリケーション状態とは異なる要件があります。ディレクトリを移動する前に、どのホストボリュームを移動するのかを正確に確認し、最新のImmichのデプロイおよび移行ガイドに従ってください。
コンテナの稼働中に、シンボリックリンクを使って稼働中のデータベースディレクトリを移動しないでください。
chmod 777を広範囲に適用する前にマッピングを修正する
コンテナから正しいホストフォルダーが見えない場合、権限を変更してもパスの問題は解決しません。まずマウントを確認し、その後、コンテナに必要な最小限のユーザーまたはグループアクセスだけを調整してください。
USBの権限に関するよくある質問
ZimaOSはNTFSとexFATの読み書きをサポートしていますか?
はい。現在のIceWhaleのドキュメントでは、どちらも読み書き対応として記載されています。
それでもchmod/chownの動作が異なるのはなぜですか?
これらのファイルシステムでは、ext4やBtrfsと同じ方法でネイティブのLinux POSIX所有者情報やモードを扱わないためです。
元のユーザーが使用したファイルシステムと最終的な解決策は確認されていますか?
いいえ。ファイルシステムはコミュニティ回答から推測されたものであり、元の投稿者は結果を報告していません。
