Linux 文件与目录概述

1. 文件名

在 Linux 中,文件名是文件的标识符,它可以包含字母、数字、下划线和句点组成的字符串。例如在 CentOS 中,可以创建一个名为 example_file.txt 的文件。需要注意的是,Linux 文件名是大小写敏感的,这意味着 Testtest 被视为两个不同的文件。例如,如果我们在 /home/user/ 目录中创建了 MyDocumentmydocument,这两个文件是完全不同的文件。

2. 文件类型

在 Linux(以 CentOS 为例)中,文件主要有以下几种类型:

  • 普通文件:存储用户数据的文件,如文本文件、二进制文件等。例如 /home/user/document.txt
  • 目录文件:存储其他文件和子目录的文件,如 /home/user/
  • 设备文件:表示系统中的设备,如 /dev/sda
  • 链接文件:指向另一个文件的指针,如符号链接 /home/user/symlink
  • 管道文件:用于进程间通信的特殊文件,如命名管道 /home/user/mypipe

3. 文件存储信息的基本结构

在 CentOS 中,所有的文件和目录都有其属性和操作权限。这些信息包括文件的所有者、组、权限、大小、创建时间等。文件系统不仅能使用本地分区,还能使用网络上的文件系统(如 NFS 网络文件系统)。例如,一个存储在 NFS 服务器上的文件 /mnt/nfs/document.txt 可以通过网络挂载到本地系统上使用。

4. 普通文件

普通文件是用户最常用的文件类型,在 CentOS 中,它可以分为两类:

  • 文本文件:例如 /etc/hosts,其中存储了主机名和IP地址的映射。
  • 二进制文件:例如 /bin/ls,是一个可执行的二进制文件,用于列出目录内容。

5. 目录

目录用于管理和组织系统中的大量文件。在 CentOS 中,目录本身也是一种文件。例如,根目录 / 是所有其他目录和文件的起点。其他重要的目录包括:

  • /home:存储用户的主目录,每个用户都有一个独立的目录,如 /home/user
  • /var:存储经常变动的数据文件,如日志文件 /var/log/messages

路径与文件名唯一性

在 CentOS 中,目录树中的每个文件名(包含完整路径)都是独一无二的。例如 /home/user/document.txt/home/admin/document.txt 是两个不同的文件。路径用于指定一个文件在文件系统中的位置,分为:

  • 绝对路径:从根目录 / 开始,例如 /etc/passwd
  • 相对路径:从当前工作目录开始,例如在 /home/user 目录下,documents/file.txt 指的是 /home/user/documents/file.txt

Linux 目录结构

CentOS 的文件系统采用树状结构,从根目录 / 开始,主要包括以下子目录:

  1. /bin

    • 存放用户可用的二进制执行文件,例如常用的命令 ls, cp。这些命令在启动时就能使用,即使文件系统没有挂载完毕。例如,在 CentOS 中,运行 ls /bin 可以看到一系列的二进制文件。
  2. /boot

    • 包含启动引导程序相关文件,如 GRUB 引导文件和内核文件 vmlinuz。这些文件对于系统启动至关重要。例如,/boot/grub2/grub.cfg 是 GRUB 的配置文件。
  3. /dev

    • 存放设备文件,表示系统中的硬件设备。例如,硬盘设备文件 /dev/sda
  4. /etc

    • 存放系统配置文件和启动脚本。例如,网络配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0
  5. /home

    • 用户主目录,每个用户都有一个单独的目录,如 /home/user,用于存储用户的个人文件和设置。
  6. /lib

    • 存放系统程序的共享库文件和内核模块。例如,C 库文件 /lib64/libc.so.6 是许多程序依赖的基础库。
  7. /media

    • 用于临时挂载可移动设备,如光盘 /media/cdrom 和 USB 设备 /media/usb
  8. /mnt

    • 用于临时挂载其他文件系统。例如,挂载一个外部硬盘可以使用命令 mount /dev/sdb1 /mnt/external
  9. /opt

    • 存放额外安装的可选软件包。例如,在 CentOS 上安装的第三方软件通常会放在 /opt 目录下,如 /opt/vmware
  10. /root

    • 系统管理员(root 用户)的主目录。例如,root 用户的配置文件 .bashrc 位于 /root/.bashrc
  11. /sbin

    • 存放系统管理命令,这些命令通常只有 root 用户能执行。例如,网络配置命令 /sbin/ifconfig
  12. /srv

    • 存放服务启动需要的数据文件,如 Web 服务器文件 /srv/www 和 FTP 服务器文件 /srv/ftp
  13. /tmp

    • 临时文件目录,系统重启后会被清空。例如,用户在浏览网页时生成的临时文件会存储在 /tmp 目录中。
  14. /usr

    • 包含用户程序和数据的次级层次,包括:

      • /usr/bin:存放用户命令文件,如 /usr/bin/vim
      • /usr/sbin:存放超级用户命令文件,如 /usr/sbin/httpd
      • /usr/lib:存放程序库文件,如 /usr/lib64/libssl.so
      • /usr/local:存放本地安装的软件包,例如 /usr/local/bin 中的自定义脚本。
  15. /var

    • 变量文件目录,存储经常变动的数据文件,如:

      • 日志文件 /var/log/messages
      • 缓存文件 /var/cache/yum
      • 锁文件 /var/lock/subsys
      • 运行文件 /var/run/httpd.pid
      • 临时文件 /var/tmp
      • 邮件文件 /var/spool/mail/root

本文由mdnice多平台发布


逼格高的汤圆
7 声望2 粉丝