Linux身份与权限:
Linux一般将档案可存取的身份分为三个:
1.owner(user) 2.group 3.others
注:这三种身份都有read/write/execute(可读/可写/可执行)等。
ls -al
命令后会列出各种档案,其中一项如下图:
drwxr-xr-x 2 root root 4096 4月 19 18:31 bin/
[权限][连接数][拥有者][群组][文件容量][修改时间][文件名称]
文件权限的解读:
[d][rwx][rwx][rwx]
一共有10个位置~~~
除了第一个代表档案类型权限,其余九个三个一组分别代表档案拥有者(owner)的权限
,档案所属群组(group)的权限
,其他人(others)的权限
第一个字符代表档案类型
d
是指目录
-
是指档案(或者说是文件)
l
是连结档(link file)
b
是装置文件里面的可供储存的接口设备(可随机存取装置,磁盘、内存啥的~)
c
是装置文件里面的串行端口设备(键盘、鼠标啥的(一次性读取装置))
如何改变文件的属性与权限
chgrp :改变档案所属群组
chgrp [-R] [dirname]filename(-R是对文件夹的递归操作,可以类比rm -r dirname)
例子:
chgrp users install.log
ls -al
-rw-r--r-- 1 root users 68495 Jun 25 08:53 install.log
chown :改变档案拥有者
chown [-R] 账号名称 档案或目录
chown [-R] 账号名称:组名 档案或目录
chown bin install.log
ls -al
-rw-r--r-- 1 bin users 68495 Jun 25 08:53 install.log
chown root:root install.log
ls -al
-rw-r--r-- 1 root root 68495 Jun 25 08:53 install.log
chmod :改变档案的权限
这就有点复杂,给个例子吧!
权限-rwxrwx—可以这样表达:
owner = rwx = 4+2+1 = 7
group = rwx = 4+2+1 = 7
others= --- = 0+0+0 = 0
也就是r权值是4,w权值是2,x权值是1。
总的来说这个权限可以说成770
chmod [-R] xyz 档案或目录
例子:
ls -al .bashrc
-rw-r--r-- 1 root root 395 Jul 4 11:45 .bashrc
chmod 777 .bashrc
ls -al .bashrc
-rwxrwxrwx 1 root root 395 Jul 4 11:45 .bashrc
还有一个加减等于法:
声明: user: u, group: g, others: o
例:
chmod u=rwx,go=rx .bashrc
#把user变成可读可写可执行, 组群和他人改成可读可写。
ls -al .bashrc
-rwxr-xr-x 1 root root 395 Jul 4 11:45 .bashrc
chmod u-rw .bashrc
#消去使用者user的可读可写权限
ls -al .bashrc
---xr-xr-x 1 root root 395 Jul 4 11:45 .bashrc