Windows system >> Windowsの知識 >  >> Linuxシステムチュートリアル >> Linuxについて >> Linux setfaclコマンドを使ってパーミッションファイルを作成する方法

Linux setfaclコマンドを使ってパーミッションファイルを作成する方法

  

setfaclは、Linux上でファイルアクセスコントロールリストを設定するためのコマンドです。ファイルの作成に使うことができ、ディレクトリのパーミッションを継承することができます。 Linuxはsetfaclコマンドを使ってパーミッションファイルメソッドを作成します。一緒に学びましょう。

user1の一般ユーザ以下はrootに。 /mnt

[root @ RedHat-7 mnt]#setfacl -m u:user1:rwx share //ディレクトリにower = user1を追加し、rwxのルートを指定します。

[root @ redhat-7 mnt]#setfacl -d -mu:user1:rwx share //ディレクトリにデフォルトのacl権限を追加し、このディレクトリにディレクトリとファイルを作成すると、この権限情報が継承されます。

[root @ redhat-7 mnt]#

[root @ redhat-7 mnt]#

[root @ redhat-7 mnt]#getfacl share //共有ファイルを見る情報

#ファイル:share

#所有者:root

#グループ:root

user :: rwx

user:user1 :rwx //User1は、この時点で共有するための書き込み権限を持つことができます。

group :: rx

mask :: rwx

other :: rx

default :user :: rwx //デフォルトのサブディレクトリまたはファイルの権限情報

default:user:user1:rwx

default:group :: rx

default:mask: :rwx

デフォルト:other :: rx

[root @ redhat-7分]#cd share /

[root @ redhat-7分]#ls

[root @ redhat-7共有]#touch roota

[root @ redhat-7共有]#touch Rootb

[root @ redhat-7共有]#mkdir rootdir1

[root @ redhat-7共有]#mkdir rootdir2

[root @ redhat-7共有]# Ls

roota rootb rootdir1 rootdir2

[root @ redhat-7共有]#getfacl roota

#ファイル:roota

#所有者:root

#group:root

user :: rw-

user:user1:rwx#有効:rw-

group :: rx#有効:r- -

mask :: rw-

other :: r--

[root @ redhat-7共有]#getfacl rootdira

getfacl:rootdira :そのようなファイルやディレクトリはありません

[root @ redhat-7共有]#getfacl rootdir

rootdir1 /rootdir2 /

[root @ redhat-7共有]#getfacl rootdir1

#ファイル:rootdir1

#所有者:root

#グループ:root

user :: rwx

user:user1: Rwx

group :: rx

mask :: rwx

other :: Rx

デフォルト:user :: rwx

デフォルト:user:user1:rwx

デフォルト:group :: rx

デフォルト:mask :: rwx

デフォルト:other :: rx

[root @ redhat-7共有]#

パーミッションを検出するためにuser1を使用してこのディレクトリに入ります。

[ User1 @ redhat-7共有] $

[user1 @ redhat-7共有] $

[user1 @ redhat-7共有] $

[user1 @ redhat-7]共有] $ ll

合計8

-rw-rw-r - + 1ルートルート0 Nov 19 22:52 roota

-rw-rw-r- - + 1ルートルート0 Nov 19 22:52 rootb

drwxrwxr-x + 2ルートルート6 Nov 19 22:52 rootdir1

drwxrwxr-x + 2ルートルート6 Nov 19 22:52 rootdir2

[user1 @ redhat-7シェア] $ touch user1a

[user1 @ redhat-7シェア] $ touch user1dir1

[user1 @ redhat-7シェア] $ getfacl User1a //新しいファイルの表示権限

#file:user1a

#所有者:user1

#group:user1

User :: rw-

user:user1:rwx#有効:rw-

group :: rx#有効:r--

mask :: rw-

other :: r--

[user1 @ redhat-7共有] $ rm roota //rootが作成したファイルを削除しようとしました、成功しました

[user1 @ redhat-7共有] ] $ rm rootdir1 //rootによって作成されたディレクトリを削除しようとしました。成功しました。

rm:arootdir1aを削除できません。

[user1 @ redhat-7共有] $ rm rootdir1 -r

[user1 @ redhat-7共有] $ ll

合計4

-rw-rw-r - + 1ルートルート0 Nov 19 22:52 rootb

drwxrwxr-x + 2ルートルート6 Nov 19 22:52 rootdir2

-rw-rw-r - + 1 user1 user1 0 11月19 22:57 user1a

-rw- Rw-r - + 1 user1 user1 0 Nov 19 22:57 user1dir1

[user1 @ redhat-7共有] $

だから、ルートの継承をする必要があるとき、あなたは達成するためにこちら側を使うことができます。

新しいrhel7には、setfaclに似た新しいツールchaclがあります。

上記はsetfaclコマンドを使用してパーミッションファイルを作成するLinuxの紹介です。なぜなら、作成されたファイルは親ディレクトリのパーミッションを継承しているためです。

Copyright © Windowsの知識 All Rights Reserved