《小菜狗 Linux 操作系统快速入门笔记》目录链接:
《小菜狗 Linux 操作系统快速入门笔记》(01.0)文章导航目录【实时更新】
1、文件系统概述
Linux 中一切皆为文件,文件系统用来组织计算机的文件和资料的系统,是操作系统封装的一个系统服务程序,实际是一个软件程序,用来存储和管理计算机文件和资料。文件系统分类如下:
磁盘文件系统:NTFS, EXT3, EXT4
闪存文件系统:JFFS2, YAFFS
数据库文件系统:BFFS, WINFS
网络文件系统:NFS
虚拟文件系统:VFS(Proc)
文件系统的功能:能定义文件的组织方式,文件的结构;提供建立和存取文件的环境(目录和文件)!
比如:
- EXT3:是一个日志方式的文件系统,系统中的每个文件都有索引,用户对文件的每个操作都会记录在日志中,形成一个任务队列。
- SWAP:是交换分区的文件系统,类似于 Windows 的虚拟内存,其实现的方式有以下两种:第一种是进行内存排列像内存池一样,进行优化;第二种是把硬盘上的空间模拟成内存。Swap 是 Linux 的虚拟内存,在安装时要设置好大小,一般设置为物理内存的两倍。
2、Linux 文件系统及文件
2.1、文件目录
Linux 的目录结构是由很多文件块区组成,与 Windows 分区不同。
Linux 没有盘符这个概念,只有一个根目录 /,所有文件都在它下面!

