
非常に奇妙な問題があります。 CentOS Server 6.10とZFSリポジトリがあります。これで、リポジトリはずっと前に誰かによって構成され、特定のユーザーのクォータ設定があることがわかりました。
ファイルシステムを確認すると、出力が表示されます。
zfs# zfs get quota volume/local/default/users
NAME PROPERTY VALUE SOURCE
volume/local/default/users quota none default
したがって、ここで親フォルダに設定されたクォータがないことがわかりますが、次のように特定のユーザーを確認するときは、
zfs# quota -v user
Disk quotas for user (uid 1000):
Filesystem usage quota limit timeleft files quota limit timeleft
/export/mail 930552 10485760 10485760 - - - - -
/export/users
2147483646 31457280 31457280 NOT STARTED - - - -
だからユーザーを見ることができます。
ユーザー
クォータが設定されました。
この ZFS は、/etc/fstab に次の値を使用して CentOS 6.10 にインストールされます。
zfs.mydomain.com:/export/users /users nfs defaults,_netdev 0 0
/ usersフォルダにアクセスできます。問題は、chownコマンドを使用しようとしたときに始まります。
chown -R test:grp /home/user/mnt/child_fldr
「テスト」ユーザーはNISユーザーです。 NISがすべてのユーザーリストを取得できる場合は、ypcat passwdを使用してテストすることもできました。 (私も)だからそれは問題にならない。無効な出力は次のとおりです。
chown: '/home/user/mnt/child_fldr/temp' の所有権の変更: ディスククォータを超えました。
もっと混乱しているのは、ローカルユーザーアカウントを使用して所有権を変更しようとすると変更できませんが、NISユーザーを使用すると愚かなディスククォータ超過メッセージが表示されることです。
テストのためにchild_fldr親ディレクトリから "quotas"ファイルを削除し、ドライブを再マウントしてみましたが、成功しませんでした。また、ZSF では、quotaoff -a コマンドを使用してテストクォータを完全に削除しようとしましたが、再度進行しませんでした。
ディレクトリの所有権を再度変更するには、問題をどのように解決する必要がありますか?
答え1
Oracleのマニュアルを見てみましたが、非常に簡単な内容を達成できませんでした。
ファイルシステムではなくユーザークォータです... :-)
だから私に必要なコマンドは次のようになります。
zfs set userquota@1000=none volume/local/default/users