NextCloudでのフォルダとファイルの所有権とアクセス権設定

NextCloudでは、/var/www/html以下のフォルダはwww-dataユーザーが所有権を持つことが推奨されています。

まずは、下記コマンドでwww-dataユーザ/グループに所有権を変更できます。

sudo chown -R www-data:www-data nextcloud

次に、アクセス権を変更します。後にファイルの編集を簡単にするために、グループへ読み込みと書き込みのアクセス権を与えています。この辺りは要件に合わせて適宜変更してください。

sudo sh -c "find ./nextcloud -type d -print0 | xargs -0 chmod 770"
sudo sh -c "find ./nextcloud -type f -print0 | xargs -0 chmod 770"

ポイントと呼べるほどではないですが、ポイントは下記です。

  • sh -cコマンドで、パイプ処理も管理者権限で実行する
  • findコマンドは-print0オプションで、null区切りへ
  • xargs -0オプションを利用して、null区切りごとに処理

ローカルユーザーをwww-dataグループに入れる

www-dataユーザーに所有権を与えて、アクセス権を上記の設定にすると、ローカルユーザーでファイルを見る・編集することができなくなります。

ファイルの編集がめんどくさくなってしまうので、作業で利用するローカルユーザーをwww-dataグループに入れてしまいましょう

usermod -aG www-data $USER

おまけ

VisutalStudioCodeでRemoteSSHを利用して開発している場合、リモートサーバー上のキャッシュファイルを一度削除しないと、ユーザーのグループ追加が反映されません。

下記コマンドをリモートサーバー上で実行して、キャッシュファイルを削除しましょう。

sudo rm -rf ~/.vscode-server

  • この記事を書いた人

たかさん

犬と暮らすクラウドエンジニア。GCPが好きだけど良く触るのはAWSとAzureです。

-NextCloud
-,