关于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. Python3 面向对象之:单继承

    一:什么面向对象的继承? 比较官方的说法就是: 继承(英语:inheritance)是面向对象软件技术当中的一个概念.如果一个类别A“继承自”另一个类别B,就把这个A称为“B的子类别”,而把B称为“A ...

  2. 深入理解JS引擎的执行机制

    深入理解JS引擎的执行机制 1.灵魂三问 : JS为什么是单线程的? 为什么需要异步? 单线程又是如何实现异步的呢? 2.JS中的event loop(1) 3.JS中的event loop(2) 4 ...

  3. 解决QQ“抱歉,无法发起临时会话,您可以 添加对方为好友以发送消息”

    很多网站,目前无法发起临时会话,自己在找网上找到教程,特分享给大家.自从2014年3月1日开始,网站上放置QQ客服代码的网站,在点击联系QQ时,以前可以正常发起临时会话的,现在提示:“抱歉,无法发起临 ...

  4. Natas0 Writeup(前端源码、敏感信息)

    Natas0: 提示密码就在本页,右键查看源码,注释中发现flag. flag:gtVrDuiDfck831PqWsLEZy5gyDz1clto 总结:客户端代码注释中切勿保存敏感信息.  

  5. 读书笔记——吴翰清《白帽子讲Web安全》

    目录 第一篇 世界观安全 一 我的安全世界观 第二篇 客户端脚本安全 一 浏览器安全二 跨站脚本攻击(XSS)三 跨站点请求伪造(CSRF)四 点击劫持(ClickJacking)五 HTML5 安全 ...

  6. python基础知识8——常见内置模块

    Python之路-python(常用模块学习) 模块介绍 time &datetime模块 random os sys shutil shelve xml处理 yaml处理 configpar ...

  7. 【5min+】更好的选项实践。.Net Core中的IOptions

    系列介绍 [五分钟的dotnet]是一个利用您的碎片化时间来学习和丰富.net知识的博文系列.它所包含了.net体系中可能会涉及到的方方面面,比如C#的小细节,AspnetCore,微服务中的.net ...

  8. Linux_virtualenv常用命令

    创建虚拟环境:mkvirtualenv -p python3 虚拟环境名称,创建后默认进入虚拟环境 查看当前虚拟环境安装的python包:pip list 查看已经创建的虚拟环境:workon + 两 ...

  9. Nginx.pid打开失败以及失效的解决方案

    在启动nginx的时候报了如下的错误: 其意思是没有该文件或者是目录,通过查看之后发现确实没有该目录   cd /var/run/nginx 于是重新创建了这个文件,使用如下命令:   mkdir / ...

  10. 【干货】Keras学习资源汇总

    目录: Keras简介 Keras学习手册 Keras学习视频 Keras代码案例 Keras&NLP Keras&CV Keras项目 一.Keras简介 Keras是Python中 ...