一.权限对文件的重要性

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 当开头不是根(/)就属于相对路径的写法

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

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

linux中的目录配置的更多相关文章

  1. 关于linux中的目录配置标准以及文件基本信息

    关于Linux中的目录配置标准 在查看docker.k8的运行日志,修改相关的运行记录的时候,学长总是能很快地找到目录,这个多多少少和Linux的FHS(File Hierarchy Standard ...

  2. Linux中VSFTP的配置

    配置VSFTP服务器: 1.安装VSFTP,可以参考Linux 中yum的配置来安装: yum installvsftpd.x86_64 -y 2.修改SELinux: setenforce 0 查看 ...

  3. Linux中redis安装配置及使用详解

    Linux中redis安装配置及使用详解 一. Redis基本知识 1.Redis 的数据类型 字符串 , 列表 (lists) , 集合 (sets) , 有序集合 (sorts sets) , 哈 ...

  4. Linux中 /boot 目录介绍 【转载】

    Linux中 /boot 目录介绍 转自:点击打开链接 一./boot/目录中的文件和目录 Linux系统在本地启动时,目录/boot/非常重要,其中的文件和目录有: (1)系统Kernel的配置文件 ...

  5. 在Linux中安装和配置OpenVPN Server的最简便方法!

    本文介绍了如何在基于RPM和DEB的系统中安装和配置OpenVPN服务器.我们在本文中将使用一个名为openvpn-install的脚本,它使整个OpenVPN服务器的安装和配置过程实现了自动化.该脚 ...

  6. linux中MySQL主从配置(Django实现主从读写分离)

    一 linux中MySQL主从配置原理(主从分离,主从同步) mysql主从配置的流程大体如图: 1)master会将变动记录到二进制日志里面: 2)master有一个I/O线程将二进制日志发送到sl ...

  7. Linux中/proc目录下文件详解

    转载于:http://blog.chinaunix.net/uid-10449864-id-2956854.html Linux中/proc目录下文件详解(一)/proc文件系统下的多种文件提供的系统 ...

  8. linux文件权限目录配置笔记

    ###linux 文件权限目录配置笔记 ---------- 多人多任务环境 linux 一般将文件可存取的身份分为三个类别:owner group others Permission deny ls ...

  9. Unix/Linux中/usr目录的由来

    在Linux系统中,有一个很重要的目录——/usr目录.关于这个目录名称的由来,网上主要有下面几种说法: user的缩写 User Shareable Read-only的缩写 Unix/User S ...

随机推荐

  1. 关于TortoiseGit设置代理服务器会自动取消的问题解决方法

    在前些日子,我使用TortoiseGit的并给其设置代理服务器的时候,每次设置好之后,关闭打开总是会自动取消勾选,通过不断的尝试和分析之后,得出了解决方案. 首先,这个配置项是保存在HOME环境变量对 ...

  2. cocos2d-js 骨骼动画 3.10

    近期使用了cocos动画中的骨骼动画,这里记录使用的两种方式(3.10版): 一.cocos自带的动画编辑器导出的动画 ccs.armatureDataManager.addArmatureFileI ...

  3. 简单好用的General开发框架

    1.开篇概述 从2004年学习编程,2007年学习C#以来,做的多半都是跟数据库打交道的工作,所以也积累了很多数据库方面的知识,用过一些ORM框架,从了解掌握到自己实现,慢慢积累了很多代码,直到201 ...

  4. Qemu虚拟机 玩树莓派最新版系统 (截止2017-04-10)

    Qemu虚拟机可以玩 树莓派,大家都知道了吧.可是网上的教程好老,都是2012年的.我按照教程下载了最新版版本的树莓派系统怎么也跑不起来. 研究了好久,终于找到一个简单的方法,特意分享出来.转载请注意 ...

  5. java 使用simpleDateFormat格式化日期 时间.RP

    首先了解一下格式化日志的所有表示. 时间日期标识符: yyyy:年 MM:月 dd:日 hh:1~12小时制(1-12) HH:24小时制(0-23) mm:分 ss:秒 S:毫秒 E:星期几 D:一 ...

  6. git仓库迁移的解决方案

    一.问题 在github中遇到感兴趣的项目,直接克隆下来,随着兴趣越来越浓,在本地做了些修改,后来干脆想fork到自己的github仓库,又要把本地的修改提交到fork后的自己的github仓库中.这 ...

  7. [学习笔记]_exit和exit深入理解

    #include<stdio.h> #include<stdlib.h> #include<string.h> #include <unistd.h> ...

  8. 【android】shape的使用

    例子:XML 文件保存在 res/drawable/gradient_box.xml: <?xml version="1.0" encoding="utf-8&qu ...

  9. C# WinForm:无法访问已释放的对象

    C#在父窗口中调用子窗口的过程: 1. 创建子窗口对象 2. 显示子窗口对象   笔者的程序中,主窗体MainFrm通过菜单调用子窗口ChildFrm.在窗体中定义了子窗口对象,然后在菜单项点击事件中 ...

  10. boostrap 进入条显示百分比

    <div class="progress"> <div class="progress-bar progress-bar-success"  ...