Linux下的磁盘管理

Fdisk

fdisk 命令是一个用于磁盘分区管理的工具,在 Linux 和类 Unix 操作系统中广泛使用。下面是 fdisk 命令的一些常用参数和操作:

  1. fdisk -l:列出系统上的所有磁盘和分区信息。

  2. fdisk /dev/sdX:打开指定的磁盘进行分区操作,其中 sdX 是磁盘设备名,如 /dev/sda

  3. n:创建一个新分区。

  4. d:删除一个分区。

  5. p:显示分区表。

  6. w:将分区表写入磁盘并退出。

  7. q:退出 fdisk 而不保存任何更改。

  8. t:更改分区的类型。

  9. m:显示 fdisk 命令的帮助信息。

Df

df 命令用于显示文件系统的磁盘空间使用情况。下面是 df 命令的一些常用参数:

  1. -h:以人类可读的方式显示磁盘空间信息,使用 K、M、G 等单位。

  2. -T:显示文件系统类型。

  3. -i:显示 inode 使用情况。

  4. -a--all:显示所有文件系统,包括系统保留的文件系统。

  5. -x <文件系统类型>:排除指定类型的文件系统。

  6. -l--local:仅显示本地文件系统。

  7. -P:以可解析的格式输出,方便脚本处理。

  8. -t <文件系统类型>:仅显示指定类型的文件系统。

  9. -hT:组合使用 -h-T 参数,显示人类可读的磁盘空间信息和文件系统类型。

  10. --total:显示总计行,包括所有文件系统的总磁盘空间使用情况。

  11. --help:显示 df 命令的帮助信息。

SWAP

Swap 是一种虚拟内存技术,用于扩展计算机的内存容量。在 Linux 系统中,可以使用以下命令和参数来管理和操作 Swap:

  1. swapon:启用一个或多个 Swap 分区或文件。

    • swapon /dev/sdX:启用指定的 Swap 分区,其中 /dev/sdX 是 Swap 分区的设备名。

    • swapon /path/to/swapfile:启用指定的 Swap 文件,其中 /path/to/swapfile 是 Swap 文件的路径。

  2. swapoff:禁用一个或多个已启用的 Swap 分区或文件。

    • swapoff /dev/sdX:禁用指定的 Swap 分区。

    • swapoff /path/to/swapfile:禁用指定的 Swap 文件。

  3. mkswap:创建一个 Swap 分区或文件。

    • mkswap /dev/sdX:创建一个 Swap 分区。

    • mkswap /path/to/swapfile:创建一个 Swap 文件。

  4. swapon -s:显示当前启用的 Swap 分区或文件的摘要信息。

  5. free -h:显示系统的内存和 Swap 使用情况。

mkfs 格式化

要将分区格式化为 ext4 文件系统,可以使用 mkfs.ext4 命令。请确保在执行格式化之前备份重要的数据,因为格式化会清除分区上的所有数据。

以下是格式化为 ext4 文件系统的基本步骤:

  1. 确定要格式化的分区设备名,例如 /dev/sdX(其中 X 是分区的字母标识符,如 abc 等)。

  2. 打开终端,以管理员权限运行以下命令:

    sudo mkfs.ext4 /dev/sdX
    

    /dev/sdX 替换为你要格式化的分区设备名。

  3. 系统会显示一些警告信息,确认要格式化该设备。输入 yyes 确认。

  4. mkfs.ext4 命令将开始格式化过程,并显示进度信息。

  5. 格式化完成后,你可以将该分区挂载到文件系统的目录中,以便访问和使用。例如,你可以使用 mount 命令将其挂载到 /mnt 目录:

    sudo mount /dev/sdX /mnt
    

    这将将分区 /dev/sdX 挂载到 /mnt 目录。

mount

mount 命令用于手动挂载文件系统到指定的挂载点。它可以使用不同的参数来指定挂载选项和文件系统类型。下面是 mount 命令的常用参数:

  • -t <文件系统类型>:指定要挂载的文件系统类型。例如,-t ext4 表示挂载 ext4 文件系统。
  • -o <挂载选项>:指定挂载选项,多个选项之间用逗号分隔。常见的挂载选项包括:
    • rw:以读写模式挂载文件系统(默认选项)。
    • ro:以只读模式挂载文件系统。
    • noexec:禁止在挂载点上执行可执行文件。
    • nosuid:禁止设置 setuid 和 setgid 位。
    • nodev:禁止创建特殊设备文件。
    • noatime:禁止更新访问时间。
    • nodiratime:禁止更新目录的访问时间。
    • relatime:相对于访问时间的更新,但不会每次访问都更新。
  • -r:以只读模式挂载文件系统。
  • -w:以读写模式挂载文件系统。
  • -o remount:重新挂载已经挂载的文件系统,可以用于修改挂载选项。
  • -L <卷标>:根据卷标挂载文件系统。
  • -U <UUID>:根据 UUID 挂载文件系统。
  • -P:根据设备路径挂载文件系统。

下面是一些示例 mount 命令的用法:

  • 挂载 ext4 文件系统到指定挂载点 /mnt

    mount -t ext4 /dev/sdXY /mnt
    
  • 挂载 NFS 文件系统到指定挂载点 /mnt,并指定挂载选项:

    mount -t nfs -o rw,hard,intr 192.168.1.100:/shared /mnt
    
  • 重新挂载已经挂载的文件系统,并修改挂载选项:

    mount -o remount,noexec /mnt
    

开机自动挂载

要实现开机自动挂载分区,你需要编辑 /etc/fstab 文件并添加相应的条目。/etc/fstab 是一个系统配置文件,用于定义文件系统的挂载点和选项。

以下是在 /etc/fstab 文件中添加自动挂载分区的步骤:

  1. 打开终端,以管理员权限编辑 /etc/fstab 文件。可以使用文本编辑器如 nanovi

    sudo nano /etc/fstab
    
  2. 在文件的末尾添加一个新的行,指定要挂载的分区的相关信息。行的格式如下:

    /dev/sdX   /mnt   ext4   defaults   0   0
    

    这里的含义是:

    • /dev/sdX 是要挂载的分区设备名。
    • /mnt 是挂载点的路径,可以根据需要选择其他目录。
    • ext4 是文件系统类型,确保与分区的实际文件系统类型匹配。
    • defaults 是挂载选项,使用默认选项即可。
    • 00 是用于文件系统检查和备份的选项,一般设置为 0

    请将 /dev/sdX/mnt 替换为你要挂载的分区设备名和挂载点路径。

  3. 保存并关闭文件。在 nano 编辑器中,按下 Ctrl + O 保存文件,然后按下 Ctrl + X 关闭编辑器。

  4. 重启系统,分区应该会自动挂载到指定的挂载点。

逻辑卷的创建和扩容

分为新建卷组和扩容卷组
下面为新建卷组
正常创建分区 但是不要格式化

创建pv卷

pvcreate /dev/sdb1

创建vg卷组

vgcreate vg0 /dev/sda2

检查信息用的指令

pvdisplay 
vgdisplay
lvdisplay
pvs
lvs
vgs
vgscan
pvscan
lvscan

创建lv

lvcreate -L 5G -n lv1 vg0 //lv名称和vg名称

正常格式化文件系统 格式化lv

mkfs.xfs /dev/vg0/lv1

扩容

扩容无需创建vg直接加入vg
依旧是创建分区后pv改分区

加入vg组

vgextend -v cs /dev/sdb1

扩容lv

lvextend -L +5G /dev/cs/lv0 //扩展到那个lv里面去

重启

reboot