系统文件目录结构
Linux 文件系统的起点,即根目录(/),所有文件和目录都从这里开始。
其中每一个都有具体的功能职责,以下是我们在使用 Linux 时经常打交道的目录,很有比较完整的了解其功能范围:
- /home:用户文件,针对每一个用户都专有一个以用户名命名的主目录
- /opt:即 Optional,用于手动安装自己的软件,例如商业软件或大型游戏。
- /dev:即 Device,这里存放了系统的外部设备,因为 Linux 下的设备是以文件的形式存在的。
- /mnt:即Mount,通常我们会将一些硬盘临时手动挂载到该目录。
- /etc:系统管理所需要的配置文件目录
以下是一些通常我们不需要操作的目录,为系统自行维护的:
- /root:管理员目录。
- /sbin:即 Super User,用于存放系统管理员的指令。
- /boot:存放系统启动引导相关文件,
- /bin:该目录下有在终端中使用的命令,例如
cd
等等。 - /usr:存储系统默认的用户级应用程序、库和文档,例如包管理器(如 apt、yum)安装的软件。
- /lib:即 Library,用于存放系统的动态连接共享库。
- /lost+found:非法关机后,会产生记录文件
- /proc:管理内存空间!虚拟的目录,是系统内存的映射,可以直接访问这个目录来,获取系统信息。
- /media:通常用于自动挂载外部设备,例如U盘等,且在移除设备前最好先卸载设备
unmount
。 - /srv:存放服务启动之后需要提取的数据(不用服务器就是空)。
- /sys:非常特殊且重要的目录,用于向用户空间暴露内核信息,例如设备的硬件信息。
- /tmp:即 Temporary,存放一些临时文件
- /var:那些经常被修改的目录放在这个目录下。包括各种日志文件。
- /run:临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。
磁盘管理
一块硬盘,例如 2T SSD 的在使用 Sata3 接口接入设备后,如何才用存入数据,通常需要经历以下步骤:
- 识别磁盘:使用
lsblk
或fdisk -l
命令来识别新添加的磁盘。这些命令会显示所有已连接的磁盘及其分区。 - 创建分区:确保磁盘中数据已经备份,新建分区后会删除所有数据。使用分区工具如 fdisk 创建分区,并正确设置分区类型(主分区、扩展分区、逻辑分区等)和文件系统类型(EXT4、XFS、Btrfs、NTFS 等。)。
- 格式化分区:使用 mkfs 命令来格式化每个分区,创建文件系统。
- 挂载分区:手动创建一个挂载点(一个目录),如
mkdir /mnt/newdisk
,使用mount
命令临时挂载分区,如mount /dev/sdx1 /mnt/newdisk
,注意这是临时的,重启后会失效。要启动时自动挂载分区,需编辑/etc/fstab
文件并添加相应的条目。
为什么要分区?
- 组织性:分区使得用户能够更有效地组织和管理数据。例如,可以将操作系统、应用程序和用户数据放在不同的分区上。
- 安全性和数据恢复:如果操作系统损坏,分区可以限制问题的影响范围,便于恢复数据。
- 提高效率:不同类型的分区(如交换分区)可以提高系统的性能。
- 多操作系统:可以在同一硬盘上安装多个操作系统,每个操作系统在其自己的分区上运行。
- 且分区在物理层面上并不是隔离的,而是由分区表在逻辑上定义。
如何使用 fdisk 删除与创建分区?
启动 fdisk 功能:
sudo fdisk /dev/sdx
将 /dev/sdx 替换为你的硬盘设备名称。
1、删除分区
输入 p
来打印出当前分区表。
输入 d
来删除分区。如果有多个分区,系统会提示你选择一个分区号。
输入 w
将更改写入磁盘。
2、创建分区
输入 n
创建新分区。按照提示操作,选择分区类型、起始和结束点。
输入 t
更改分区类型。
输入 w
保存更改。
分区表类型
- MBR(Master Boot Record):老式的分区表格式,支持最多四个主分区,或三个主分区加一个扩展分区。
- GPT(GUID Partition Table):较新的分区表格式,支持多达128个分区,没有扩展分区的概念,兼容更大的磁盘。GPT与UEFI兼容性更好,目前主流也是GPT为主。
文件系统类型
EXT4(Fourth Extended Filesystem)
- Linux 系统上最常用的文件系统。
- 支持大型文件和大容量存储。
- 提供日志功能,增强数据恢复能力。
XFS
- 高性能的文件系统,适用于大型文件和数据库。
- 支持在线扩展和在线缩减。
Btrfs(B-Tree Filesystem)
- 现代文件系统,提供高级特性,如快照、数据压缩和多磁盘存储。
- 适合数据备份和大型存储池。
NTFS
- Windows系统的标准文件系统。
- 在Linux上可通过NTFS-3G驱动进行读写访问。
FAT32
- 广泛兼容的老式文件系统,支持在几乎所有操作系统上读写。
- 文件大小和分区大小有限制。
exFAT
- 为大容量存储和大文件设计的文件系统。
- 比FAT32更现代,没有FAT32的大小限制。
Swap
- Linux的交换分区不是文件系统,但它被视为一种“虚拟内存”。
- 当物理内存耗尽时,系统可以使用交换空间。
评论区