web-dev-qa-db-ja.com

あるフォルダーのグループと所有権を、他のフォルダーに影響を与えずに設定できないのはなぜですか?

Ubuntu PCを10.04から12.04にアップグレードしました。

問題は、ホームフォルダーに対するすべてのアクセス許可が間違っていたことです。

だから、私は次のことをしました:

Sudo chown -R james:james /home/james/*
Sudo chown -R james:james /home/james/.*
Sudo chown -R htpc:htpc /home/htpc/*
Sudo chown -R htpc:htpc /home/htpc/.*

ただし、コマンドを実行する方法に応じて、james:jamesまたはhtpc:htpcの両方のフォルダーにすべてのファイルが作成されます。

どのようにリンクされ、どのように修正できますか?

要求どおり:

james@htpc:~$ ls -l /home
total 8
drwxr-xr-x 41 james james 4096 May 20 19:32 htpc
drwxr-xr-x 31 james james 4096 May 20 20:04 james
james@htpc:~$ ls -l /home/htpc
total 236
drwxr-xr-x  4 james james   4096 Nov 25 13:19 Desktop
drwxr-xr-x  2 james james   4096 Mar 13  2011 Documents
drwxr-xr-x  5 james james   4096 Dec 22  2010 Downloads
-rw-r--r--  1 james james    179 Nov 18  2010 examples.desktop
-rwxr-xr-x  1 james james     85 Dec 27  2010 goback
-rw-r--r--  1 james james    425 Nov 28  2010 modelines
drwxr-xr-x  5 james james   4096 Dec 27  2010 Music
drwxr-xr-x 22 james james   4096 Oct 29  2012 Pictures
drwxr-xr-x  2 james james   4096 Nov 18  2010 Public
drwxr-xr-x  2 james james   4096 Nov 18  2010 Templates
-rwxr-xr-x  1 james james    251 Dec 27  2010 testmode
drwxr-xr-x  2 james james   4096 Dec 23  2010 Videos
-rwxr-xr-x  1 james james 190672 Nov  6  2010 winetricks
james@htpc:~$ 
2
RoboJ1M

これは、シェルが「。*」を「..」または1つ上のディレクトリに展開しているためです。

この場合、IMO、findを使用するのが最善です

ルートになる

Sudo -i

検索を実行

find /home/$user -exec chown $user:$user {} \;

$ userを適切なユーザー名に変更します

理論的には、chownは-Rを使用し、ワイルドカードを使用せずに動作するはずです

Sudo chown -R $user:$user /home/$user

しかし、これは隠しファイルや.filesを見逃していると思うので、RoboJ1Mが問題を引き起こした「。*」を試したのはそのためです。

6
Panther

EC2ホストでこれを使用して、ホームフォルダーのアクセス許可を修正します。

#fix home directories  
cd /home/  
for i in *; do   
    useradd $i  
    chown -R $i:$i /home/$i  
done  

-Rを実行する場合、ワイルドカードを使用する必要はありません。最上位レベルでのみ、残りはそのままにしておきます。そして、他の人が言ったように。*が一致する..

0
coteyr