linux文件目录


当我们使用linux系统的时候,会发现有很多的目录,这些目录里面也有很多的子目录和文件。由于linux开发团队和个人非常之多,如果每个人都按照自己的想法来配置文件放置的目录,那么对于个人的使用和管理都会带来很大的困扰。
这种情况下,FHS的出现使得linux用户和开发商都有了一个管理文件系统的标准,即FHS标准(Filesystem Hierarchy Standard)。FHS依据文件系统使用的频繁与否与是否允许使用者随意更动, 而将目录定义成为四种交互作用的形态:

可分享的 不可分享的
不可变的 /usr(软件放置处) /etc(配置文件)
不可变的 /opt(第三方软件) /boot(开机与内核文件)
可变动的 /var/mail(用户邮箱) /var/run(程序相关)
可变动的 /var/spool/news(新闻组) /var/lock(程序相关)

1. 可分享的:可以分享给其他系统挂载使用的目录,所以包括执行文件与用户的邮件等数据,,是能够分享给网络上其他主机挂载用的目录
2. 不可分享的:自己机器上面运作的装置文件或者是与程序有关的socket文件等,由于仅与自身机器有关,所以当然就不适合分享给其他主机了
3. 不变的:有些数据是不会经常变动的,跟随着distribution而不变动。例如函式库、文件说明文件、系统管理员所管理的主机服务配置文件等等
4. 可变动的:经常改变的数据,例如登录文件、一般用户可自行收受的新闻组等

根目录/

