Linux文件系统及管理

Linux文件系统及管理

一、Linux系统的文件系统与目录结构

??Linux系统的文件目录结构为一个单根倒置的树结构,具体表现如下图:

从CentOS7开始,以下目录与之前的版本发生变化

◆/bin 软链接指向 /usr/bin

◆/sbin 软链接指向 /usr/sbin

◆/lib 软链接指向 /usr/lib

◆/lib64 软链接指向 /usr/lib64

文件系统从根目录下开始,用“/”表示

◆boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader,grub)都存放于此目录

◆/bin:所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序

◆/sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序

◆/lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules)

◆/lib64:专用于x86_64系统上的辅助共享库文件存放位置

◆/etc:配置文件目录

◆/home/USERNAME:普通用户家目录

◆/root:管理员的家目录

◆/media:便携式移动设备挂载点

◆/mnt:临时文件系统挂载点

◆/dev:设备文件及特殊文件存储位置
b: block device,随机访问
c: character device,线性访问

◆/opt:第三方应用程序的安装位置

◆/srv:系统上运行的服务用到的数据

◆/tmp:临时文件存储位置

◆/usr: universal shared, read-only data
bin: 保证系统拥有完整功能而提供的应用程序
sbin:
lib:32位使用
lib64:只存在64位系统
include: C程序的头文件(header files)
share:结构化独立的数据,例如doc, man等
local:第三方应用程序的安装位置
bin, sbin, lib, lib64, etc, share

◆/proc: 用于输出内核与进程信息相关的虚拟文件系统

◆/sys:用于输出当前系统上硬件设备相关信息虚拟文件系统

◆/selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置

二、Linux下的文件类型

◆- 普通文件

◆d 目录文件

◆b 块设备

◆c 字符设备

◆l 符号链接文件

◆p 管道文件pipe

◆s 套接字文件socket

三、文件的3种时间atime mtime ctime

Linux系统中,文件存在3种时间状态属性

1、这3个time的含义:

atime:Access Time 最后一次访问文件(读取或执行)或目录的时间;

mtime:Modofy Time 最后一次修改文件内容(数据)或目录内容(目录内文件列表)的时间;

ctime:Change Time 最后一次改变文件属性(元数据)或目录属性(元数据)的时间;

2、如何查看文件或目录的atime/mtime/ctime

可通过stat命令查看全部3个时间

[[email protected] data]#stat test.txt
  File: ‘test.txt’
  Size: 0           Blocks: 0          IO Block: 4096   regular empty file
Device: 803h/2051d  Inode: 67          Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: unconfined_u:object_r:etc_runtime_t:s0
Access: 2019-07-28 15:25:54.755150776 +0800
Modify: 2019-07-28 15:25:54.755150776 +0800
Change: 2019-07-28 15:25:54.755150776 +0800
 Birth: -
[[email protected] data]#

或可以通过以下命令分别查看:

查看atime: ls -lu filename

[[email protected] data]#ls -lu test.txt
-rw-r--r--. 1 root root 0 Jul 28 15:25 test.txt
[[email protected] data]#

查看mcime: ls -l filename

[[email protected] data]#ls -l test.txt
-rw-r--r--. 1 root root 12 Jul 28 15:29 test.txt
[[email protected] data]#

查看ctime: ls -lc filename

[[email protected] data]#ls -lc test.txt
-rw-r--r--. 1 root root 12 Jul 28 15:29 test.txt
[[email protected] data]#

四、Linux文件系统的inode

1、inode是什么?

??理解inode,要从文件储存说起。

??文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。

??操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个"块"(block)。这种由多个扇区组成的"块",是文件存取的最小单位。"块"的大小,最常见的是4KB,即连续八个 sector组成一个block。

??文件数据都储存在"块"中,那么很显然,我们还必须找到一个地方储存文件的元信息,比如文件的创建者、文件的创建日期、文件的大小等等。这种储存文件元信息的区域就叫做inode,中文译名为索引节点

??每一个文件都有对应的inode,里面包含了与该文件有关的一些信息。系统是根据inode号来识别文件。

