Linux 文件系统基础和相关命令用法

1、Linux发行版的系统目录名称命名规则以及用途
1.1 命名规则
  • 遵循FHS(Filesystem Hierarchy Standard)标准。
  • 目录名最长255个字节。
  • 标准 Linux 文件系统(如 ext4 ),对名称大小写敏感,例如:LINUX, Linux, linux。
  • 目录也是文件,在同一路径下,两个文件不能同名。
  • 除了斜杠和 NUL ,所有字符都有效,但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引号来引用。
1.2 用途(以 CentOS 为例)

在这里插入图片描述

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

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

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

  • /lib: 启动时程序依赖的基本共享库文件以及内核模块文件 (/lib/modules) ,软链接至 /usr/lib ;

  • /lib64: 专用于x86_64系统上的辅助共享库文件存放位置,软链接至 /usr/lib64 ;

  • /etc: 配置文件目录;

  • /home/USERNAME 普通用户家目录;

  • /root: 管理员的家目录;

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

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

  • /dev: 设备文件及特殊文件存储位置;

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

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

  • /tmp: 临时文件存储位;

  • /usr: 全局共享的只读数据;

    • bin: 保证系统拥有完整功能而提供的应用程序;
    • sbin: 保证系统拥有完整功能而提供的应用程序,系统管理命令;
    • lib: 程序和软件包的存放库,32位系统用;
    • **lib64:**程序和软件包的存放库,64位系统用;
    • include: C程序的头文件 (header files) ;
    • share: 结构化独立的数据,例如 doc, man 等;
    • local: 第三方应用程序的安装位置,子目录: bin, sbin, lib, lib64, etc, share。
  • /var: variable data files,常态性变动的文件,包括缓存(cache)、登录文件以及某些软件运行所产生的文件,包括程序文件( lock file,run file)。

    • cache: 应用程序缓存数据目录;
    • lib: 应用程序状态信息数据;
    • local: 专用于为 /usr/local 下的应用程序存储可变数据;
    • lock: 锁文件;
    • log: 日志目录及文件;
    • opt: 专用于为 /opt 下的应用程序存储可变数据;
    • run: 运行中的进程相关数据,通常用于存储进程 pid 文件;
    • spool: 应用程序数据池;
    • tmp: 保存系统两次重启之间产生的临时数据。
  • /proc: 用于输出内核与进程信息相关的虚拟文件系统;

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

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

2、文件的元数据信息及含义、查看方法、修改文件的时间戳信息
2.1 元数据信息
  • File: 文件名;

  • Size: 文件大小;

  • Blocks: 文件占用的数据块数量;

  • IO Block: 系统格式化数据块的大小;

  • xxxx file: 文件类型 ;

  • Device: 设备编号(16进制/10进制);

  • Inode: 节点编号;

  • Links: 硬链接的数量;

  • Access: 第一个,文件访问权限;

  • Uid: 文件所有者的用户ID;

  • Gid: 文件所属组的组ID;

  • Context: SELinux 安全上下文;

  • Access: 表示文件的访问时间,当文件内容被访问时,更新这个时间 ;

  • Modify: 表示文件内容的修改时间,当文件的数据内容被修改时,更新这个时间;

  • Change: 表示文件的状态时间,当文件的状态(元数据)被修改时,更新这个时间,例如文件的链接数、大小、权限、Blocks 数等;

  • Birth: 文件创建时间。

2.2 查看元数据方法
[root@centos7 ~]# stat file1.txt 
  File: ‘file1.txt’
  Size: 0         	Blocks: 0          IO Block: 4096   regular empty file
Device: fd00h/64768d	Inode: 100680069   Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2020-04-22 16:34:40.150033377 +0800
Modify: 2020-04-22 16:34:40.150033377 +0800
Change: 2020-04-22 16:34:40.150033377 +0800
 Birth: -
2.3 修改文件的时间戳信息
注意:access time 或 Modify time 变更时,change time 会自动修改为操作时间。

#修改 access time 为当前时间( file1.txt 已存在)
[root@centos7 ~]# touch -a  file1.txt

#修改 access time 为指定时间
[root@centos7 ~]# touch -a -t 202004221800 file1.txt

#修改 modify time 为当前时间
[root@centos7 ~]# touch -m  file1.txt

#修改 modify time 为指定时间
[root@centos7 ~]# touch -m -t 202004221800 file1.txt
3、软连接和硬连接区别
  • 本质: 硬链接是同一个文件多个文件名,软链接是不同文件;
  • 跨分区: 硬链接不支持跨分区,软链接支持跨分区;
  • 目录: 硬链接不支持对目录创建,软链
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值