首页 > 编程知识 正文

修改文件权限命令,设置新建文件的权限的命令

时间:2023-05-06 06:50:29 阅读:42621 作者:4034

Windows系统实际上与Linux系统有相似之处,Windows系统的文件、目录属性有只读、隐藏,Linux也是如此。

在Linux上,每个文件都有特定的属性。 主要同时包括文件类型和文件权限。 可分为5种类型:常规文件、目录文件、链接文件、设备文件和管道文件。

文件访问权限是对文件的访问权限,包括对文件的读取、写入、删除和执行。 Linux是一个多用户操作系统,允许多个用户同时登录和工作。 因此,Linux将文件或目录与用户或组相关联。 访问控制列表(ACL )可提高对计算机的访问控制,并限制所有用户(包括根用户)对文件、资源和套接字的访问。 我来告诉你一个简单的设置方法。

步骤1检查系统核心

首先,检查Linux系统的核心是否具有支持ACL的功能。 因为Linux系统并不是所有版本的核心都具有支持ACL的功能,最简单的方法是检查系统的当前核心是否支持。

[根@ mail/] # cat/boot/config-kernel-version|grep-I ext3

CONFIG_EXT3_FS=m

CONFIG_EXT3_IDEX=y

CONFIG_EXT3_FS_XATTR_SHARING=y

CONFIG_EXT3_FS_XATTR_USER=y

CONFIG_EXT3_FS_XATTR_TRUSTED=y

CONFIG_EXT3_FS_ACL=y

现在,如果可以看到上面的内容,它将被编译为核心,表示ext3文件系统支持ACL功能。 这些功能位于“编译核心”选项中。 如果在编译时找不到,请在ACL的官方网站上安装kernel(ACL.bestbits.at/)。

步骤2装载分区

可以通过以下方法装载分区来启用ACL :

#mount -t ext3 -o acl /dev/sda1 /fs1

也可以直接写在/etc/fstab文件中。 这样可以在接通电源后支持ACL功能。

#vi /etc/fstab

设置步骤ACL权限

ACL通常是为单个用户设置的。 以下是几个不同的例子。

例如,如果需要创建三个用户: test1、test2和test3,请首先以root身份登录系统,然后运行以下命令分别创建三个用户名和密码:

[root@mail root]#adduser test1

[root@mail root]#adduser test2

[root@mail root]#adduser test3

[根@ mail root ] # passwd test 1

[root@mail root]#passwd test2

[根@ mail root ] # passwd test 3

然后,将ext3文件挂载到目录/fs1中。

[ root @ mailroot ] # mount-text3- oacl/dev/sda1/fs1

将在test1中创建的文件在test2中设置读写权限:

[根@ mail root ] # chmod-r 777/fs1

要允许所有用户将文件添加到目录中:

首先在test1中登录系统,然后运行命令。

[test1@mail test1]# cd /fs1

[ test1 @ mail fs1] # echo ' createbytest1' test1.txt

[ test1 @ mail fs1] # chmod go-r test1.txt

[test1@mail fs1]# ll test1.txt

- rw----1test1 test 117 jul 1422336011 test1. txt

通过执行以下操作,除了对test1具有读写权限之外,其他人都没有读写非根test1.txt的权限: 首先以test2登录系统,然后运行以下命令:

[test2@mail test2]# cd /fs1

[test2@mail fs1]# cat test1.txt

cat : test1. txtpermissiondenied

然后在test1中登录系统,并运行以下命令:

[ test1 @ mail fs1] # setfacl-mu : test 23360 rwtest1. txt

通过以这种方式更改权限,test2可以对该文件具有读写权限。 看看文件属性的变化。

[test1@mail fs1]# ll

- rw-rw-r--1test1 test 110 feb 161:52 test1. txt

后面添加了“”。 这表示此文件使用ACL的属性设置,并使用命令getfacl查看ACL的文件属性设置。

[ test1 @ mail fs1] # getfacl test1.txt

# file: test1.txt

# owner: test1

# group :测试1

user:rw-

user :测试2: rw -

组:3360 rw -

mask:rw-

other:r--

您可以看到test2有读写此文件的权限。

在test2中登录系统并运行以下命令,看看发生了什么。

[test2@mail test2]# cd /fs1

[test2@mail fs1]# cat test1.txt

创建方式by test 1

原本test2就可以读取test1.txt文件。

[ test2@ mail fs1] # echo ' modifybytest2' test1.txt

[test2@mail fs1]# cat test1.txt

创建方式by test 1

Modify by test2

现在,test2还可以修改test1.txt文件。

然后用test3登录系统。

[test3@mail test3]# cd /fs1

[test3@mail fs1]# cat test1.txt

cat : test1. txtpermissiondenied

除test1、test2以外的用户没有读写test1.txt的权限(root除外)。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。