2、inode包含的信息

??inode包含文件的属性信息(元数据),具体来说有以下内容:

    * 文件的字节数

  * 文件拥有者的User ID

  * 文件的Group ID

  * 文件的读、写、执行权限

  * 文件的时间戳,共有三个:ctime指inode上一次变动的时间,mtime指文件内容上一次变动的时间,atime指文件上一次打开的时间。

  * 链接数,即有多少文件名指向这个inode

  * 文件数据block的位置

3、inode的特性

  • inode也会消耗磁盘空间,所以在硬盘格式化的时候,操作系统会自动将硬盘分为2个区域,一部分用来存放inode信息,一部分存放文件数据。
  • 每个inode节点的大小,一般是128字节或256字节。inode节点的总数,在格式化时就给定,一般是每1KB或每2KB就设置一个inode。
  • 磁盘的每一个独立分区的inode号是相互独立的。

查看每个硬盘分区的inode总数和已经使用的数量,可以使用df -i命令。

[[email protected] ~]#df -i
Filesystem       Inodes  IUsed    IFree IUse% Mounted on
/dev/sda2      26214400 131432 26082968    1% /
devtmpfs         228956    391   228565    1% /dev
tmpfs            232906      1   232905    1% /dev/shm
tmpfs            232906    872   232034    1% /run
tmpfs            232906     16   232890    1% /sys/fs/cgroup
/dev/sda3      26214400      4 26214396    1% /data
/dev/sda1        524288    342   523946    1% /boot
tmpfs            232906      9   232897    1% /run/user/42
tmpfs            232906      1   232905    1% /run/user/0
[[email protected] ~]#

五、硬链接、软链接文件特性及区别

  • 硬链接:同一文件系统上(同一磁盘分区)相同inode编号的不同文件名的文件,对应同一文件系统上相同的block磁盘位置。
  • 软链接:一个符号链接文件指向另外一个文件或者目录,与被指向的文件inode号不相同。

硬链接和软连接的区别:
(1)本质:硬链接:同一个文件多个名字,软连接不同的文件。

(2)硬链接不可以跨分区,软链接可以。

(3)硬链接不支持对目录创建,软链接支持。

(4)相互关系:硬链接相互是独立的关系,软链接相互是依赖的关系。

(5)inode号,硬链接相同,软连接不同。

(6)链接数。硬链接会增长或减少,软链接不变。

(7)路径问题:原始文件的路径。硬链接的相对路径是当前工作目录,软连接是相对路径是根据后面软链接的路径决定。

原文地址:https://www.cnblogs.com/eddie1127/p/11260402.html

时间: 2024-11-02 23:21:01

Linux文件系统及管理的相关文章

linux 文件系统的管理 (硬盘) 工作原理

一.系统在初始化时如何识别硬盘 1.系统初始时根据MBR的信息来识别硬盘,其中包括了一些执行文件就来载入系统,这些执行文件就是MBR里前面446bytes里的boot loader 程式,而后面的16X4的空间就是存储分区表信息的位置:如下图 2.在分区表中,主要储存了以下信息:(1)分区号,常见的分区号有以下几种:其它编号可以使用fdisk指令,再执行 l (小写L) 查看 0x5 (or 0xf) 扩展分区 0x82 Linux swap 0x83 Linux 0x8e Linux LVM

Linux文件系统挂载管理

mount多个参数用逗号隔开: 例子mount挂载和查询已经挂载的分区: 例子带参数的命令: 默认的是读写的,可以创建文件: 改成RO后: 加入sync参数,不使用缓存,缺点是读写速度慢,优点是安全性高. 加入async参数,使用缓存,缺点是不安全,优点是读写速度快.默认async 例子如下: 最后一个可以看出来sync. 例子umount:(类似U盘弹出:) 当程序正常使用时:提示如下:(busy)因为工作目录正在占用 查看哪些程序和文件正在占用:(lsof 挂载点) 用cd 命令切换到别的工

Linux 文件系统层次结构及文件的管理

