chmod/chown的运用

发布时间 2023-11-29 08:22:42作者: 会思念七嘛

前言:Linux 系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。

chmod (全称:change mode) : 修改文件的权限
打开终端,可以通过ll或者ls -l的命令查看当前目录下的文件详细信息,如下所示:

drwxrwxrwx 3 root root 4096 2月 24 17:08 ..
-rw-rw-r-- 1 fengyun fengyun 265 2月 24 17:10 config.ini
解释: 前面10个长度的字符,代表的就是该文件的信息,以及对应的用户所拥有的操作权限。

接下来的字符中,以三个为一组,且均为 rwx 的三个参数的组合。其中, r 代表可读(read)、 w 代表可写(write)、 x 代表可执行(execute)。 要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号 - 而已

可以用数字来代表权限:r=4,表示可读;w=2,表示可写;x=1表示可执行,- 删除权限,用数字0表示 ;

最常见的修改权限的方式:
一、

chmod 777 文件名,即[4+2+1][4+2+1][4+2+1]=777

二、

user:用户(文件属主)
group:组(文件属组)
others:其他(其他人)
all:所有人
我们就可以使用 u, g, o 来代表三种身份的权限。此外, a 则代表 all,即全部的身份。读写的权限可以写成 r, w, x。可以通过以下方式来修改文件或目录的权限

ls -lh
-rw-r--r-- 1 root root 0 May 30 16:48 test.txt

执行命令后:chmod u=rwx,g=rwx,o=rx test.txt #直接设定对应用户对文件的操作权限
ls -lh
-rwxrwxr-x 1 root root 0 May 30 16:48 test.txt

执行命令后:chmod g-w,o+w test.txt #加、减某用户对文件的操作权限
ls -lh
-rwxr-xrwx 1 root root 0 May 30 16:48 test.txt

执行命令后:chmod a-r test.txt #直接删除所有人的可读权限
ls -lh
--wx--x-wx 1 root root 0 May 30 16:48 test.txt

注:只有文件的属主和root用户才有权限修改文件的权限

分享:

1:最高权限:sudo chmod 4777 文件名,777前面的4代表所有用户都可以对该文件有最高的权限

2:在linux终端命令下,快捷键ctr+c——是指结束命令,ctr+insert——可以复制,shift+insert——可以粘贴

chown(全称change owner):改变文件所有权
chown命令的基本语法如下:
chown [option]……[owner] [:[group]] file ……#将文件file的属主改为owner,属组改为group

实例

ls -l test.txt
-rw-rw-r-- 1 fengyun fengyun 0 5月 30 17:08 test.txt

sudo chown root test.txt #更改文件属主为root
ls -l test.txt
-rw-rw-r-- 1 root fengyun 0 5月 30 17:08 test.txt

sudo chown :root test.txt #更改文件属组为root
ls -l test.txt
-rw-rw-r-- 1 root root 0 5月 30 17:08 test.txt

ls -l 123.txt
-rw-rw-r-- 1 fengyun fengyun 0 5月 30 17:21 123.txt
sudo chown root:root 123.txt #同时更改文件属主和属组
ls -l 123.txt
-rw-rw-r-- 1 root root 0 5月 30 17:21 123.txt

ls -l ./123/345.txt
-rw-rw-r-- 1 fengyun fengyun 0 5月 30 17:19 ./123/345.txt
sudo chown -R root:root 123/ #加选项-R,用于改变一个目录及其下所有文件和子目录的所有权设置

ls -l 123/
-rw-rw-r-- 1 root root 0 5月 30 17:19 345.txt

ls -l 123/345.txt
-rw-rw-r-- 1 root root 0 5月 30 17:19 123/345.txt