您的位置:首页 > 运维架构 > Linux

菜鸟学Linux(3)品尝鸟哥私房菜——…

2014-04-18 13:26 225 查看
Linux文件权限概念
Linux文件属性,用root的身份登录linux服务器且可以用ls -al指令来查看。

[root@www ~]# ls -al
total 156 

drwxr-x---   4    root   root     4096   Sep  8 14:06 .

drwxr-xr-x  23    root   root     4096   Sep  8 14:21 .. 

-rw-------   1    root   root     1474   Sep  4 18:27 anaconda-ks.cfg 

-rw-------   1    root   root      199   Sep  8 17:14 .bash_history 

-rw-r--r--   1    root   root       24   Jan  6  2007 .bash_logout 

-rw-r--r--   1    root   root      191   Jan  6  2007 .bash_profile 

-rw-r--r--   1    root   root      176   Jan  6  2007 .bashrc 

-rw-r--r--   1    root   root      100   Jan  6  2007 .cshrc 

drwx------   3    root   root     4096   Sep  5 10:37 .gconf      <=范例说明处 

drwx------   2    root   root     4096   Sep  5 14:09 .gconfd 

-rw-r--r--   1    root   root    42304   Sep  4 18:26 install.log <=范例说明处

-rw-r--r--   1    root   root     5661   Sep  4 18:25 install.log.syslog 

[    1   ][  2 ][   3  ][  4 ][    5   ][     6     ][       7          ]
[  权限  ][连结][拥有者][群组][文件容量][  修改日期 ][      檔名        ]
如上所述,显示的有7栏,分别是





 
第一个字符代表的是文件,目录或链接文件

当为[ d ]则是目录,例如上表档名为『.gconf』的那一行;

当为[ - ]则是文件,例如上表档名为『install.log』那一行;

若是[ l ]则表示为连结档(link
file);

若是[ b ]则表示为装置文件里面的可供储存的接口设备(可随机存取装置);

若是[ c ]则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。

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

第一组为『文件拥有者的权限』,以『install.log』那个文件为例,
该文件的拥有者可以读写,但不可执行;

第二组为『同群组的权限』;

第三组为『其他非本群组的权限』。

例题:

若有一个文件的类型与权限数据为『-rwxr-xr--』,请说明其意义为何?
答:

先将整个类型与权限数据分开查阅,并将十个字符整理成为如下所示:

[-][rwx][r-x][r--]

 1  234  567  890
 1
为:代表这个文件名为目录或文件,本例中为文件(-);

234为:拥有者的权限,本例中为可读、可写、可执行(rwx);

567为:同群组用户权力,本例中为可读可执行(rx);

890为:其他用户权力,本例中为可读(r)

同时注意到,rwx所在的位置是不会改变的,有该权限就会显示字符,没有该权限就变成减号(-)就是了。

第二栏中表示有多少个档名连接此节点

第三栏是这个文件拥有者

第四栏是这个文件的所属群组

第五栏是表示该文件的大小

第六栏表示的是建档时间或是最近一次修改的时间

有些时间较长的文件只会显示年份,需要输入ls -al
--full-time来得到完整的时间

第七档表示这个文件的档名

如果在档名前多一个“.”那么说明这个档名属于隐藏档。

改变文件属性与权限

改变所属的群组  chgrp

[root@www ~]# chgrp [-R] dirname/filename ...
选项与参数:
-R : 进行递归(recursive)的持续变更,亦即连同次目录下的所有文件、目录
都更新成为这个群组之意。常常用在变更某一目录内所有的文件之情况。
范例: 

[root@www ~]# chgrp users install.log 

[root@www ~]# ls -l
-rw-r--r--  1 root users 68495 Jun 25 08:53 install.log
[root@www ~]# chgrp testing install.log
chgrp: invalid group name `testing' <== 发生错误讯息啰~找不到这个群组名~
改变文件的拥有者  chown

[root@www ~]# chown [-R] 账号名称 文件或目录 

[root@www ~]# chown [-R] 账号名称:组名 文件或目录
选项与参数:
-R : 进行递归(recursive)的持续变更,亦即连同次目录下的所有文件都变更

范例:将install.log的拥有者改为bin这个账号:
[root@www ~]# chown bin install.log 

[root@www ~]# ls -l
-rw-r--r--  1 bin  users 68495 Jun 25 08:53 install.log

范例:将install.log的拥有者与群组改回为root: 

[root@www ~]# chown root:root install.log 

[root@www ~]# ls -l
-rw-r--r--  1 root root 68495 Jun 25 08:53 install.log
事实上,chown也可以使用『chown user.group
file』,亦即在拥有者与群组间加上小数点『.』也行!
不过很多朋友设定账号时,喜欢在账号当中加入小数点(例如vbird.tsai这样的账号格式),这就会造成系统的误判了!
所以我们比较建议使用冒号『:』来隔开拥有者与群组啦!此外,chown也能单纯的修改所属群组呢! 例如『chown .sshd
install.log』就是修改群组。

改变文件权限  chomd

数字类型改变 r=4 w=2 x=1  如 chomd 764
tbdata.pl

符号类型改变权限

chmodu

g

o

a
+(加入)

-(除去)

=(设定)
r

w

x
文件或目录
如同,chomd u=rwx go=rx tbdata.pl  
 chomd a-w o+r tbdata.pl

上述内容大部分转自linux鸟哥私房菜

Linux目录配置  可以看

http://vbird.dic.ksu.edu.tw/linux_basic/0210filepermission_3.php
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: