Linux文件系统介绍及管理

文件系统层级结构FHS

常见目录及文件说明

一、文件系统层级结构FHS

  • /bin :所有用户在单用户模式中必须具备的二进制命令文件,如 cat, ls, cp.

  • /boot: Boot loader文件,如 kernels, initrd.

  • /dev :必要的 device 文件,如 /dev/null.

  • /etc: 特定主机 全系统 的配置文件

  • /home :用户的个人目录,包含保存的文件和个人设置等

  • /lib :/bin/ 和/sbin/ 中必须的依赖库

  • /media :一些可以热拔插的介质(如CD-ROMs)的挂载点 (在FHS-2.3中出现)

  • /mnt: 临时挂载的文件系统

  • /opt :可选的应用程序包

  • /proc :将进程和内核信息以文件形式呈现的虚拟文件系统。在Linux中,与procfs mount(进程文件系统)对应

  • /root: root用户的个人目录

  • /run: 运行时变量数据:从本次启动到现在的系统信息。如当前登陆的用户和正在运行的守护进程

  • /sbin: 必备的系统可执行文件,如fsck, init, route.

  • /srv :本系统提供的特定站点的数据。如web服务器提供的数据和脚本,FTP服务器提供的数据,VCS的仓库

  • /sys: 包含连接到本台计算机的设备信息

  • /tmp :临时文件(和/var/tmp相同). 通常在重启后清空,并且受到严格的大小限制

  • /usr :只读用户数据的次要层次,包含大部分(多)用户功能和应用

  • /var Variable files:各种在系统运行中,内容会不停改变的文件。如日志文件,spool files,和临时的电子邮件文件

  • 设备(主要指存储设备)挂载目录
    media 移动设备默认的挂载点
    mnt 手工挂载设备的挂载点
    misc automount进程挂载
    net automount进程挂载

  • 命令存储位置:
    /bin 普通用户使用的命令 /bin/ls, /bin/date RHEL7淘汰
    /sbin 管理员使用的命令 RHEL7淘汰
    /usr/bin 普通用户使用的应用程序
    /usr/sbin 管理员使用的应用程序

  • 库文件存储位置:
    /lib 库文件Glibc RHEL7淘汰
    /lib64 库文件Glibc RHEL7淘汰
    /usr/lib 库文件Glibc
    /usr/lib64 库文件Glibc

二、常见目录及文件说明

1、/etc/ 系统主要的配置文件存放目录

  • /etc/bashrc: 用于系统范围内的别名和函数

  • /etc/crontab: cron是一个可以用来根据时间、日期、月份、星期的组合来调度对重复任务的执行的守护进程,而此文件就是其配置文件。

  • /etc/fstab :在引导期间挂载的文件系统的标准配置文件,指定启动时需要自动安装的文件系统列表。也包括用

  • swapon: -a启用的swap区的信息。

  • /etc/group :用户组基本信息,包括用户组名称,GID,用户组支持的用户帐号等信息

  • /etc/gshadow :组密码文件

  • /etc/hosts 保存了主机名和它们的 IP 地址,功能详见:

  • /etc/inittab init的配置文件,init根据/etc/inittab配置文件来执行相应的脚本进行系统初始化,如设置键盘、字体,装载模块,设置网络等。

  • /etc/issue 包括用户在登录提示符前的输出信息。通常包括系统的一段短说明或欢迎信息。具体内容由系统管理员确定。

  • /etc/login.defs 设置用户帐号限制的文件,在这里我们可配置密码的最大过期天数,密码的最大长度约束等内容。该文件里的配置对root用户无效。如果/etc/shadow文件里有相同的选项,则以/etc/shadow里的设置为准,也就是说/etc/shadow的配置优先级高于/etc/login.defs

  • /etc/passwd 用户的基本信息,包括用户的用户名,UID,GID,用户信息说明,用户的主文件夹,用户的Shell等信息

  • /etc/profile 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置。

  • /etc/profile.d/ 用来包含/etc/profile 文件要执行的脚本

  • /etc/shadow /etc/passwd文件的补充,早期用户的密码保存在/etc/passwd里面,后来为了安全,就将密码保存到此文件里面,/etc/passwd里用x代替密码。包括帐号名称,密码,最近改动密码的日期,密码不可被改动的天数,密码需要重新更改的天数,密码需要更改期限前的警告天数,密码过期后的帐号宽限时间,帐号失效日期等信息。在安装了影子(shadow)口令软件的系统上的影子口令文件。影子口令文件将/etc/passwd文件中的加密口令移动到/etc/shadow中,而后者只对超级用户(root)可读。这使破译口令更困难,以此增加系统的安全性。

  • /etc/shells 列出可以使用的shell,chsh命令允许用户在本文件指定范围内改变登录的shell。提供一台机器ftp服务的服务进程ftpd检查用户shell是否列在/etc/shells文件中,如果不是,将不允许该用户登录。

  • /etc/skel/ 包含新账户的默认环境文件

  • /etc/ssh/ 存储SSH服务配置文件

  • /etc/sysconfig/
    /etc/sysconfig/init 文件中的参数指定了系统在引导过程中的外观和体验
    /etc/sysconfig/network 简单的网络配置内容
    /etc/sysconfig/network-scripts/ 存储关于网络配置的脚本文件
    /etc/sysconfig/network-scripts/ifcg-eth0 网卡地址信息
    /etc/yum.repos.d/ 里面的配置文件用来连接系统和实际库

2、/proc/ 文件系统

/proc/文件系统:是一个伪的文件系统,就是说它是一个实际上不存在的目录,因而这是一个非常特殊的目录。它并不存在于某个磁盘上,而是由核心在内存中产生。这个目录用于提供关于系统的信息

  • /proc/bus/ 一些总线的设备,USB的设备也记录在此。

  • /proc/cpuinfo 处理器信息,如类型、制造商、型号和性能。

  • /proc/devices 当前运行的核心配置的设备驱动的列表。

  • /proc/dma 显示当前使用的DMA通道。

  • /proc/filesystems 核心配置的文件系统信息。

  • /proc/interrupts 显示被占用的中断信息和占用者的信息,以及被占用的数量。目前系统上面的IRO分配状态。

  • /proc/ioports 当前使用的I/O端口地址。

  • /proc/kcore 系统物理内存映像。与物理内存大小完全一样,然而实际上没有占用这么多内存;它仅仅是在程序访问它时才被创建。(注意:除非你把它拷贝到什么地方,否则/proc 下没有任何东西占用任何磁盘空间。)

  • /proc/kmsg 核心输出的消息,被送到syslog。

  • /proc/ksyms 核心符号表。

  • /proc/loadavg 系统“平均负载”; 3个没有意义的指示器指出系统当前的工作量。

  • /proc/meminfo 存储器使用信息,包括物理内存和交换分区(swap)。

  • /proc/modules 存放当前加载了哪些核心模块信息。

  • /proc/net 网络协议状态信息。

  • /proc/partitions 使用fdisk -l 会出现目前的所有分区,此文件内就记录与此相关的信息。

  • /proc/pci 在PCI总线上面每个设备的详细情况,可使用lspci来显示。

  • /proc/self 存放到查看/proc/的程序的进程目录的符号连接。当2个进程查看/proc/时,这将会是不同的连接。这主要便于程序得到它自己的进程目录。

  • /proc/stat 系统的不同状态,例如,系统启动后页面发生错误的次数。

  • /proc/swaps 系统被加载何地,及使用的分区记录在此。

  • /proc/sys/ 存储内核运行的参数

  • /proc/uptime 系统启动的时间长度。

  • /proc/version 核心版本。/etc/目录 /etc/目录包含很多文件。许多网络配置文件也在/etc/中。

  • /proc/x/ 关于进程x的信息目录,这一x是这一进程的标识号。每个进程在/proc/下有一个名为自己进程号的目录。

3、/var/文件系统
/var/包含系统一般运行时要改变的数据。通常这些数据所在的目录的大小是要经常变化或扩充的。原来/var/目录中有些内容是在/usr/中的,但为了保持/usr/目录的相对稳定,就把那些需要经常改变的目录放到/var/中了。

  • /var/cache/ 应用程序本身运行过程中产生的一些暂存文

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

  • /var/local/ 存放/usr/local/ 中安装的程序的可变数据(即系统管理员安装的程序)。注意,如果必要,即使本地安装的程序也会使用其他/var/目录,例如/var/lock/。

  • /var/lock/ 锁定文件。许多程序遵循在/var/lock/ 中产生一个锁定文件的约定,以用来支持他们正在使用某个特定的设备或文件。其他程序注意到这个锁定文件时,就不会再使用这个设备或文件。

  • /var/log/ 各种程序的日志(log)文件,尤其是login(/var/log/wtmp log纪录所有到系统的登录和注销) 和syslog(/var/log/messages 纪录存储所有核心和系统程序信息)。/var/log/里的文件经常不确定地增长,应该定期清除。

  • /var/run/ 保存在下一次系统引导前有效的关于系统的信息文件。例如, /var/run/utmp 包含当前登录的用户的信息。某些程序或服务启动后,会将他们的PID放置在这个目录下。

  • /var/spool/ 放置“假脱机(spool)”程序的目录,如mail,news、打印队列和其他队列工作的目录。每个不同的spool

  • 在/var/spool/下有自己的子目录,例如,用户的邮箱就存放在/var/spool/mail/ 中。

  • /var/tmp/ 比/tmp/允许更大的或需要存在较长时间的临时文件。注意系统管理员可能不允许/var/tmp/有很旧的文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值