本博文主要介绍如何使用命令管理Linux的文件,首先我们先看一下Linux文件系统的文件层次结构: 目录类型有:静态.动态或可变.永久.运行时 下面详细介绍各个文件的作用: /bin 二进制可执行命令,系统所需的配置命令 /boot 开始启动过程所需的文件 /dev包含特殊的设备文件,工系统用于访问硬件 /etc 系统管理和配置文件 /home普通用户存储其个人数据和配置文件的主目录,比如用户user的主目录就是/home/user,可以用~user表示 /root(超级用户)系统管理员的主目录

Linux磁盘及文件系统的管理

Linux磁盘及文件系统的管理 我们计算机当中的核心部件并不包括磁盘,磁盘对我们的计算机来说属于外部I/O设备,我们目前主流的硬盘是机械式硬盘,我们的CPU以及内存设备属于电子设备,而我们的硬盘属于机械设备,所以说在发展速度上,CPU和内存要比硬盘快很多,我们通常所说的磁盘格式化分为两种,一种叫做低级格式化,低级格式化是硬盘厂商在出厂前就已经做好的,低级的格式化的目的是为了划分好磁盘上的磁道等物理边界,而当我们将磁盘拿到自己手里之后都会对磁盘进行分区(partition),我们对磁盘进行分区的目

Linux文件系统(分区)操作管理指令总结

Linux常用的文件系统操作管理指令如下 1.命令mkfs:对一个分区创建新的文件系统,即高级格式化分区 命令格式: mkfs [ -V ] [ -t fstype] [ fs-options ] filesys [ blocks ] 常用选项解释: [ -t fstype ]:指定要创建的文件系统类型,默认是ext2 mkfs -t ext3 =mkfs.ext3 = mke2fs -j mkfs -t ext2 =mkfs.ext2 = mke2fs mkfs -t vfat =mkfs.v

linux基础-第十三单元 硬盘分区、格式化及文件系统的管理二

第十三单元 硬盘分区.格式化及文件系统的管理二 文件系统的挂载与卸载 什么是挂载 mount命令的功能 mount命令的用法举例 umount命令的功能 umount命令的用法举例 利用/etc/fstab文件在开机时自动挂载文件系统 虚拟内存的概念以及设置与管理 什么是虚拟内存 创建swap分区的步骤 使用硬盘分区创建和使用系统交换分区的实例 mkswap 命令的功能 mkswap 命令的用法举例 swapon命令的功能 swapon -a swapon -s swapon命令的用法举例 i节

Linux的磁盘管理与文件系统

本篇内容如下: 1.硬盘结构 2.磁盘分区类型 3.管理分区 4.文件系统 5.挂载 一.硬盘结构 以下只针对机械硬盘. 通过电机转动,主轴开始旋转,主轴上的磁盘也跟着转动,每个磁盘有两个盘面,磁臂上磁头通过盘面来读取或者存储计算机上的数据. 1.硬盘存储术语 盘面:每个磁盘有两个盘面 磁头:有几个磁头就有几个盘面 磁道:磁头不动时随着主轴转动画出的圆形轨迹 扇区:每个扇区一般为512字节 柱面:每个盘面划分出相等的磁道,由编号相同的磁道生成的圆柱体 2.设备文件 磁盘设备的设备文件命名:/de

总结五:Linux文件系统之层次结构及目录管理命令

总结五:Linux文件系统之层次结构及目录管理命令 1.FHS:(Filesystem Hierarchy Standard)--文件系统层次结构标准 /bin,/sbin:系统自身启动和运行时可能会用到的核心二进制命令 /lib:共享库文件和内核模块 /lib64:共享库文件和内核模块 /etc:配置文件 /usr:universal shared read-only /usr/bin,/usr/sbin:系统运行中,用户为完成某些操作可能用到的命令 /usr/lib,/usr/lib64:库

Linux学习汇总——Linux文件系统标准,日期时间和文件目录管理命令

Linux相关知识点 家目录,主目录 home directory #ls  -l /root    显示/root 列表 dr-xr-xr-x.   2 root root  4096 Nov  4 05:58  install.log.syslog  (各项参数含义如下) d                rw-r--r--.           1                          root         root                 3482