一. FHS定义的/根目录:(FHS)

根/:

bin

boot

               2.内核文件vmlinuz

dev

etc         1. init.d 放置的是各种软件的启动脚本

               2.各种软件与系统的设置文件

home    各用户的主文件夹,每个用户占用一个目录

lib 

               2.各种目标文件与函数库

media   如cdrom,floppy等暂存媒体

mnt       可用于暂时挂载

opt         这个是给第三方软件放置的目录

proc       放置内存中的数据,如内核,程序等

root

sbin

srv

tmp       临时文件存放目录

usr       【usr其实是Unix Software Resource的缩写】同时Usr是安装时会占用较大硬盘容量的目录。

             1./usr/x11R6   是x windows系统重要数据所放置的目录,之所以取名x11R6是因为最后的X版本为第11版,且该版的第6次释出之意。

             2../usr/bin       绝大部分的用户可以使用的命令目录    

             3./usr/include  安装某些软件的数据时,头文件(header和include)的存放目录       

             4./usr/lib     包含各应用软件的函数库、目标文件,以及不被一般用户管用的执行文件或脚本(script)

             5./usr/local    因为该目录下也具有bin.....等文件目录,可以作为安装软件的第二个存放地。(比如要同事保留新旧版本的不同软件)

                                     bin

                                     etc

                                     include

                                     lib

                                     share

                                     src

                        

             6./usr/sbin     非系统正常运行所需要的系统命令,比如某些网络服务器软件的服务命令(daemon)

             7./usr/share  放置共享文件的地方,这个目录下的数据可以不分硬件架构均可读取的数据,几乎都是文本文件。

                                     /usr/share/man      在线帮助文件

                                     /usr/share/doc        软件杂项的文件说明

                                     /usr/share/zoneinfo   与时区有关的时区文件

             8./usr/src      一般源码建议放置到这里,sro有source的意思。至于内核源码则建议放置到/usr/src/linux的目录下

var       系统运行后,会慢慢占用硬盘容量的目录。因为/var目录主要针对常态性变动的文件。

             1./var/cache   存放缓存文件的目录

             2./var/lib      程序本身执行过程中存放数据文件的目录,比如:My SQL的数据库文件放置到/var/lib/mysql的目录下

                                                                                                                          rpm的数据库文件则放到/var/lib/rpm的目录下  

             3./var/lock   某些设备或者文件资源一次只能被一个用户使用,如果被同时被两个人使用则会出现错误,在这种情况下就要给这个文件上锁,确保该设备只能给单一软件所使用。

             4./var/log    登录文件放置的目录,里面比较重要的文件有:

                                /var/log/messages

                                /var/log/wtmp(记录登录者的信息)

             5./var/spool    这个目录通常放置一些队列数据,排队等待其他程序使用的数据,这些数据使用后通常都会被删除

                                           /var/cron  放置工作排程数据

                                           /var/mail   系统收到信件会放置到这个目录中,但用户收到信件后原则上就会被删除。

                                           /var/mqueue   信件如果暂时寄不出去就会被放置到这个目录等待被送出后删除。

                                           /var/lpd    

             6./var/run      某些程序或者服务启动后,会将他们的PID放置在这个目录下面。

             7./var/mail    放置个人电子邮件信箱的目录,不过这个文件也被放置在/var/spool/mail的目录中,通常这两个目录是互为连接文件。

/lost+found         这个目录使用标准的ext2/ext3文件系统格式才会产生的一个目录,用于当文件系统发生错误时,将一些丢失的片段放置到这个目录下面,这个目录通常会在分区的最顶层存在,比如在新加装一块硬盘在/disk中之后,在系统下就会自动生成一个这样的目录“/disk/local+found”

/proc                    这个目录本身是一个虚拟文件系统,它放置的数据都在内存里面,例如系统的内核、进程、、外部设备的状态及网络状态等。因为这个目录下的数据都在内存当中,所以本身是不占用任何硬盘空间的。比如重要的文件有:/proc/cpuinfo,/proc/dma,/proc/interrupts,/proc/ioports,/proc/net/等。

/sys                      这个目录跟/proc比较相似,也是一个虚拟的文件系统,主要也是记录跟内核相关的信息,包括目前已加载的内核模块与内核检测到的硬件设备信息等,这个目录同样不占用硬盘空间。

二. 因为根目录跟开机有关,开机过程中仅有根目录会被挂载,其他分区则是在开机完成之后才会陆续进行挂载的行为。就是因为如此,所以根目录下与开机过程有关的目录就就最好与根目录放到同一个分区去。具体都有哪些目录最好与根目录一起放呢?

1./etc

2./bin 重要的执行文件目录

3./dev

4./lib

5./sbin

三. 文件夹的权限更改:drwxrwxrex和777

首先先来解释下drwxrwxrwx&777的意思。

drwxrwxrwx:一共是10个字符,而表示权限就只有后面的9为,第一位不算,因为第一位代表文件的是当前文件的一种属性,比如:

【d】  表示目录

【-】   表示文件

【l】   表示链接文件(linkfile)

【b】  表示设备文件里面的可供存储的接口设备

【c】  表示设备文件里面的串行端口设备,例如键盘、鼠标(一次性读取设备)

接下来的字符中3个为一组来划分就是      d       rwx       rwx       rwx

刚说过d表示一种文件属性,那么后面的第一组rwx则代表了用户的文件权限,分别是   R读取W更改X执行

                                                          后面的第二组rwx则代表了用户组的文件权限,分别是   R读取W更改X执行

                                                          后面的第三组rwx则代表了其他用户的文件权限,分别是  R读取W更改X执行

因为一个文件通过ls -al可以看出如下图所示:

没有权限更改system32_没有权限更改system32

对于修改文件权限有三种命令:

chown   改变文件所有者      [admin@localhost `]$ chown root .nautilus   -----更改所有者为root

chown -R 账号名称  文件或目录           


-R


都更新成为这个用户组。常常用在更改某一目录的情况。



chgrp    改变文件所属用户组      [admin@localhost `]$ chown root .nautilus-----更改所属用户组为root

chmod  改变文件的权限    [admin@localhost `]$ chmod 777 .nautilus  ------更改文件权限为rwxrwxrwx,也就是777所代表的含义。

1.数值法更改文件权限:

因为rwxrwxrex 按数值来分,r = 4;w = 2;x = 1  如果全部权限打开就是777.

2.符号类型改变文件权限:

当然也可以按另外一种方式来更改权限,即:

从上面可以看出基本上的9个权限可以分别是user、group、others这3中身份。那么我们就可以通过 u,g,o来代表3中身份的权限。此外a代表all也就是全部的意思也即全部的身份。

                                   u                       +(加入)                      r

chmod                      g                        - (去除)                     w                    文件或者目录

                                   o                        =(设置)                     x

                                   a

例如:[admin@localhost `]$ chmod u=rwx,g=rw,o=rx .nautilus

也可以写成[admin@localhost `]$ chmod u=all,g=all,o=all .nautilus

更可以写成[admin@localhost `]$ chmod ugo=all .nautilus

当然现已经有了的权限是不可以再加的,如果不想要其中一种权限可以用(-)号去除,即:

[admin@localhost `]$ chmod u-rw .nautilus  这样就是去掉了.nautilus这个隐藏文件里面的user组的读和写入的权限。

四、有关于执行权限(x)的特别声明

如果一个用户对一个文件没有X的执行权限,除了不能被执行外,还不能够进入这个文件夹,但是这个用户在查看这个文件的时候,是可以看到的。

注意这里跟windows里面是不一样的。