2.1.1、根目录(/)
- 根目录是整个文件系统的起点,在 Linux下有且只有一个根目录。
- 它包含了系统运行所需的所有文件和目录。
- 所有其他目录都是从根目录派生出来的。
当你在终端里输入“/home”,你其实是在告诉电脑,先从 /(根目录)开始,再进入到 home 目录。
2.1.2、常见子目录及其功能
| 目录 | 功能 | 特点 |
|---|---|---|
| /bin: /usr/bin | 可执行二进制文件的目录。存放系统用户级别的基本命令,这些命令是系统启动和运行所必需的,例如常用的 ls(列出目录内容)、cp(复制文件)、mv(移动或重命名文件)等。 | 这些命令在系统启动的早期阶段就可以使用,即使文件系统的其他部分尚未挂载。 |
| /sbin: /usr/sbin: /usr/local/sbin | 存放系统管理员使用的基本命令,通常只有具有root权限的用户才能执行,一般用户只能"查看"而不能设置和使用。例如shutdown(关闭系统)、reboot(重启系统)、fdisk(磁盘分区工具)等。 | 这些命令主要用于系统管理和维护。 |
| /home | 系统默认的用户家目录,用户主目录的根目录,每个用户都有自己的主目录,位于/home下,以用户名命名。例如,用户john的主目录是/home/john。 | 用户可以在自己的主目录中自由创建、修改和删除文件和目录,通常用于存放用户的个人数据和配置文件。 |
| /boot | 放置linux系统启动时用到的一些文件,如Linux的内核文件:(vmlinuz),初始RAM磁盘(initrd.img)和系统引导管理器:(/boot/grub)。 | 这些文件对于系统的启动至关重要,修改或删除这些文件可能会导致系统无法启动。 |
| /dev | 设备文件目录,存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备。在Linux中,设备被视为文件,可以通过对这些文件的读写操作来控制设备。例如,/dev/sda表示第一个 SCSI 或 SATA硬盘,/dev/tty表示终端设备。 | 这些文件实际上并不占用磁盘空间,它们只是系统与硬件设备之间的接口。 |
| /etc | 存放系统和应用程序的配置文件。例如,/etc/passwd包含用户账户信息,/etc/group包含用户组信息,/etc/fstab包含文件系统挂载信息等。 | 修改这些配置文件可以改变系统和应用程序的行为,但需要谨慎操作,以免导致系统不稳定。 |
| /lib: /usr/lib: /usr/local/lib | 存放系统和应用程序运行所需的共享库文件。程序在执行过程中,需要调用一些额外的参数时需要函数库的协助。例如,libc.so是C标准库,许多程序都依赖于它。 | 共享库是一些可以被多个程序同时使用的代码库,这样可以减少内存的占用。 |
| /media | 用于挂载可移动媒体设备,如USB闪存驱动器、光盘等。当插入可移动设备时,系统会自动将其挂载到/media下的一个子目录中。 | 方便用户访问可移动设备中的数据 |
| /mnt | 临时挂载点,通常用于手动挂载文件系统。例如,当需要挂载一个额外的硬盘分区或网络共享时,可以将其挂载到/mnt下的一个目录中。 | 用户可以根据需要创建和使用/mnt下的子目录。 |
| /opt | 用于安装可选的软件包。一些第三方软件可能会将其文件安装到/opt目录下,以避免与系统自带的软件冲突。 | 通常由用户或管理员手动安装和管理。 |
| /root | 系统管理员(root)的家目录。之所以放在这里,是因为如果进入单人维护模式而仅挂载根目录时,该目录就能够拥有root的家目录,所以我们会希望root的家目录与根目录放置在同一个分区中。 | 与普通用户的主目录/home不同,root用户的主目录位于/root。 |
| /proc | 虚拟文件系统,包含了系统和进程的运行时信息。这些信息并不是实际存储在磁盘上的文件,而是由内核动态生成的。此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的目录有,/proc/cpuinfo包含CPU的信息,/proc/meminfo包含内存的信息。 | 可以通过读取这些文件来获取系统的实时状态信息。 |
| /srv | 服务启动之后需要访问的数据目录,如 www 服务需要访问的网页数据存放在 /srv/www 内、FTP服务器的文件等。 | 这些数据通常与系统提供的服务相关。 |
| /tmp | 临时文件目录,用于存放系统和应用程序在运行过程中产生的临时文件。这些文件通常在系统重启时会被自动删除。 | 所有用户都可以在/tmp目录中创建和删除文件。 |
| /run | 在系统运行期间存放临时文件和信息,如进程ID文件、锁文件等。这些文件在系统启动时创建,在系统关闭时删除。 | 用于存储系统运行时的临时数据。 |
| /sys | 虚拟文件系统,提供了对内核对象和设备驱动的访问接口。通过读取和修改/sys下的文件,可以控制和配置内核和设备。 | 主要用于内核开发和系统调试。 |
| /usr | 存放用户级别的应用程序和文件,是Ubuntu系统中最大的目录之一。它包含了许多子目录,如/usr/bin(用户级别的命令)、/usr/sbin(用户级别的系统管理命令)、/usr/lib(用户级别的共享库)、/usr/share(共享数据)等。 | 这些文件通常是只读的,由系统安装和管理。 |
| /var | 存放经常变化的数据,如日志文件、邮件队列、缓存文件等。例如,/var/log目录包含了系统和应用程序的日志文件,/var/mail目录包含了用户的邮件。 | 这些文件的大小和内容会随着系统的运行而不断变化。 |
了解Ubuntu的磁盘目录结构对于系统管理和使用非常重要。通过熟悉各个目录的功能和用途,用户可以更好地组织和管理自己的数据,同时也能够更方便地进行系统维护和故障排除。在操作文件和目录时,一定要谨慎,特别是对于系统关键目录和配置文件,以免造成系统损坏。
2.2、每个目录下都有 . 和 …
.表示当前目录;…表示上一级目录,即父目录;
其中根目录下的 . 和 … 都表示当前目录。
2.3、文件名
Linux 所有的目录和文件名都是对大小写敏感的,file 文件和 FILE 文件是不一样的!
2.4、文件颜色
常见的文件颜色如下:
- 蓝色:目录文件
- 绿色:可执行文件
- 浅蓝色:链接文件
- 红色:压缩文件
- 黄色:字符设备
- 灰色:其他文件

实际情况如下所示:


每日一更!
公众号、优快云等博客:小菜狗编程笔记
谢谢点赞关注哈!目前在飞书持续优化更新~
日更较慢有需要完整笔记请私我,C/C++/数据结构-算法/单片机51-STM32-GD32-ESP32/嵌入式/Linux操作系统/uboot/Linux内核-驱动-应用/硬件入门-PCB-layout/Python/后期小程序和机器学习!
672

被折叠的 条评论
为什么被折叠?