所有的目录都挂在跟目录下面,根目录/与开机/还原/系统修复等动作有关。
FHS标准建议:根目录(/)所在分割槽应该越小越好, 且应用程序所安装的软件最好不要与根目录放在同一个分割槽内,保持根目录越小越好

  • /bin :系统有很多放置执行文件的目录,但/bin比较特殊.因为/bin放置的是在单人维护模式下还能够被操作的指令. 在/bin底下的指令可以被root与一般账号所使用,主要有:cat, chmod, chown, date, mv, mkdir, cp, bash等等常用的指令.

  • /boot:这个目录主要放置开机会使用到的文件,包括Linux核心文件以及开机选单与开机所需配置文件等等. Linux kernel常用的档名为:vmlinuz,如果使用的是grub这个开机管理程序, 则还会存在/boot/grub/这个目录喔!

  • /dev :在Linux系统上,任何装置与接口设备都是以文件的型态存在于这个目录当中的. 你只要透过存取这个目录底下的某个文件,就等于存取某个装置啰~ 比要重要的文件有/dev/null, /dev/zero, /dev/tty, /dev/lp*, /dev/hd*, /dev/sd*等等

  • /etc:系统主要的配置文件几乎都放置在这个目录内,例如人员的账号密码文件、 各种服务的启始档等等.一般来说,这个目录下的各文件属性是可以让一般使用者查阅的, 但是只有root有权力修改.FHS建议不要放置可执行文件(binary)在这个目录中喔.比较重要的文件有: /etc/inittab, /etc/init.d/, /etc/modprobe.conf, /etc/X11/, /etc/fstab, /etc/sysconfig/ 等等.另外,其下重要的目录有:

    • /etc/init.d/:所有服务的预设启动 script 都是放在这里的,例如要启动或者关闭 iptables 的话: /etc/init.d/iptables start、/etc/init.d/iptables stop

    • /etc/xinetd.d/:这就是所谓的super daemon管理的各项服务的配置文件目录.

    • /etc/X11/:与 X Window 有关的各种配置文件都在这里,尤其是 xorg.conf 这个 X Server 的配置文件

    • /etc/motd : 配置登陆成功后的显示信息

  • /home :这是系统默认的用户家目录(home directory).在你新增一个一般使用者账号时, 默认的用户家目录都会规范到这里来。

  • /lib:系统的函式库非常的多,而/lib放置的则是在开机时会用到的函式库, 以及在/bin或/sbin底下的指令会呼叫的函式库而已. 什么是函式库呢?你可以将他想成是”外挂”,某些指令必须要有这些“外挂”才能够顺利完成程序的执行之意. 尤其重要的是/lib/modules/这个目录, 因为该目录会放置核心相关的模块(驱动程序)

  • /media media:媒体的英文,顾名思义,这个/media底下放置的就是可移除的装置。 包括软盘、光盘、DVD等等装置都暂时挂载于此.常见的档名有:/media/floppy, /media/cdrom等等.

  • /mnt: 如果妳想要暂时挂载某些额外的装置,一般建议妳可以放置到这个目录中。

  • /opt 这个是给第三方协力软件放置的目录.什么是第三方协力软件啊? 举例来说,KDE这个桌面管理系统是一个独立的计划,不过他可以安装到Linux系统中,因此KDE的软件就建议放置到此目录下了. 另外,如果妳想要自行安装额外的软件(非原本的distribution提供的),那么也能够将你的软件安装到这里来. 不过,以前的Linux系统中,我们还是习惯放置在/usr/local目录下呢!

  • /root :系统管理员(root)的家目录.之所以放在这里,是因为如果进入单人维护模式而仅挂载根目录时, 该目录就能够拥有root的家目录,所以我们会希望root的家目录与根目录放置在同一个分割槽中。

  • /sbin:Linux有非常多指令是用来设定系统环境的,这些指令只有root才能够利用来『设定』系统,其他用户最多只能用来『查询』而已. 放在/sbin底下的为开机过程中所需要的,里面包括了开机、修复、还原系统所需要的指令. 至于某些服务器软件程序,一般则放置到/usr/sbin/当中.至于本机自行安装的软件所产生的系统执行文件(system binary), 则放置到/usr/local/sbin/当中了.常见的指令包括:fdisk, fsck, ifconfig, init, mkfs等等.

  • /srv:srv可以视为service的缩写,是一些网络服务启动之后,这些服务所需要取用的数据目录. 常见的服务例如:www, FTP等等.举例来说,www服务器需要的网页数据就可以放置在/srv/www/里面。

  • /tmp: 这是让一般使用者或者是正在执行的程序暂时放置文件的地方. 这个目录是任何人都能够存取的,所以你需要定期的清理一下.当然,重要数据不可放置在此目录啊! 因为FHS甚至建议在开机时,应该要将/tmp下的数据都删除!所有用户都可以使用的公共区域。

  • /proc:操作系统运行时,进程信息及内核信息(cpu内存)存放在这里。他放置的数据都是在内存当中, 例如系统核心、行程信息(process)、周边装置的状态及网络状态等等.因为这个目录下的数据都是在内存当中, 所以本身不占任何硬盘空间啊!比较重要的文件例如:/proc/cpuinfo, /proc/dma, /proc/interrupts, /proc/ioports, /proc/net/* 等等.

  • /lost+found:系统意外崩溃。会产生文件碎片,重新启动的时候系统会检查该目录。将一些遗失的片段放置到这个目录下,这个目录通常会在分割槽的最顶层存在,,例如你加装一颗硬盘于/disk中,那在这个系统下就会自动产生一个这样的目录『/disk/lost+found』

不可与根目录分开的目录(与开机过程有关):

根目录与开机有关,开机过程中仅有根目录会被挂载,其他分割槽则是在开机完成之后才会持续的进行挂载的行为.就是因为如此,因此根目录下与开机过程有关的目录, 就不能够与根目录放到不同的分割槽去!

/etc:配置文件
/bin:重要执行档
/dev:所需要的装置文件
/lib:执行档所需的函式库与核心所需的模块
/sbin:重要的系统执行文件

  • /usr:
    1.依据FHS的基本定义,/usr里面放置的数据属于可分享的与不可变动的(shareable, static), 如果你知道如何透过网络进行分割槽的挂载,那么/usr确实可以分享给局域网络内的其他主机来使用!
    2.usr(Unix Software Resource 即Unix操作系统软件资源) FHS建议所有软件开发者,应该将他们的数据合理的分别放置到这个目录下的次目录,而不要自行建立该软件自己独立的目录.
    3.所有系统默认的软件(distribution发布者提供的软件)都会放置到/usr底下,因此这个目录有点类似Windows 系统的C:\Windows\ + C:\Program files\这两个目录的综合体,系统刚安装完毕时,这个目录会占用最多的硬盘容量.

    • /usr/X11R6/ 为X Windows System重要数据所放置的目录,之所以取名为X11R6是因为最后的X版本为第11版,且该版的第6次释出之意.

    • /usr/bin/ 绝大部分的用户可使用指令都放在这里!请注意到他与/bin的不同之处.(是否与开机过程有关)

    • /usr/include/ c/c++等程序语言的档头(header)与包含档(include)放置处,当我们以tarball方式(*.tar.gz 的方式安装软件)安装某些数据时,会使用到里头的许多包含档喔!

    • /usr/lib/ 包含各应用软件的函式库、目标文件(object file),以及不被一般使用者惯用的执行档或脚本(script). 某些软件会提供一些特殊的指令来进行服务器的设定,这些指令也不会经常被系统管理员操作, 那就会被摆放到这个目录下啦.要注意的是,如果你使用的是X86_64的Linux系统, 那可能会有/usr/lib64/目录产生

    • /usr/local/ 系统管理员在本机自行安装自己下载的软件(非distribution默认提供者),建议安装到此目录,这样会比较便于管理.举例来说,你的distribution提供的软件较旧,你想安装较新的软件但又不想移除旧版,此时你可以将新版软件安装于/usr/local/目录下,可与原先的旧版软件有分别啦!你可以自行到/usr/local去看看,该目录下也是具有bin, etc, include, lib…的次目录。

    • /usr/sbin/ 非系统正常运作所需要的系统指令.最常见的就是某些网络服务器软件的服务指令(daemon)

    • /usr/share/ 放置共享文件的地方,在这个目录下放置的数据几乎是不分硬件架构均可读取的数据,
      因为几乎都是文本文件嘛!在此目录下常见的还有这些次目录: /usr/share/man:联机帮助文件
      /usr/share/doc:软件杂项的文件说明 /usr/share/zoneinfo:与时区有关的时区文件

    • /usr/src/ 一般原始码建议放置到这里,src有source的意思.至于核心原始码则建议放置到/usr/src/linux/目录下.
  • /var
    目录主要针对常态性变动的文件,包括缓存(cache)、登录档(log file)以及某些软件运作所产生的文件,包括程序文件(lock file, run file),或者例如MySQL数据库的文件等等。所以/var在系统运作后才会渐渐占用硬盘容量的目录

    • /var/cache/ 应用程序本身运作过程中会产生的一些暂存档。

    • /var/lib/ 程序本身执行的过程中,需要使用到的数据文件放置的目录.在此目录下各自的软件应该要有各自的目录.
      举例来说,MySQL的数据库放置到/var/lib/mysql/而rpm的数据库则放到/var/lib/rpm去!

    • /var/lock/ 某些装置或者是文件资源一次只能被一个应用程序所使用,如果同时有两个程序使用该装置时,就可能产生一些错误的状况,因此就得要将该装置上锁(lock),以确保该装置只会给单一软件所使用。举例来说,刻录机正在刻录一块光盘,你想一下,会不会有两个人同时在使用一个刻录机烧片?如果两个人同时刻录,那片子写入的是谁的数据?所以当第一个人在刻录时该刻录机就会被上锁,第二个人就得要该装置被解除锁定(就是前一个人用完了)才能够继续使用啰。

    • /var/log/ 重要到不行!这是登录文件放置的目录!里面比较重要的文件如/var/log/messages,/var/log/wtmp(记录登入者的信息)等.

    • /var/mail/ 放置个人电子邮件信箱的目录,不过这个目录也被放置到/var/spool/mail/目录中!通常这两个目录是互为链接文件啦!

    • /var/run/ 某些程序或者是服务启动后,会将他们的PID放置在这个目录下喔! 至于PID的意义我们会在后续章节提到的.

    • /var/spool/ 这个目录通常放置一些队列数据,所谓的『队列』就是排队等待其他程序使用的数据啦!这些数据被使用后通常都会被删除.举例来说,系统收到新信会放置到/var/spool/mail/中, 但使用者收下该信件后该封信原则上就会被删除.信件如果暂时寄不出去会被放到/var/spool/mqueue/中,等到被送出后就被删除.如果是工作排程数据(crontab),就会被放置到/var/spool/cron/目录中!

重要子目录

1./etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0设别名称
HWADDR=00:1e:67:65:db:d7MAC地址
TYPE=Ethernet网络类型
UUID=3096d6ad-e53b-42cc-a385-8c906af05cae网卡唯一标识
ONBOOT=yes开机启动
NM_CONTROLLED=yes
BOOTPROTO=none启动协议(dhcp none static)
DNS2=
DNS1=
IPV6INIT=no
USERCTL=no
IPADDR=172.29.77.107
NETMASK=255.255.255.0
GATEWAY=

[root@localhost sbin]# blkid
/dev/sda2: UUID="5e7032c8-8d86-41b9-807f-9c9770d06e35" TYPE="ext4"
/dev/sda1: UUID="ec3216ee-4bab-4f13-85c2-7fe73126c883" TYPE="ext4"
/dev/sdb1: SEC_TYPE="msdos" UUID="70CE-B93F" TYPE="vfat"
/dev/sdb2: UUID="34cf2f70-1081-452e-bc39-0d2a38d9233d" TYPE="ext4"
/dev/sdb3: UUID="f67f5156-40c6-482b-8929-01d3a094d8cf" TYPE="swap"
/dev/sdb4: UUID="116c6469-f295-493d-aed1-af53327bc820" TYPE="ext4" 

2./etc/resolv.conf

DNS配置文件(此配置文件里面必须要有dns信息才能上网)
网卡里设置的DNS优先于resolv.conf设置的DNS,如果重启网卡,网卡的dns设置会覆盖/etc/resolv.conf的设置。

[root@localhost sbin]# cat /etc/resolv.confnameserver 172.22.21.2
nameserver 8.8.8.8

/etc/init.d/network restart重启所有网卡
ifup/ifdown ifcfg-eth0重启关闭某块网卡

[root@localhost ~]# netstat -an|grep 172
tcp        0     52 172.29.77.107:22            172.28.77.38:57971          ESTABLISHED
tcp        0      0 172.29.77.107:22            172.28.77.38:49440          ESTABLISHED

3./etc/hosts

4./etc/sysconfig/network
主机名配置文件hostname

[root@hcy ~]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=localhost.localdomain

参考链接:
http://blog.chinaunix.net/uid-9525959-id-2001812.html
http://www.iteye.com/topic/1125162
http://www.cnblogs.com/JCSU/articles/2770249.html 推荐

linux系统--文件目录相关推荐

  1. Linux - 系统文件目录说明

    目录 / - 根目录 /bin - 用户基础二进制文件目录 /boot - 静态启动文件 /dev - 设备文件 /etc - 配置文件 /home - 主目录 /lib - 基础共享库 /lib64 ...

  2. windows和linux系统文件目录

    linux: /bin:二进制可执行命令.   /dev:设备特殊文件.   /etc:系统管理和配置文件.   /etc/rc.d:启动的配 置文件和脚本.   /home:用户主目录的基点,比如用 ...

  3. linux镜像文件目录,Linux - 系统 - 文件目录

    Linux 文件目录 文件类型 [-] 普通文件: [d] 目录: [l] 符号链接: [c] 字符设备: [b] 块设备: [s] 套接字: [p] 命名管道: 常见后缀 *.txt 文本文件: * ...

  4. Linux系统文件目录

    一. Linux 目录结构 通常情况下,根文件系统所占空间一般应该比较小,因为其中的绝大部分文件都不需要经常改动,而且包括严格的文件和一个小的不经常改变的文件系统不容易损坏. 除了可能的一个叫/ vm ...

  5. linux存放系统文件的目录是,linux系统文件目录列表简介

    给像我一样的菜鸟们简介的一些linux知识,以备查询,高手略过. 简单介绍一下,系统根目录文件的主要用途. /usr/local  是存放你新装的软件的目录.(例如新安装的apache.mysql.p ...

  6. 运维老哥必须知道的Linux系统文件目录组织结构

    夫陶公清风千古,余又何人,敢称庶几 文章目录 介绍 Linux目录结构 Linux文件和目录管理 绝对路径和相对路径 绝对路径 相对路径 yum包管理 介绍 Linux目录结构

  7. linux 系统文件目录颜色及特殊权限对应的颜色

    什么决定文件目录的颜色和背景?  颜色  说明  栗子  权限 白色 表示普通文件   蓝色 表示目录  绿色 表示可执行文件 浅蓝色 链接文件 黄色 表示设备文件 红色   表示压缩文件 红色闪烁 ...

  8. Linux系统文件目录指令详解——文件路径查看、创建和删除目录、文件移动与重命名、文件查看

    文件目录指令详解 pwd 指令:查看路径 基本语法 应用实例 ls 指令:显示当前目录所在的文件和目录 基本语法 常用选项 应用实例 cd 指令:切换目录 基本语法 如何理解绝对路径和相对路径 常用参 ...

  9. Linux运维基本功(贰)---Linux系统的目录结构

    一.Linux分区域Windows分区 Linux系统不同于Windows,没有C盘.D盘.E盘那么多的盘符,只有一个根目录(/),所有文件(资源)都存储在以根目录(/)为树根的树形目录结构中. 二. ...

最新文章

  1. 本工作簿不能再使用其他新字体_1.2.16 EXCEL篇之关于工作表的操作合集
  2. java面试-Java并发编程(二)——重排序
  3. linux之ftp怎么把本地文件拷贝到服务端
  4. bp神经网络训练_数据分析模型6——神经网络基础(人工智能的底层模型)
  5. 手工机器人的做法大全用易拉罐_纯手工自制黄油,做法简单详细易操作,蛋糕、饼干、面包都能用...
  6. HDU 5145 - NPY and girls
  7. python 类初始化参数校验_python之类的任意数量参数初始化
  8. 笨办法学python3_软件测试需要学什么(个人软件测试学习路线)
  9. HDU-2544-最短路( 最短路)
  10. 从入门到入土:Python实现爬取刷新微博推荐和最新好友微博|cookie调用|模拟登录
  11. 如何修改was的java路径_在eclipse中修改tomcat的部署路径操作
  12. kafka 消费者消息确认_Kafka整体架构图解
  13. [VOSViewer] 合并同义词、删除指定词语
  14. 软考初级程序员怎么备战好一点,有什么好的复习方法推荐吗?
  15. uCOSIII 实时操作系统(一) - 简介
  16. 咸鱼Maya笔记—初识Maya 2019
  17. 分享一个好用的抠图网站
  18. 实操:将C盘用户配置文件移动到非系统盘(windows10系统)
  19. Docker深入浅出系列
  20. 中小软件企业管理存在的问题

热门文章

  1. matlab z变换离散化_Matlab数据可视探索
  2. 一文学会炫酷图表利器pyecharts!
  3. 转发: Feign报错feign.RetryableException: too many bytes written executing
  4. (转)移动研究院待遇
  5. oracle-win10-11g-R2 安装步骤
  6. 长沙最牛逼的互联网公司都在这里了
  7. 如何通过omnipeek抓取sniffer log
  8. C# 10分钟完成百度翻译(机器翻译)——入门篇
  9. linux里shell的心得,Shell学习心得(一):变量
  10. JAVA 实现《角色扮演侦探》游戏