关于Linux目录的配置说明

大家都知道Linux一切皆文件,但是Linux的文件有那么多,目录也不少。他们都是干什么用的呢,有没有什么规律呢?今天我们就来讨论一下Linux目录的配置

Linux目录配置的依据FHS

因为使用Linux进行开发或者其他工作的个人或社区真的是太多了,如果每个人都按照自己的意愿来安排文件的存储位置以及软件的安装位置等肯定会乱套的。所以就有了Filesystem Hierarchy Standard(FHS)。也就是说,这是一个标准用于规定哪里应该放置什么样的文件。事实上,FHS针对目录树主要定义出了三个目录,它们分别是:

目录 用于
/(root,根目录 与启动系统有关
/usr(unix software resource) 与软件安装/执行有关
/var(variable) 与系统运行过程有关

根目录是系统最重要的一个目录,因为不但所有的目录都是从根目录衍生出来,同时根目录也与系统启动、还原、系统修复等操作有关。所以FHS建议/所在分区应该越小越好。

具体有哪些目录

目录 应该放置的文件内容
/bin 系统有很多存放执行文件的目录,但/bin下的命令在单人维护模式下仍可执行。
/boot 放置启动时会使用到的文件。包括Linux内核文件、启动选项以及启动所需的配置文件。
/dev Linux中,所有的设备和接口文件均以文件形式存在于这个目录当中。在这里,你读写某个文件=读写某个设备。
/etc/ 系统主要的配置文件几乎都放置在这个目录中。此目录下文件一般只有root才能修改。
/lib 系统的函数库非常多,但/lib放置的是启动时会用到的函数库,以及在/bin或/sbin下命令会调用的函数库。
/media 下面用于放置可删除的设备,比如说U盘、光盘等。
/mnt 可以暂时用来挂载某些额外的设备,和media的功能差不多。
/opt 这是给第三方辅助软件放置的目录。即非原发行版提供的软件。
/run 系统启动后所产生的各项信息应该放置到本目录下。(以前放在/bar/run)。
/sbin 用于放置启动过程所需要的,包括启动、修复、还原系统所需要的命令。
/srv 可视为service的缩写。是一些网络服务启动之后,所需要使用的数据目录。比如常用的www、FTP等。
/tmp 让一般用户或是正在执行的程序暂时放置文件的地方。该目录任何人都可读取。
/home 系统默认的家目录(home directory),新增账号时,默认的用户家目录一般会规范到这里来。
/root 系统管理员的家目录,root的家目录和根目录应该放置到同一个分区。

其他的一些分区

目录 应该放置的文件内容
/lost+found 这个目录是使用标准的ext2、ext3、ext4文件系统格式才会产生的目录。用于文件系统出错时,将一些遗失的片段放在这里。
/proc 虚拟文件系统(virtual filesystem),它放置的数据都是在内存当中,本身不占用内存空间。
/sys 也是虚拟文件系统,主要记录内核与系统硬件信息相关的内容。
/usr/bin 一般用户使用的命令。Centos7已经将全部的用户命令放置于此,而且使用链接文件将/bin链接至此。
/usr/bin 基本上与/lib功能相同,所以/lib就是链接至此目录的。
/usr/local 系统管理员安装自己下载的软件建议安装在此目录。
/usr/sbin 目前/sbin也是链接至此目录。
/usr/share 主要放置只读的数据文件。
/usr/games 与游戏相关的数据放置处。
/usr/include C/C++等程序的头文件和包含文件放置处。
/usr/libexec 某些不被一般用户常用的执行文件或脚本放置在此。
/var/cache 应用程序本身运行产生的一些缓存。
var/lib 程序本身运行所需要的数据文件。
var/lock 某些设备或是文件资源一次只能被一个应用程序使用,使用时需要上锁。目前此目录已经挪到/run/lock。
var/log 日志文件放置目录。
var/mail 放置个人电子邮件的目录。和/var/spool/mail/互为链接文件。
var/run 某些程序或服务启动后,将他们的PID放置在此目录。此目录与/run链接。
var/spool 此目录放置队列数据(排队等待其他程序使用的数据)

如果还想对目录配置有更深入的理解,可以挑战FHS官方英文文档。

End LINE

关于Linux目录的配置的更多相关文章

  1. 阿里云服务器Linux CentOS安装配置(零)目录

    阿里云服务器Linux CentOS安装配置(零)目录 阿里云服务器Linux CentOS安装配置(一)购买阿里云服务器 阿里云服务器Linux CentOS安装配置(二)yum安装svn 阿里云服 ...

  2. Linux 目录配置

    一.Linux 目录配置标准:FHS FHS(Filessystem Hierarchy Standard) 的重点在于规范每个特定的目录下应该要放置什么样子的数据. FHS依据文件系统使用的频繁与否 ...

  3. 快速配置 Samba 将 Linux 目录映射为 Windows 驱动器

    原文链接 samba client ubuntu redhat ubuntu gui tools 1,列出某个IP地址所提供的共享文件夹 smbclient -L 198.168.0.1   2,在s ...

  4. 在Linux下访问Windows共享目录的配置方法

    在Linux下访问Windows共享目录的配置方法 1.在Windows上设置一个共享目录 如:将d:\RedHat_disk设置为共享目录 2.在Windows上创建一个用户,如tommy,密码11 ...

  5. 配置samba 服务器 共享Linux目录

    配置samba 服务器 共享Linux目录 1.安装: yum install -y samba* 2.修改配置文件 vim /etc/samba/smb.conf [web] path = /usr ...

  6. Linux网络配置 RPM命令 samba服务 Linux目录结构

    第一种方法: (1)用root身份登录,运行setup命令进入到 text mode setup utiliy对网络进行配置,这里可以进行ip,子网掩码,默认网关,dns的设置.(2)这时网卡的配置没 ...

  7. 快速配置 Samba 将 Linux 目录映射为 Windows 驱动器,用于跨平台编程

    一.局域网内的 Linux 服务器上操作步骤: 1.安装samba(CentOS Linux): yum install samba system-config-samba samba-client ...

  8. 在Linux虚拟机下配置tomcat

    1.到Apache官网下载tomcat http://tomcat.apache.org/download-80.cgi 博主我下载的是tomcat8 博主的jdk是1.8 如果你们的jdk是1.7或 ...

  9. 在Linux虚拟机下配置jdk的环境变量

    1.到Oracle公司的官网里下载好jdk,网址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133 ...

随机推荐

  1. Flutter json 2 model with Built Value

    Flutter json 2 model with Built Value Flutter中json转换model, 除了手动转之外, 就是利用第三方库做一些代码生成. 流行的库有: json_ser ...

  2. oracle12c数据库第一周小测验

    一.单选题(共4题,30.4分) 1 (  )是位于用户与操作系统之间的一层数据管理软件.数据库在建立.使用和维护时由其统一管理.统一控制.   A. A.DBMS B. B.DB C. C.DBS ...

  3. JS高精度乘法计算问题(牛客网乘法-求 a 和 b 相乘的值,a 和 b 可能是小数,需要注意结果的精度问题)

    用到的知识点===> toFixed(num); toFixed() 方法可把 Number 四舍五入为指定小数位数的数字; 参数num: 代表小数位数: 例:var num = 5.56789 ...

  4. axios请求拦截器

    import axios from 'axios';   // 创建axios实例   let service = null;   if (process.env.NODE_ENV === 'deve ...

  5. emgucv 提示缺少emgucv.word

    遇到这种问题真的挺恶心的 ,因为条件不同触发这种错误条件也不一样,但是主要原因就是一个那就是你的程序找不到dll了(废话...) 1.首先检查Redistributable 与runtime(在开发环 ...

  6. pytorch里一些函数的说明记录

    THLongStorage *THTensor_(newSizeOf)(THTensor *self); THLongStorage *THTensor_(newStrideOf)(THTensor ...

  7. 关于编码和解码问题——encode、decode

            一.背景和问题 近期在做一个关于声卡录音的项目,开发环境是win10 64位家庭中文版,pycharm2019.1,python3.6(Anaconda3),python模块pyaud ...

  8. Journal of Proteome Research | Down-Regulation of a Male-Specific H3K4 Demethylase, KDM5D, Impairs Cardiomyocyte Differentiation (男性特有的H3K4脱甲基酶基因(KDM5D)下调会损伤心肌细胞分化) | (解读人:徐宁)

    文献名:Down-Regulation of a Male-Specific H3K4 Demethylase, KDM5D, Impairs Cardiomyocyte Differentiatio ...

  9. Linux网络学习笔记(二):域名解析(DNS)——以 CoreDNS 为例

    个人笔记,观点不一定正确. 适合对 Kubernetes 有一定了解的同学. 前言 最近一直在学习 Kubernetes,但是手头没有个自有域名,要测试 ingress 就比较麻烦,每次都是手动改 h ...

  10. Visual Studio2019+OpenCV3.4.9环境搭建

    让人头疼的vs2019+opencv环境配置 准备: visual studio2019: opencv 3.4.9: 耐心: 说明:vs2019属性管理器没有Microsoft.Cpp.x64.us ...