1台のコンピュータで2つのユーザーアカウントを制御しますが、rootではありません。あるアカウントから別のアカウントにいくつかのファイルを「プレゼント」できますか?
理由:マイコンピュータに元のリポジトリとしてデフォルトのgitリポジトリが設定されています。これで、このリポジトリのファイルを自分の個人アカウントの代わりに "git"ユーザーが所有するようになります。この特別な場合は、コピーを「git」に複製し、デフォルトのストレージを削除してから、レプリカ(デフォルトのストアとして作成する必要があります)をその場所に配置することもできます。退屈ですが、一般的な好奇心で答えに興味があります。
答え1
ACLを使用して、ホームディレクトリ内のファイルに対する権限を他のユーザーに付与できます。 ACLを設定するコマンドはですsetfacl
。
管理しているアカウントが次のとおりです。男そしてスミス。今欲しいならスミスファイルへのフルアクセス権を持ちます。男のホームディレクトリに移動し、setfacl
コマンドを実行できます。男次のオプションがあります。
setfacl -R -m u:smith:rwx /home/john
上記のsetfacl
コマンドは、ユーザーに以下を提供します。スミスホームディレクトリへのフルアクセス男。このコマンドは、アクセスされるディレクトリの所有者が実行する必要があります(男この場合)またはルートです。
権限またはディレクトリ名を変更するか、setfacl
ユーザーまたはグループにアクセス権を付与する必要があるかどうかをコマンドに通知できます。たとえば、
setfacl -m u:smith:rx /home/john
上記のコマンドは、ユーザーに以下を提供します。スミス/home/john への読み取り専用アクセスです。
[sreeraj@server ~]$ setfacl -m u:soum:rwx /home/sreeraj
同じサーバーで:
[soum@server ~]$ cd /home/sreeraj
[soum@server sreeraj]$ touch file_by_soum
[soum@server sreeraj]$ ll file_by_soum
-rw-rw-r-- 1 soum soum 0 फ़रवरी 16 16:27 file_by_soum
[soum@server sreeraj]$
マニュアルページからsetfacl
:
EXAMPLES
Granting an additional user read access
setfacl -m u:lisa:r file
Revoking write access from all groups and all named users (using the effective rights mask)
setfacl -m m::rx file
Removing a named group entry from a file's ACL
setfacl -x g:staff file
Copying the ACL of one file to another
getfacl file1 | setfacl --set-file=- file2
Copying the access ACL into the Default ACL
getfacl --access dir | setfacl -d -M- dir
答え2
ファイル/ディレクトリの所有権を変更(放棄またはインポート)するには、ルートである必要があります。