刚才在ubuntu的根目录下使用ls -l 命令,出现如下:
1. drwxr-xr-x 2 root root 4096 2009-01-14 17:34 bin
2. drwxr-xr-x 3 root root 4096 2009-01-14 14:36 boot
3. drwxr-xr-x 12 root root 14080 2009-07-20 14:13 dev
4. lrwxrwxrwx 1 root root 11 2009-01-14 10:05 cdrom -> media/cdrom
让我们来看看 这些文件属性是什么意思吧:
第一行:
- drwxr-xr-x 2 root root 4096 2009-01-14 17:34 bin
drwxr-xr-x 2 root root 4096 2009-01-14 17:34 bin
0123456789
文件类型代码:[ d ]–目录、[ - ]–文件、[ l ]–链接、[ b ]–可储存周边设备、[ c ]–序列设备。
文件权限属性:[ r ]–可读、[ w ]–可写、[ x ]–可执行。
0:代表是文件还是目录,还是其他的类型(这里d:表示是目录)
123 :表示拥有人的权限 (这里rwx:代表拥有人有可读,可写,可执行的权限)
456:表示同组群使用者权限(这里r-x代表同组群使用者有可读,可执行权限)
789:表示其他使用者权限(这里r-x代表其他使用者有可读,可执行权限)
看看第四行:
4. lrwxrwxrwx 1 root root 11 2009-01-14 10:05 cdrom -> media/cdrom
第一个字母:l代表此问链接文件,估计相当与windows的快捷方式吧!
例:
所有者权限:读+写+执行=4+2+1=7
组许可权限 : 读+写= 4+2=6
其他用户许可权限:读=4
下面来看看修改文件属性的几个命令:
1.chmod sudo chmod
sudo chmod 600 ××× (只有所有者有读和写的权限)
sudo chmod 644 ××× (所有者有读和写的权限,组用户只有读的权限)
sudo chmod 700 ××× (只有所有者有读和写以及执行的权限)
sudo chmod 666 ××× (每个人都有读和写的权限)
sudo chmod 777 ××× (每个人都有读和写以及执行的权限
xxx 是文件名
对于目录,必需具有执行权限才可进入
文件的执行属性将决定文件是否可执行,而与文件扩展名无关
改变权限设置:
chgrp :改变所属群组
chgrp 修改文件或目录所属的组
chgrp [options] newgroup files/directorys
要改变的群組名必须在 /etc/group 中存在
语法: chgrp 群组名 文件或目录如: [root@test root]# chgrp users tmp [root@test root]# ls –l drwx—— 2 root root 4096 Oct 19 11:43 drakx/ drwx—— 2 root users 4096 Oct 19 21:24 tmp/ [root@test root]# chgrp testing tmp chgrp: invalid group name `testing’ <==出错信息! |
chown :改变作者
[ -R ] :同时对目录下的所有子目录或文件的作者进行修改
*用户名必须已存在系统中,也就是在 /etc/passwd 中存在的用户名。
*chown 可直接修改所属群組
语法: chown [ -R ] 用户名 文件或目录 chown [ -R ] 用户名:群组名 文件或目录如: [root@test root]# chown test tmp [root@test root]# ls -l total 28 drwx—— 2 root root 4096 Oct 19 11:43 drakx/ drwx—— 2 test users 4096 Oct 19 21:24 tmp/ [root@test root]# chown –R root:root tmp [root@test root]# ls –l drwx—— 2 root root 4096 Oct 19 11:43 drakx/ drwx—— 2 root root 4096 Oct 19 21:24 tmp/ |
chmod :改变权限属性
方式一 数字类型改变
三个基本属性:r、w、x的数字类型代表:r:4、w:2 、x:1
语法: chmod [-R] xyz 文件或目录 xyz 为三組 rwx 属性数值的相加同一组的数字是相加!如属性为 [ -rwxrwx--- ] ,则: owner = rwx = 4+2+1 = 7 group = rwx = 4+2+1 = 7 others = — = 0+0+0 = 0[root@test root]# ls –al .bashrc -rw-r–r– 1 root root 226 Feb 16 2002 .bashrc [root@test root]# chmod 777 .bashrc [root@test root]# ls –al .bashrc -rwxrwxrwx 1 root root 226 Feb 16 2002 .bashrc |
方式二 符号类型改变
九个属性分別代表是(1)user (2)group (3)others 三个群组的权限,可以由 u, g, o 來代表三个群组!而 a 则代表 all 亦即全部。
chmod | u g o a | +(加入) -(除去) =(设定) | r w x | 文件或目录 |
[root@test root]# chmod u=rwx,og=rx .bashrc [root@test root]# ls –al .bashrc -rwxr-xr-x 1 root root 226 Feb 16 2002 .bashrc[root@test root]# ls –al .bashrc -rwxr-xr-x 1 root root 226 Feb 16 2002 .bashrc [root@test root]# chmod a+w .bashrc [root@test root]# ls –al .bashrc -rwxrwxrwx 1 root root 226 Feb 16 2002 .bashrc[root@test root]# chmod a-x .bashrc [root@test root]# ls –al .bashrc -rw-rw-rw- 1 root root 226 Feb 16 2002 .bashrc |