zoukankan      html  css  js  c++  java
  • linux中的目录配置

    一.权限对文件的重要性

    1.r(read):可读取此文件的实际内容,读取文本文件的文字内容等。

    2.w(write):可以编辑,新增或者是修改该文件的内容。

    3.x(execute):该文件具有可以被系统执行的权限。

    **在linux中,一个文件是否能被执行是由是否具有x这个权限来决定的,与文件名没有绝对的关系。

    二.权限对目录的重要性

    *文件是存放实际数据的所在,目录主要的内容是记录文件名列表,文件名与目录有前列的关联。

    1.r:表示具有读取目录结构列表的权限,当你具有读取(r)一个目录的权限时,表示你可以查询该目录下的文件名数据,所以就可以用ls这个命令将该目录的内容列表现实出来。

    2.w:代表你具有更改该目录结构列表的权限,具体如下:

        a:新建新的文件与目录

        b:删除已经存在的文件与目录(不论该文件权限为何)

        c:将已存在的目录或文件重命名

        d:转移该目录内的文件,目录位置

    3.x:此权限代表的是用户能否进入该目录成为工作目录的用途,所谓工作目录就是你目前所在的目录。即,当没有x权限是,所对应的用户身份是无法进入(cd)到该目录中。

    二.linux目录配置

     

    FHS(Filesystem Hierarchy Standard)目录配置标准

    FHS的主要目的是为了让用户可以了解到已安装软件通常放置于那个目录下。

     

    FSH根据文件系统的使用频繁与否与是否允许用户随意改动,将目录定义为四种交互作用的形态:

     

    可分享的

    不可分享的

    不变的

    /usr(软件放置处)

    /etc(配置文件)

    /opt(第三方软件)

    /boot(开机与内核文件)

    可变动的

    /var/mail(用户邮件信箱)

    /var/run(程序相关)

    /var/spool/news(新闻组)

    /var/run(程序相关)

     

    事实上,FHS针对目录树架构仅定义出三层目录下面应该放置什么数据而已,分别是下面这三个目录的定义:

    */(root,根目录):与开机系统有关;

    */usr:与软件安装执行有关;

    */var:与系统运作过程有关;

     

    1.  根目录的意义与内容

    a)   根目录是整个系统中最重要的一个目录,以为不但所有的目录都是由根目录衍生出来的,同时,根目录也与开机,还原,系统修复等操作有关。

    b)   根据FHS标准建议:根目录(/)所在分区应该越小越好,且应用程序所安装的软件最好不要与根目录放在同一个分区内,保持根目录越小越好。如此不但性能较好,根目录所在的文件系统也较不容易发生问题。

    鉴于以上说明,FHS定义根目录(/)下面应该要有下面这些子目录的存在才好:

    目录

    应放置文件内容

    /bin

    系统有很多放置执行文件爱你的目录,但/bin比较特殊。因为/bin放置的是单用户模式下还能被操作的命令

    /boot

    这个目录主要放置开机会使用到的文件爱你,包括linux内核文件以及开机菜单与开机所需配置文件等;如果使用的是grub这个引导装载程序,则还会存在/boot/grub这个目录

    /dev

    在linux中,任何设备与接口设备艘是以文件的形式存在于这个目录中的。你只要访问这个目录下面的某个文件,就等于访问某个设备

    /etc

    系统中主要配置文件几乎都放在这个目录内。一般来书,这个目录下的个文件属性是可以让一般用户查阅的,但只有root用户可以修改。FHS建议不要放置可执行文件在这个目录中。

    /home

    这是系统默认的用户主文件夹。在你创建一个一般用户帐号时,默认的用户主文件夹都会规范到这里。

    /lib

    /lib放置的是在开机时会用到的函数库,以及在/bin或/sbin下面的命令会调用的函数库。

    /media

    /media下放置的是可删除的设备。包括软盘,光盘,DVD等设备都展示挂载于此。

    /mnt

    如果想要挂载某些额外的设备,一般建议可以防止在这个目录中。

    /opt

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

    /root

    系统管理员的主文件夹。

    /sbin

    放在/sbin下面的为开机过程中所需要的,里面包括了开机,修复,还原系统所需要的命令。

    /srv

    是一些网络服务启动后,这些服务所需要取用的数据目录。

    /tmp

    这是让一般用户或者是正在执行的程序暂时放置文件的地方。这个目录任何人都能访问,需要定期清理。

     

    2.  /usr的意义与内容

    a)   /usr是UNIX操作系统软件资源所放置的目录,而非用户数据。FHS建议所有软件开发者应该将他们的数据合理的分别放置到这个目录下的子目录,而不要自行新建该软件自己独立的目录。

    b)   所有系统默认的软件都会放置到/usr下面,系统刚安装完毕时,这个目录会占用最多的硬盘容量。

    /usr子目录建议安装表如下:

    目录

    应放置文件内容

    /usr/bin

    绝大部分用户可使用的命令都放在这里。

    /usr/include

    C/C++等程序语言的头文件与包含文件放置处,当以tarball方式安装某些数据时,会使用到里面的许多包含文件

    /use/lib

    包含个应用软件的函数库,目标文件,以及不被一般用户惯用的执行文件或脚本

    /usr/local

    系统管理员在本机自行安装自己下载的软件,建议安装到此目录,便于管理

    /usr/sbin

    非系统正常运行所需要的系统命令

    /usr/share

    放置共享文件的地方,在这个目录下放置的数据几乎是不分硬件架构均可读取的数据。

    /usr/src

    一般源码建议放在这里。

     

    3.  /var的意义与内容

    a)   如果/usr时安装时会占用较大容量的目录,那么/var就是在系统运行后才会渐渐占用硬盘容量的目录。因为/var目录主要针对常态性变动的文件,包括缓存,登陆文件,以及某些软件运行所产生的文件,包括程序文件。

    常见子目录如下:

    目录

    应放置文件内容

    /var/cache

    应用程序运行过程中会产生的一些暂存文件

    /var/lib

    程序本身执行的过程中,需要使用到的数据文件放置目录。在此目录下各自的软件应该要有各自的目录

    /var/lock

    某些设备或者时我呢见资源一次只能被一个应用程序所使用,如果有两个程序使用该设备时,就可能产生一些错误情况,一次就要将该设备上锁(lock),以确保该设备只会给但以软件使用

    /var/log

    这是登陆文件放置的目录

    /var/mail

    放置个人电子邮件信箱的目录,不过这个目录也会分放置到/var/spool/mail中

    /var/run

    某些程序或服务启动后会将它们的PID放置到这个目录下

    /var/spool

    通常放置一些队列数据,所谓队列就是派对等待其它程序使用的书录,这些数据使用后通常会被删除。

     

     

    三. 相对路径与绝对路径

    a)   绝对路径:有根目录(/)开始写起的文件名或目录名称,例:/home/kiosk/Desktop

    b)   相对路径:相对于目前路径的文件名写法。例:./home/kiosk 当开头不是根(/)就属于相对路径的写法

    * . :代表当前目录,也可以使用./表示

    * .. : 代表上一层目录,也可以用../表示

     

  • 相关阅读:
    [硬件]_ELVE_VS2015下opencv3.3的配置问题
    [Linux]_ELVE_ssh登录远程阿里服务器
    [python]_ELVE_pip2和pip3如何共存
    U盘无法打开提示格式化?如何进行恢复
    [转]pycharm的一些快捷键
    文件上传Django
    ansible编译安装--操作系统环境Redhat6.4
    django的models字段介绍
    paramiko模块
    mysql安装等操作
  • 原文地址:https://www.cnblogs.com/zhengyipengyou/p/10206581.html
Copyright © 2011-2022 走看看