
Raspberry Piでユーザーを作成しnils
、アクセス権を持つことを望みました/media/christoph
。すべてを試して、フォルダの権限を777に再帰的に設定して終了しようとしましたが、それでも機能しませんでした。
christoph@christoph-pi:~$ su - nils
Password:
nils@christoph-pi:~$ cd /media/
nils@christoph-pi:/media$ cd christoph/
-su: cd: christoph/: Permission denied
nils@christoph-pi:/media$ ll
total 12
drwxr-xr-x 3 root root 4096 Mar 25 00:42 ./
drwxr-xr-x 22 root root 4096 Jul 13 16:27 ../
drwsrwsrwt+ 3 christoph git 4096 Aug 6 17:05 christoph/
nils@christoph-pi:/media$ id
uid=1001(nils) gid=1001(nils) groups=1001(nils),1003(git)
nils@christoph-pi:/media$ logout
christoph@christoph-pi:~$ cd /media/
christoph@christoph-pi:/media$ sudo ls -alZ
total 12
drwxr-xr-x 3 root root ? 4096 Mar 25 00:42 .
drwxr-xr-x 22 root root ? 4096 Jul 13 16:27 ..
drwsrwsrwt+ 3 christoph git ? 4096 Aug 6 17:05 christoph
nils
このフォルダに入るためのユーザー権限をどのように付与しますか?
答え1
これは+
アクセス制御リスト(ACL)の表示であり、ユーザーのすべての権限を削除してターゲットディレクトリまたはnils
ファイルで使用できるようにするには、次のものを使用する必要があります。
setfacl -x u:nils /media/christoph
または、次のコマンドを使用して権限を付与する必要があります。たとえば、読み取りと正しい権限が必要な場合は、次のようにします。
setfacl -m u:nils:rw /media/christoph
答え2
+
最後の権限は、ls
ファイルにACLセットがあることを示します。 ACL は標準権限をオーバーライドします。
例えば
$ mkdir X
$ chmod 777 X
$ ls -ld X
drwxrwxrwx 2 sweh sweh 4096 Aug 6 11:34 X/
$ setfacl -m 'u:vbox:---' X
$ ls -ld X
drwxrwxrwx+ 2 sweh sweh 4096 Aug 6 11:34 X/
したがって、この時点では、次のようにACLを含む777ディレクトリがあります。+
$ sudo su vbox
vbox:/tmp$ cd X
bash: cd: X: Permission denied
vbox:/tmp$ ls -ld X
drwxrwxrwx+ 2 sweh sweh 4096 Aug 6 11:34 X
vbox:/tmp$ getfacl X
# file: X
# owner: sweh
# group: sweh
user::rwx
user:vbox:---
group::rwx
mask::rwx
other::rwx
ユーザーはvbox
ディレクトリに入ることができません。getfacl
理由が表示されます。