chown: `。 'の所有権を変更:無効な引数


8

私たちのシステム管理者が休暇中に新しいサーバーにいくつかの新しいファイルをインストールしようとしています:

これが私の df

#  df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sdb3             273G   11G  248G   5% /
tmpfs                  48G  260K   48G   1% /dev/shm
/dev/sdb1             485M  187M  273M  41% /boot
xxx.xx.xxx.xxx:/commun
                       63T  2.2T   61T   4% /commun

rootとして、新しいディレクトリを作成してchown/ home / lindenbの下で実行できます

# cd /home/lindenb/
# mkdir X
# chown lindenb X

/ communで同じコマンドを実行することはできません

# cd /commun/data/users/lindenb/
# mkdir X
# chown lindenb X
chown: changing ownership of `X': Invalid argument

どうして ?どうすれば修正できますか?

更新

マウント:

/dev/sdb3 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sdb1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
xxx.xx.xxx.xxx:/commun on /commun type nfs (rw,noatime,noac,hard,intr,vers=4,addr=xxx.xx.xxx.xxx,clientaddr=xxx.xx.xxx.xxx)

バージョン:

$ cat /etc/redhat-release 
CentOS release 6.3 (Final)

1
mountこの出力を質問に入力して貼り付けます。また、どのOSを使用していますか?
jwbensley 2012年

1
NFSについてはあまり詳しくありません。しかし、/ commun / data / users / lindenb /は、マシンのローカルディレクトリではなく、NFSを介してアクセスされるネットワーク共有であると見なすため、NFSサーバーのアクセス許可を調べることから始めます(これは私の知識の範囲外です)
jwbensley 2012年

回答:


7

/communファイルシステムは、リモートサーバから装着され、エラーメッセージがそれがあることを示唆しているのNFSv4をマウントすることができた(以前のNFSバージョンの同じ許可が拒否されました)。デフォルトでは、リモートファイルサーバーはリモートrootユーザーをnobodyアカウントにマップするため、ファイルの所有権を変更できません。

最も簡単な解決策は、ローカルlindenbアカウントを使用して、ディレクトリの下に/communディレクトリを作成することです。ルートとして

sudo -u linedb mkdir -p /commun/data/users/lindenb

それが機能しない場合は、IDマッピングが行われている可能性があるため、サーバー上のディレクトリをmkaeし、xxx.xx.xxx.xxxそこで所有権/権限を変更する必要があります。


ありがとう、でもそれはうまくsudo -u lindenb mkdir -p /commun/data/users/TMP mkdir: cannot create directory いきませんでした / commun / data / users / TMP ':許可が拒否されました `
Pierre

NFSv4についてのあなたの主張は真っ赤なニシンですが、私は正解として残りの答えに同意します。
DaveG 2012年

とにかくあなたの答えをありがとう、私はそれらの変更を一人でするのに十分なスキルがありません。私のシステム管理者の休暇が終わるのを待ちます。それが正しかったかどうかを確認します:-)
Pierre

@DaveG:なぜですか?NFSv4マウントでディレクトリをrootとして試してみると、OPとまったく同じエラーメッセージが表示され、NFSv3に切り替えると、Permission Deniedが表示されるため、これを使用して、ユーザーIDとやり取りする方法がわかります。
user9517 2012年

2
rootはNFSv3でも押しつぶされるため、エラーメッセージは異なる可能性がありますが、rootユーザーとしてディレクトリを作成することはできません。
DaveG 2012年

5
mount -t nfs -o vers=3 SERVER:PATH MOUNT_PATH

これでうまくいきました。


3

これは確かにNFS4の問題です。特に多くのユーザーがクライアントとNFSサーバー間の正しいマッピングを必要とする場合、このような問題を解決するためにrpc.idmapd NFS4マッピングデーモンを検討する必要があるかもしれません。NFS3(CentOS <6など)では、マッピングデーモンを使用していません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.