chmod命令是用来控制某个文件或者文件目录访问权限。
linux中文件和目录的权限是什么?
在linux系统中每个文件或者目录都有只读、只写可执行权限,或者只是这些权限的组合。同时对应一个文件或目录有三种不同类型的用户访问:文件所有者、同组用户以及其他用户。文件所有者通常也是文件创建者。
我们通常用命令:ls -l 来查看当前目录下的文件权限信息。
root@ubuntucuda:/home/ubuntu# ls -l
总用量 1122588
drwxrwxr-x 18 ubuntu ubuntu 4096 5月 14 16:18 caffe
drwxrwxr-x 17 ubuntu ubuntu 4096 5月 9 22:35 caffe-master
-rw-r--r-- 1 ubuntu ubuntu 45479630 5月 3 09:23 code_1.22.2-1523551015_amd64.deb
-rwxr-xr-x 1 ubuntu ubuntu 972320904 5月 3 09:23 cuda_6.5.14_linux_64.run
-rw-rw-r-- 1 ubuntu ubuntu 2696 9月 23 2017 cuda-repo-ubuntu1404_6.5-14_amd64.deb
drwxrwxr-x 3 ubuntu ubuntu 4096 5月 10 23:57 data
drwxr-xr-x 2 ubuntu ubuntu 4096 5月 10 16:34 Desktop
drwxr-xr-x 6 ubuntu ubuntu 4096 5月 16 09:30 Documents
drwxr-xr-x 3 ubuntu ubuntu 4096 5月 10 22:21 Downloads
-rw-r--r-- 1 ubuntu ubuntu 8980 5月 3 09:09 examples.desktop
drwxrwxr-x 3 ubuntu ubuntu 4096 5月 8 15:47 fish
-rw-r--r-- 1 root root 22547139 5月 3 10:00 initrd.img-4.4.0-121-generic.back
drwxrwxr-x 3 ubuntu ubuntu 4096 5月 10 22:50 lll
-rw-rw-r-- 1 ubuntu ubuntu 149542 6月 1 10:08 lnmp1.5.tar.gz
drwxrwxr-x 9 ubuntu ubuntu 4096 5月 3 14:50 maxas
drwxrwxr-x 3 ubuntu ubuntu 4096 5月 10 16:37 models
上面就是执行ls -l 命令后的输出,每个文件目录访问权限都有三组,分别对应这用户所有者、同组用户和其他用户;每组对应三位表示对应用户的读、写和可执行权限。上面的输出中最左边一列共有10字符位置,第一个- 表示的是一个文件,d 表示的是一个目录;后面三位一组,rwx 对应这读、写和可执行权限。第二三列表示的是用户组和所有者。
chmod命令
- 命令格式:
chmod [-cfvR] [who] [+|-|=] [权限] 文件名
- 命令参数:必要参数:
-c 当发生改变时,报告处理信息-f 错误信息不输出-R 处理指定目录以及其子目录下的所有文件(这个参数用的比较多)
-v 运行时显示详细处理信息
选择参数:
<权限范围>=<目录或文件> 设置成指定目录或文件具有相同的权限
<权限范围>+<权限设置> 使权限范围内的目录或者文件具有指定的权限
<权限范围>-<权限设置> 删除权限范围的目录或者文件的指定权限
<权限范围>=<权限设置> 设置权限范围内的目录或者文件的权限为指定的值
权限范围:
u 目录或者文件的当前的用户
g 目录或者文件的当前的群组
o 除了目录或者文件的当前用户或群组之外的用户或者群组
a 所有的用户及群组
权限代号:
r 读权限,用数字4表示
w 写权限,用数字2表示
x 执行权限,用数字1表示
- 删除权限,用数字0表示
s 特殊权限
- 权限设置方式
chmod [who] [+|-|=] [权限] 文件名
- 字符设置法:权限处的参数设置成
r w x 的组合。chmod [who] [+|-|=] [权限] 文件名字符设置法每次需要确定是给谁设置权限,比如chmod u+x filename 表示给filename 的当前用户设置可执行权限;当不设置对象时默认给所有用户及群组添加权限,比如chmod +x filename 表示给filename的所有用户及群组添加可执行文件。
- 数字设置法:权限处的参数设置成数字。数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是
u g o 。chmod [+|-|=] [权限] 文件名数字设置法不用显式的确定给谁设置权限,因为命令中的三个数字就代表了不同的用户,比如chmod 777 fliename 就是依次给目录或者文件的当前的用户、目录或者文件的当前的群组和除了目录或者文件的当前用户或群组之外的用户或者群组也即是给所有的用户及群组设置读、写和可执行权限。
chmod命令测试
- 用
+ 设置权限
ubuntu@ubuntucuda:~$ ls -l test
-rw-rw-r-- 1 ubuntu ubuntu 0 6月 10 12:26 test
ubuntu@ubuntucuda:~$ chmod a+x test
ubuntu@ubuntucuda:~$ ls -l test
-rwxrwxr-x 1 ubuntu ubuntu 0 6月 10 12:26 test
- 用
- 设置权限
ubuntu@ubuntucuda:~$ ls -l test
-rwxrwxr-x 1 ubuntu ubuntu 0 6月 10 12:26 test
ubuntu@ubuntucuda:~$ chmod u-x test
ubuntu@ubuntucuda:~$ ls -l test
-rw-rwxr-x 1 ubuntu ubuntu 0 6月 10 12:26 test
- 用
= 设置权限
ubuntu@ubuntucuda:~$ ls -l test
-rw-rwxr-x 1 ubuntu ubuntu 0 6月 10 12:26 test
ubuntu@ubuntucuda:~$ chmod a=rw test
ubuntu@ubuntucuda:~$ ls -l test
-rw-rw-rw- 1 ubuntu ubuntu 0 6月 10 12:26 test
- 不指定用户设置权限(默认为所有用户及群组设置)
ubuntu@ubuntucuda:~$ ls -l test
-rw-rw-rw- 1 ubuntu ubuntu 0 6月 10 12:26 test
ubuntu@ubuntucuda:~$ chmod +x test
ubuntu@ubuntucuda:~$ ls -l test
-rwxrwxrwx 1 ubuntu ubuntu 0 6月 10 12:26 test
- 用数字设置权限
ubuntu@ubuntucuda:~$ ls -l test
-rwxrwxrwx 1 ubuntu ubuntu 0 6月 10 12:26 test
ubuntu@ubuntucuda:~$ chmod 666 test
ubuntu@ubuntucuda:~$ ls -l test
-rw-rw-rw- 1 ubuntu ubuntu 0 6月 10 12:26 test
ubuntu@ubuntucuda:~$ chmod 777 test
ubuntu@ubuntucuda:~$ ls -l test
-rwxrwxrwx 1 ubuntu ubuntu 0 6月 10 12:26 test
最新评论
感谢博主,让我PyTorch入了门!
博主你好,今晚我们下馆子不?
博主,你的博客用的哪家的服务器。
您好,请问您对QNN-MO-PYNQ这个项目有研究吗?想请问如何去训练自己的数据集从而实现新的目标检测呢?
where is the source code ? bomb1 188 2 8 0 0 hello world 0 0 0 0 0 0 1...
在安装qemu的过程中,一定在make install 前加入 sudo赋予权限。
所以作者你是训练的tiny-yolov3还是yolov3...
很有用