===一个简单的ls -al的例子:===
-rw-r–r–. 1 root root 57494 Oct 1 08:08 install.log
第一列表示文件的权限,共有10个字符组成。第一个字符表示文件类型:
d:表示目录;-:表示是文件;l表示是链接文件linkfile;b表示块设备文件(设备文件里面的可供存储的接口设备);c表示字符设备文件(设备文件中的串行端口设备,例如键盘、鼠标等一次性读取设备),s表示套接字sockets文件,p表示管道FIFO文件。接下来三个一组,分别代表owner、group、other的权限。
第二列表示有多少文件名连接到此节点(inode)
第三列和第四列分别表示owner和group名称
第五列表示文件大小,单位是字节bytes/B
第六列表示文件创建日期或者最近修改日期,如果修改日期离现在太久了,就只显示年月日信息。可以用参数 ls -al –full-time显示完整时间。
第七列就是文件名了,如果有个.前缀的话表示隐藏文件。
===修改文件属性===
chown:改变文件的owner,随便还可以修改group
用法:chown [-R] ownner:groupdirname/filename,其中-R表示递归修改目录以及该目录下的所有文件属性。
chgrp:修改文件的group
用法:chgrp [-R] group dirname/filename
===修改===
chmod:可以使用数字或者符号两种方式进行权限的更改。
用法:注意,u代表owner,g代表group,o代表other,a代表all
数字形式:chmod [-R] 777 dirname/filename;
=号形式:chmod [-R] u=rwx,go=rx dir/file;
+-形式:chmod [-R] u-r,g+w,a-r dir/file
===目录与文件的权限意义===
对文件的意义:
r:可读取文件内容
w:可编辑、新增或者修改文件的内容,注意,是文件的内容。但不含删除该文件
x:可被系统执行
对目录的意义:
r:读取该目录结构列表的权限,当你具有r一个目录的权限时,表示你可以查询该目录下的文件名数据,可以用ls命令列出目录下文件名列表
w:这个可写入权限对目录来说很强大,具有更改目录结构列表的权限,也就是可以在该目录里面新建新的文件和目录,删除该目录下的文件和目录(不论该文件的权限为何);将已存在的文件或目录重命名;转移该目录内的文件、目录的位置。
x:进入该目录,使得该目录成为当前工作目录的权限。要想能查看某个目录下文件内容, 必须对该目录具备x权限才行。
===目录配置标准FHS===
FHS标准建议:根目录(/)所在的分区应该越小越好,且应用程序所安装的软件最好不要与根目录放在同一个分区,保持根目录越小越好。如此不但性能较好,根目录所在的文件系统也不容易发生问题。有鑑於上述的說明,因此FHS定義出根目錄(/)底下應該要有底下這些次目錄的存在才好:
事实上FHS针对根目录的标准就仅有上面的咚咚,不过我们的Linux底下还有许多目录你也需要了解一下的。 底下是几个在Linux中也是非常重要的目錄喔:
* /usr的意义和内容:
usr是Unix Software Resource的缩写。根据FHS的基本定义,/usr里面放置的数据属于可分享的并且不可变的的(shareable,static),系统所有默认的软件(distribution发布者提供的软件)都会放置在/usr下面,因此这个目录有点类似win中的C:\Program Files目录。一般来讲,/usr子目录如下:
* /var的意义与内容:
如果/usr是安装时会占用较大硬盘的目录,那么/var就是在系统运行后才会渐渐占用硬盘容量的目录。因为/var目录主要针对常态性变动文件,包括缓存cache、登陆文件日子log file以及某些软件运行所产生的文件,包括程序文件(lock file,run file),或者例如mysql数据库的文件。常见的子目录为:
=========END========