Liunx磁盘管理(中)

 Liunx磁盘管理(上)-CSDN博客

目录

查看块设备信息

lsblk(list block devices)

fdisk

gdisk 

parted

blkid

 df(disk free)

虚拟机添加硬盘

步骤:

磁盘分区

MBR格式创建分区

使用方法

替代工具

GPT分区格式 

主要功能

使用方法

更新磁盘分区 

为什么使用 partprobe

手动更新分区表不需要重启的原理

使用注意事项

MBR格式与GPT格式的相互转换

主要概念

使用 parted 转换分区表格式

注意事项

 安装文件系统(格式化)

格式化为 ext4

格式化为 xfs(centos7默认)

扩展(了解)

临时挂载mount

  

常见用法

挂载分区

挂载文件系统

临时挂载

查看挂载信息

挂载外部存储

挂载网络共享

注意事项

挂载后操作 

强制卸载

取消特定挂载点和取消挂载特定分区有什么区别 

取消挂载特定挂载点

取消挂载特定分区

区别与注意事项

总结

自动挂载 

方法一 —— /etc/fstab

方法二 ——/etc/rc.d/rc.local

 总结:


查看块设备信息

lsblk(list block devices)

是用于查看块设备信息的最常用命令之一。它提供了硬盘、分区、文件系统等的详细信息,并以易于阅读的格式显示。

常用参数:

#显示所有分区和设备,显示系统中的所有块设备,包括那些没有分区的设备。
lsblk -a

显示文件系统信息,显示系统中的所有块设备,包括那些没有分区的设备。
lsblk -f

列出特定设备,列出特定设备(如 /dev/sda)的详细信息。
lsblk /dev/sda


[root@localhost ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   20G  0 disk 
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   19G  0 part 
  ├─centos-root 253:0    0   17G  0 lvm  /
  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sdb               8:16   0   20G  0 disk 
├─sdb1            8:17   0   10G  0 part /mnt/dir1
├─sdb2            8:18   0    1K  0 part 
└─sdb5            8:21   0    3G  0 part 
sr0              11:0    1 1024M  0 rom  

NAME       列是设备名称
MAJ:MIN    是主/次设备号
RM         表示是否为可移动设备
SIZE       是设备大小
RO         是是否为只读设备
TYPE       表示设备类型
MOUNTPOINT 是设备或分区的挂载点

fdisk

主要用于管理MBR分区表,但也可以用来查看块设备和分区信息。 

#列出特定块设备上的所有分区。
fdisk -l /dev/sdX

gdisk 

用于列出指定磁盘的分区表信息

gdisk -l /dev/sdc

parted

是一个功能强大的分区工具,支持GPT和MBR分区表。它也可以用来查看块设备的详细信息。 

#显示指定设备的分区信息。 
parted /dev/sdb print

blkid

命令用于显示块设备的UUID、LABEL、文件系统类型等信息。

#列出所有块设备的详细信息,包括UUID、文件系统类型等。
blkid

 df(disk free)

命令用于查看磁盘空间使用情况,可以显示挂载点、可用空间等信息。

df -h

 查看分区列表

cat /proc/partitions

虚拟机添加硬盘

步骤:

首先关闭虚拟机,选中要改变的虚拟机右键打开设置

 

这是就添加完成啦,打开虚拟机使用lsblk命令即可看到。 

磁盘分区

MBR格式创建分区

fdisk 是一个用于创建、删除、修改和查看磁盘分区的命令行工具,通常用于 Linux 和其他类 Unix 系统中。它可以处理传统的 MBR 分区表,并允许用户管理磁盘的分区布局。

使用方法

  • 查看磁盘分区:使用 fdisk -l 查看所有磁盘的分区信息。
  • 选择特定磁盘:启动 fdisk 后,可以选择要操作的磁盘。例如:sudo fdisk /dev/sda
  • 查看帮助:输入m即可看到命令操作对应字母。
  • 创建新分区:在 fdisk 中,可以使用命令n创建新的主分区、扩展分区或逻辑分区。
  • 删除分区:可以选择d要删除的分区,然后确认删除操作。
  • 保存更改:在 fdisk 中,必须使用 w命令来写入更改,否则所有操作都不会生效。
[root@localhost ~]# fdisk  /dev/sdc
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

Device does not contain a recognized partition table
使用磁盘标识符 0x88f2f422 创建新的 DOS 磁盘标签。

命令(输入 m 获取帮助):m       
命令操作
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition
   g   create a new empty GPT partition table
   G   create an IRIX (SGI) partition table
   l   list known partition types
   m   print this menu
   n   add a new partition
   o   create a new empty DOS partition table
   p   print the partition table
   q   quit without saving changes
   s   create a new empty Sun disklabel
   t   change a partition's system id
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit
   x   extra functionality (experts only)

命令(输入 m 获取帮助):n
Partition type:                           
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
Select (default p): e                                      #创建扩展分区
Command (m for help): n
Partition type:
   p   primary (1 primary, 1 extended, 2 free)
   l   logical (numbered from 5)
Select (default p): l                                      #创建逻辑分区
Adding logical partition 5 
First sector (208896-20971519, default 208896): 
Using default value 208896
Last sector, +sectors or +size{K,M,G} (208896-20971519, default 20971519): +5G #指定大小
Partition 5 of type Linux and of size 5 GiB is set
Command (m for help): w                                     #保存退出

替代工具

  • parted:是另一个功能强大的分区工具,支持 GPT 和 MBR,并具有更多高级功能。
  • gparted:基于图形界面的分区工具,适合那些更喜欢可视化界面的人。

GPT分区格式 

gdisk 是一种用于管理 GPT(GUID Partition Table)分区表的命令行工具。它类似于 fdisk,但专为处理 GPT 分区表设计。GPT 分区表是一种现代的分区格式,比传统的 MBR(Master Boot Record)更强大和灵活,支持更大的磁盘和更多的分区。

主要功能

  • 查看 GPT 分区表:gdisk 可以显示磁盘的 GPT 分区布局,包括分区类型、大小、UUID 等。
  • 创建和删除分区:可以使用 gdisk 创建新的分区、删除现有分区,或调整分区大小。
  • 转换 MBR 到 GPT:gdisk 可以将 MBR 分区表转换为 GPT,前提是没有冲突的分区。
  • 备份和恢复 GPT:gdisk 允许备份 GPT 分区表并在需要时恢复。

使用方法

需要下载对应的包

yum install -y gdisk
  • 选择磁盘:启动 gdisk 后,你需要指定要操作的磁盘。例如,sudo gdisk /dev/sdc 用于选择第一个磁盘。
  • 查看分区表:输入 p 可以查看 GPT 分区表的详细信息。
  • 创建新分区:使用 n 命令创建新分区,可以指定起始和结束位置,或者指定大小。
  • 删除分区:使用 d 命令删除指定的分区。
  • 保存更改:与 fdisk 类似,使用 w 命令来保存更改。如果没有保存,所有更改将不会生效。
[root@localhost ~]# gdisk /dev/sdc
GPT fdisk (gdisk) version 0.8.10

Partition table scan:
  MBR: MBR only
  BSD: not present
  APM: not present
  GPT: not present


***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format
in memory. THIS OPERATION IS POTENTIALLY DESTRUCTIVE! Exit by
typing 'q' if you don't want to convert your MBR partitions
to GPT format!
***************************************************************


Command (? for help): ?
b	back up GPT data to a file
c	change a partition's name
d	delete a partition
i	show detailed information on a partition
l	list known partition types
n	add a new partition
o	create a new empty GUID partition table (GPT)
p	print the partition table
q	quit without saving changes
r	recovery and transformation options (experts only)
s	sort partitions
t	change a partition's type code
v	verify disk
w	write table to disk and exit
x	extra functionality (experts only)
?	print this menu

Command (? for help): n                  #创建分区
Partition number (2-128, default 2):     #回车使用默认,这里是从第2个标号
First sector (34-41943006, default = 10487808) or {+-}size{KMGTP}:   #使用默认值也可自定义
Last sector (10487808-41943006, default = 41943006) or {+-}size{KMGTP}:  #这也用啦默认值, 
                                                             #也可以自定义大小,例如+100M
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300):   #直接回车
Changed type of partition to 'Linux filesystem'

Command (? for help): p                  #分区
Disk /dev/sdc: 41943040 sectors, 20.0 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 46394B2A-87B9-454D-AA7F-1C15BDAC5C1F
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 41943006
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048        10487807   5.0 GiB     8300  Linux filesystem
   2        10487808        41943006   15.0 GiB    8300  Linux filesystem

Command (? for help): w     #保存退出

Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
 
Do you want to proceed? (Y/N): y      #这里问是否覆盖,选择是
OK; writing new GUID partition table (GPT) to /dev/sdc.
The operation has completed successfully.
[root@localhost ~]# 

更新磁盘分区 

上述两种格式的命令管理分区,在修改完需要更新磁盘分区表。

使用命令更新磁盘分区表,手动让内核更新分区表。不需要重启

[root@localhost ~]# partprobe /dev/sdc

partprobe是一个用于通知内核重新读取磁盘分区表的工具,通常在对分区进行更改后使用,以避免需要重启系统。在 Linux 环境中,磁盘分区的操作可能需要在内核中同步更新,以确保操作系统能够正确识别新的分区布局。

为什么使用 partprobe

当你使用工具(如 fdiskparted)创建、删除或修改磁盘分区后,内核可能不会立即察觉到这些更改。此时,系统可能会显示旧的分区信息,或者无法正确访问新创建的分区。partprobe 的作用是向内核发送信号,通知它重新读取指定磁盘的分区表,使系统能够识别最新的分区信息。

手动更新分区表不需要重启的原理

Linux 内核在运行过程中会缓存磁盘分区的信息。当分区表发生变化时,内核需要重新读取以获取最新信息。partprobe 的工作原理如下:

  1. 通知内核partprobe 向内核发送信号,要求内核重新读取指定磁盘的分区表。这是一个非破坏性的操作,不涉及数据的读写。

  2. 重新读取分区表:当内核收到 partprobe 的信号后,它会重新扫描磁盘的分区表,并更新内存中的分区信息。这意味着系统会使用最新的分区布局。

  3. 不需要重启:在大多数情况下,partprobe 可以在不重启系统的情况下更新分区表。这对服务器和生产环境非常有用,因为可以避免停机时间。

使用注意事项

虽然 partprobe 通常可以安全地更新分区表,但在某些情况下,可能会遇到问题:

  • 挂载的分区:如果分区正在使用(例如已挂载),可能无法立即更新。在这种情况下,建议先卸载分区,再运行 partprobe
  • 有进程正在使用分区:如果有进程正在访问某个分区,可能需要终止这些进程,然后再运行 partprobe

partprobe 提供了一种快速而有效的方法来更新分区表,而无需重启系统。这让 Linux 系统在分区操作后可以立即反映最新的更改,而不影响正在运行的进程或服务。

当然如果在更新分区后没有使用 partprobe 命令,选择重启也可以。重启系统会强制内核重新读取所有磁盘的分区表,并且确保所有更改生效。但是这在生产环境不适合,此方法只能学习使用。

MBR格式与GPT格式的相互转换

在 Linux 中,parted 是一种用于管理磁盘分区的命令行工具,它支持多种分区表格式,包括 GPT(GUID Partition Table)和 MBR(Master Boot Record)。parted -s 命令用于静默执行命令,不提示用户确认,因此非常适合自动化脚本。

通过使用 mklabel 命令,可以创建新的分区表。这会清除磁盘上的现有分区表并创建新的分区表。这意味着在转换分区表格式时,所有现有分区和数据都会被删除,因此在执行此操作之前,务必备份所有重要数据。

主要概念

  • GPT:一种现代分区表格式,支持更大的磁盘(超过 2 TB)和更多的分区(最多 128 个主分区)。GPT 还提供冗余和错误校正功能。
  • MBR:传统分区表格式,支持最大 2 TB 的磁盘和最多 4 个主分区。如果需要更多分区,必须使用扩展分区和逻辑分区。

使用 parted 转换分区表格式

要将磁盘从 MBR 转换为 GPT,或者从 GPT 转换为 MBR,parted 提供了简单的命令行方式。以下是关于这些命令的解释:

  • 将 MBR 转换为 GPT

    parted -s /dev/sdc mklabel gpt

    这个命令会将 /dev/sdc 的分区表格式转换为 GPT。如果 /dev/sdc 上有现有的分区表和数据,它们将被清除。

  • 将 GPT 转换为 MBR

    parted -s /dev/sdc mklabel msdos

    这个命令将 /dev/sdc 转换为 MBR 格式。同样,这会删除所有现有分区和数据。

注意事项

  • 备份数据:在转换分区表之前,确保备份所有重要数据,因为这会删除所有现有分区和数据。
  • 确定磁盘路径:确保你在转换之前指定了正确的磁盘路径,以避免误操作。
  • 重建分区:转换分区表格式后,你需要重新创建分区并重新安装文件系统
  • 系统兼容性:在将系统磁盘转换为 GPT 或 MBR 时,确保你的系统和引导方式兼容。

 安装文件系统(格式化)

在前面我们新加的硬盘,选择啦合适的一个磁盘格式进行分区应用,并将分区信息在内容中同步更新,下面就要对分区进行安装文件系统。

mkfs 是一个命令行工具,用于在指定的分区或卷上创建文件系统。它有多种变体,支持不同的文件系统,如 ext4、xfs、vfat、ntfs 等。在 Linux 系统中,格式化分区通常用于在创建或重新创建分区后,为其指定合适的文件系统。以下是关于 mkfs.ext4mkfs.xfs 的详细解释:

格式化为 ext4

  • 命令

    mkfs.ext4 /dev/sdc1

    这个命令会在 /dev/sdb1 分区上创建 ext4 文件系统。ext4 是 Linux 上常用的文件系统之一,具有高性能、稳定性和良好的兼容性。

  • 常见用途

    • 用于格式化新的分区,创建文件系统以便存储数据。
    • 重新格式化现有分区,以清除数据并重新创建文件系统。
    • 用于根文件系统或数据分区。
  • 注意事项

    • 格式化会删除分区上的所有数据,因此在执行此操作之前,确保备份重要数据。
    • 格式化后,需要挂载分区才能访问和使用。

格式化为 xfs(centos7默认)

  • 命令

    mkfs.xfs /dev/sdc2

    这个命令会在 /dev/sdc2 分区上创建 xfs 文件系统。xfs 是一种高性能文件系统,适用于大规模存储和高吞吐量应用。

  • 常见用途

    • 用于高性能需求的应用,例如数据库、大文件存储等。
    • 适用于服务器和数据中心环境。
    • 提供在线扩展等功能。
  • 注意事项

    • 和 ext4 一样,格式化会删除分区上的所有数据。确保在格式化前备份数据。
    • xfs 不支持在线缩小,因此在规划分区时要小心。

扩展(了解)

ext4 文件系统
ext4 是 Linux 上最常用的文件系统之一,适用于大多数用途,包括根文件系统和数据分区。创建 ext4 文件系统的示例:
mkfs.ext4 /dev/sda1

xfs 文件系统
xfs 是一种高性能文件系统,通常用于服务器和大规模存储应用。创建 xfs 文件系统的示例:
mkfs.xfs /dev/sdb1

ext3 文件系统
ext3 是 ext4 的前身,带有日志功能,但性能和功能不如 ext4。创建 ext3 文件系统的示例:
mkfs.ext3 /dev/sdc1

Btrfs 文件系统
Btrfs 是一种高级文件系统,支持快照、压缩、子卷等高级功能。创建 Btrfs 文件系统的示例:
mkfs.btrfs /dev/sdd1

FAT32 文件系统
FAT32 是一种老式的文件系统,兼容性高,常用于外部存储设备。创建 FAT32 文件系统的示例:
mkfs.vfat -F 32 /dev/sde1

exFAT 文件系统
exFAT 是微软开发的文件系统,适用于外部存储设备和跨平台环境。创建 exFAT 文件系统的示例:
mkfs.exfat /dev/sdf1

NTFS 文件系统
NTFS 是 Windows 的默认文件系统,在 Linux 上也可以使用,但可能需要额外的驱动程序。创建 NTFS 文件系统的示例:
mkfs.ntfs /dev/sdg1

ISO 9660 文件系统
ISO 9660 是用于光盘的文件系统,通常用于创建光盘映像。创建 ISO 9660 文件系统的示例:
mkisofs -o image.iso /path/to/folder

临时挂载mount

  

mount 是 Linux 和其他 Unix 类系统中用于挂载文件系统的命令。挂载是指将一个文件系统连接到现有的文件系统树上,使其可供访问。在 Linux 中,所有文件和目录都在一个单一的目录树中,因此挂载允许你将磁盘分区、外部存储设备、网络共享等连接到特定的挂载点,以便访问其中的文件和目录。

常见用法

以下是 mount 命令的常见用法及示例:

挂载分区

要挂载磁盘分区,需要指定分区和挂载点。例如,挂载 /dev/sdc1 到 /mnt/dire1

mount /dev/sdc1 /mnt/dire1

挂载后,所有文件和目录都可以通过 /mnt/dire1 访问。

挂载文件系统

你可以指定文件系统类型,虽然大多数情况下,mount 会自动检测。例如,挂载 ext4 文件系统:

mount -t ext4 /dev/sda1 /mnt/mydisk
临时挂载

使用mount挂载通常在系统重启后不会持久化,除非你在 /etc/fstab 中进行配置。这种挂载适用于临时使用的存储设备。

指定挂载时的各种属性和行为

mount -o <属性>
属性:
rw	       读写 
ro	       只读 
noexec	   不允许执行二进制文件
exec	   允许执行二进制文件 
auto	   mount -a 开机自动挂载 
remount	   在线重新挂载 

挂载文件系统为只读:
mount -o ro /dev/sda1 /mnt
挂载文件系统并禁止执行文件:
mount -o noexec /dev/sdb1 /mnt
挂载文件系统并不更新访问时间:
mount -o noatime /dev/sdc1 /mnt
重新挂载文件系统以改变为读写模式:
mount -o remount,rw /mnt
查看挂载信息

要查看当前系统中所有已挂载的文件系统,可以使用:

mount

或者查看 /proc/mounts 文件,该文件包含所有已挂载的文件系统信息。

挂载外部存储

挂载外部存储设备(如 USB 驱动器)时,通常设备名称是动态的,可以通过 lsblkfdisk -l 查看设备名称。例如,挂载一个 USB 驱动器:

mount /dev/sdb1 /mnt/usb
挂载网络共享

mount 也可以用于挂载网络共享,如 NFS 或 CIFS(SMB)共享。例如,挂载一个 NFS 共享:

mount -t nfs server:/path/to/share /mnt/nfs

注意事项

  • 挂载点:确保指定的挂载点是一个空目录,以避免覆盖现有数据。
  • 权限:挂载通常需要管理员权限,因此需要使用 sudosu
  • 挂载持续性:要在重启后保留挂载,需要编辑 /etc/fstab 文件。

挂载后操作 

一旦挂载完成,你可以在挂载点执行任何文件操作,如创建、读取、修改、删除文件和目录。

要卸载分区或设备,可以使用 umount 命令:

umount /mnt/mydisk
强制卸载

如果挂载的分区正在使用,正常的 umount 可能失败。在这种情况下,你可以使用 -l-f 选项:

  • -l(lazy):延迟卸载,直到分区不再被使用。适用于长时间无法卸载的情况。
  • -f(force):强制卸载。应该谨慎使用,可能导致数据损坏。
umount -l /mnt/mydisk # 延迟卸载

取消特定挂载点和取消挂载特定分区有什么区别 

取消特定挂载点和取消特定分区的操作本质上是相似的,都是通过 umount 命令解除文件系统与挂载点之间的关联。然而,两者之间的区别在于操作的目标以及操作后可能的影响。

取消挂载特定挂载点

取消挂载特定挂载点意味着你指定一个挂载点来解除其与分区的关联。

  • 命令
    umount /mnt/my_mount_point
  • 作用:这个命令会取消 /mnt/my_mount_point 上的挂载。如果有多个分区挂载到这个挂载点,所有分区都会被取消挂载。这通常用于解挂特定目录上的所有文件系统。
取消挂载特定分区

取消挂载特定分区意味着你指定一个分区来解除其与挂载点的关联。

  • 命令
    umount /dev/sdb1
  • 作用:这个命令会取消 /dev/sdb1 的挂载,无论它被挂载到哪个挂载点。如果同一个分区被多次挂载,这个命令可能只会取消其中一个挂载。
区别与注意事项
  • 针对对象:取消挂载特定挂载点是针对挂载点的操作,而取消挂载特定分区是针对分区的操作。
  • 取消结果:取消挂载特定挂载点会解除所有与该挂载点相关的挂载;而取消挂载特定分区只会解除特定分区的挂载,无论它挂载在哪个挂载点上。
  • 多次挂载:如果同一个分区被挂载到多个挂载点,取消挂载特定分区可能需要多次操作,确保所有挂载都被解除;而取消挂载特定挂载点通常只需要一次操作。
  • 确保安全:在取消挂载之前,确保没有进程正在使用该挂载点或分区,否则可能会导致错误或数据丢失。
总结

两者的主要区别在于操作的目标:一个针对挂载点,另一个针对分区。选择哪种方式取决于你的目标。如果你希望解除特定挂载点的所有关联,使用挂载点;如果希望解除特定分区的挂载,使用分区作为目标。

自动挂载 

在使用mount挂载时,只是临时挂载使用,挂载的效果只持续到系统重启。重启后,这些挂载的文件系统或分区将会被卸载,也就是说它们不再处于挂载状态。这意味着,如果希望挂载在系统重启后仍然保持有效,就需要采取其他措施。

如下图,可以看到重启后MOUNTPOINT这列的目录信息已经没有啦。挂载的目录里还存在对应的文件夹。

方法一 —— /etc/fstab

/etc/fstab 是一个重要配置文件,用于定义文件系统的挂载和交换空间的配置。在系统启动时,/etc/fstab 会被读取,按照配置文件中的设置挂载文件系统、启用交换空间等。这个文件是确保系统正常启动和文件系统正确挂载的关键部分。

/etc/fstab 文件的示例:

# 文件系统         挂载点       文件系统类型    挂载选项     转储  检查
/dev/sda1          /            ext4          defaults      1     1
UUID=xxxx-xxxx     /home        ext4          defaults      0     2
/dev/sdb1          /mnt/backup  ntfs          defaults      0     0

[root@localhost ~]# lsblk -f
NAME            FSTYPE      LABEL           UUID                                   MOUNTPOINT
sda                                                                                
├─sda1          xfs                         fffa4c7e-08bd-4884-bc0c-bfb9687e97d7   /boot
└─sda2          LVM2_member                 4wm0hN-R1oK-oZMf-yqui-clNU-9CFn-2bRWFs 
  ├─centos-root xfs                         408aebe7-55d2-4135-8482-7dee657d5f94   /
  └─centos-swap swap                        c2913040-eb2a-4b86-b6da-8e7affe87bfc   [SWAP]
sdb                                                                                
├─sdb1          ext4                        522c00e2-daff-4af8-8f0d-12dff383a1aa   /mnt/dir1
├─sdb2                                                                             
└─sdb5          ext4                        fed97c01-89bd-4402-bbf4-051e01f7f7b9   
sdc                                                                                
├─sdc1          ext4                        4ff8527c-09f3-4cb2-8738-e014c5667dce   
└─sdc2          xfs                         01e80b67-e911-41f5-9cc2-7377473e0a0f   
sr0             iso9660     CentOS 7 x86_64 2020-11-03-14-55-29-00     
[root@localhost ~]# vim /etc/fstab



#
# /etc/fstab
# Created by anaconda on Tue Apr 30 23:31:50 2024
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root /                       xfs     defaults        0 0
UUID=fffa4c7e-08bd-4884-bc0c-bfb9687e97d7 /boot                   xfs     defaults        0 0
/dev/mapper/centos-swap swap                    swap    defaults        0 0
/dev/sdc1               /mnt/dire1              ext4    defaults        0 0
                                                                                   

参数解释:
第1列:挂载设备
(1)/dev/sdc1
(2)UUID=设备的uuid   rhel6/7的默认写法   同一台机器内唯一的一个设备标识
第2列:挂载点  /mnt/dire1
第3列:文件系统类型ext4
第4列:文件系统属性	defaults 
第5列:是否对文件系统进行磁带备份:0 不备份
第6列:是否检查文件系统:0 不检查

配置好文件后需要使用如下命令检查尝试挂载 /etc/fstab 中定义的所有文件系统

mount -a

 正确的话没有任何反应,错误则会有提示弹出,现在使用lsblk命令即可看到挂载信息。

方法二 ——/etc/rc.d/rc.local

[root@localhost ~]# lsblk -f
NAME            FSTYPE      LABEL           UUID                                   MOUNTPOINT
sda                                                                                
├─sda1          xfs                         fffa4c7e-08bd-4884-bc0c-bfb9687e97d7   /boot
└─sda2          LVM2_member                 4wm0hN-R1oK-oZMf-yqui-clNU-9CFn-2bRWFs 
  ├─centos-root xfs                         408aebe7-55d2-4135-8482-7dee657d5f94   /
  └─centos-swap swap                        c2913040-eb2a-4b86-b6da-8e7affe87bfc   [SWAP]
sdb                                                                                
├─sdb1          ext4                        522c00e2-daff-4af8-8f0d-12dff383a1aa   /mnt/dir1
├─sdb2                                                                             
└─sdb5          ext4                        fed97c01-89bd-4402-bbf4-051e01f7f7b9   
sdc                                                                                
├─sdc1          ext4                        4ff8527c-09f3-4cb2-8738-e014c5667dce   /mnt/dire1
└─sdc2          xfs                         01e80b67-e911-41f5-9cc2-7377473e0a0f   
sr0             iso9660     CentOS 7 x86_64 2020-11-03-14-55-29-00                 
[root@localhost ~]# vim /etc/rc.d/rc.local

#!/bin/bash
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
#
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file.
#
# In contrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services.
#
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot.

touch /var/lock/subsys/local        #这个本身就有,不用管
#这个可有可无,这个利用文件是每次开启必须加载的原理来记录开启时间,并写入到日志里
date >> /tmp/host_start.txt
mount /dev/sdc2 /mnt/dire2         #挂载命令
~                       



[root@localhost ~]# chmod +x /etc/rc.d/rc.local #添加执行权限
[root@localhost ~]# reboot      #重启系统                             

 总结:

 可以看到,上面我是用方法一的配置文件配置sdc1区,使用方法二配置sdc2区,在重启后就已经生效

WARNING! The remote SSH server rejected X11 forwarding request.
Last login: Wed May  1 00:03:45 2024 from 192.168.226.1
[root@localhost ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   20G  0 disk 
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   19G  0 part 
  ├─centos-root 253:0    0   17G  0 lvm  /
  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sdb               8:16   0   20G  0 disk 
├─sdb1            8:17   0   10G  0 part 
├─sdb2            8:18   0    1K  0 part 
└─sdb5            8:21   0    3G  0 part 
sdc               8:32   0   20G  0 disk 
├─sdc1            8:33   0    5G  0 part /mnt/dire1
└─sdc2            8:34   0   15G  0 part /mnt/dire2
sr0              11:0    1  973M  0 rom  
[root@localhost ~]# 

/etc/fstab 中配置挂载点时,配置的更改可以立即生效,而无需重启系统。要使更改生效,可以使用 mount -a 命令,该命令会尝试挂载 /etc/fstab 中定义的所有文件系统。

在/etc/rc.d/rc.local中配置挂载命令时,必须要重启才可生效,所以我们更推荐使用专业的配置文件去管理。

下篇:Liunx磁盘管理(下)-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/599516.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【C 数据结构-动态内存管理】2. 边界标识法管理动态内存

文章目录 【 1. 边界标识法的结构设计 】【 2. 分配算法 】【 3. 回收算法 】3.1 空闲块两侧是占用块3.2 空闲块左侧是空闲块3.3 空闲块右侧是空闲块3.3 空闲块两侧是空闲块 边界标识法 可以解决系统中内存碎片过多而无法使用的问题。 【 1. 边界标识法的结构设计 】 使用边界…

绘唐ai工具怎么获取

这款产品的最大亮点在于其高度精准的语音克隆能力&#xff0c;利用先进的模型&#xff0c;能够捕捉到用户独特的音调、音高和调制方式&#xff0c;使用户能够以前所未有的方式复制和利用自己的声音。仅需10秒钟的录制时间&#xff0c;即可实现声音的克隆&#xff0c;相当便捷。…

Spring Cloud 整合Sentinel

1、引入依赖 版本说明 alibaba/spring-cloud-alibaba Wiki GitHub 父pom <spring.cloud.version>Hoxton.SR12</spring.cloud.version> <spring.cloud.alibaba.version>2.2.10-RC1</spring.cloud.alibaba.version>Sentinel应用直接引用starter <…

基于FPGA的数字密码锁电路Verilog代码Quartus仿真

名称&#xff1a;基于FPGA的数字密码锁电路Verilog代码Quartus仿真(文末获取&#xff09; 软件&#xff1a;Quartus 语言&#xff1a;Verilog 代码功能&#xff1a; 数字密码锁电路的设计 1.设计任务:设计并制作数字密码锁电路 2.设计要求 1.用EDA实训仪的I/设备和PLD志…

纯血鸿蒙APP实战开发——折叠屏扫描二维码方案

折叠屏扫描二维码方案 介绍 本示例介绍使用自定义界面扫码能力在折叠屏设备中实现折叠态切换适配。自定义界面扫码使用系统能力customScan&#xff0c;其提供相机流的初始化、启动扫码、识别、停止扫码、释放相机流资源等能力。折叠屏折叠状态通过监听display的foldStatusCha…

Hive3.0新特性:Materialized Views 物化视图

Materialized Views 物化视图 在 Apache Hive 3.0 中引入了物化视图&#xff08;Materialized Views&#xff09;的支持&#xff0c;它们是预先计算并缓存了查询结果的数据结构&#xff0c;以提高查询性能和降低延迟。物化视图通过将查询的结果存储在物理表中来实现&#xff0…

深入理解指针1

目录 如对您有帮助&#xff0c;还望三连支持&#xff0c;谢谢&#xff01;&#xff01;&#xff01; 1.内存和地址 计算机中常⻅的单位&#xff08;补充&#xff09;&#xff1a; 如何理解编址 2.指针变量和地址 2.1取地址操作符&#xff08;&&#xff09; 2.2指针变…

数据结构学不会?数据结构可视化网站来了

目录 前言 图码网站 算法可视化 算法编辑器 数据结构全书 数据结构课程 总结 前言 数据结构与算法在计算机的学习中应该是许多小白最头疼的东西&#xff0c;明明听的时候那么容易&#xff0c;为什么转换成代码就那么抽象呢&#xff1f; 有没有一个网站可以数据结构与算…

【RabbitMQ 三】Java客户端开发

本文引用的代码源自《RabbitMQ实战指南》 关键的类和接口主要有Channel、Connection、ConnectionFactory、Consumer等&#xff0c;它们主要的作用如下&#xff1a; Channel&#xff1a;实现AMQP协议层的操作Connection&#xff1a;开启信道&#xff08;Channel&#xff09;、注…

k8s集群统一设置时间

1 安装时间同步需要软件 yum install -y ntpdate2 设置时间 2.1 手动设置时间 date -s "20190712 18:30:50" hwclock --systohc2.2 在线更新时间 ntpdate 0.asia.pool.ntp.org # 强制把系统时间写入CMOS clock -w3 强制把系统时间写入CMOS hwclock作用与clock相…

【复杂网络】如何用简易通俗的方式快速理解什么是“相对重要节点挖掘”?

什么是相对重要节点&#xff1f; 一、相对重要节点的定义二、如何区分相对重要节点与重要节点&#xff1f;1. 相对重要性与节点相似性2. 识别相对重要节点的两个阶段第一阶段&#xff1a;个体重要性值的计算第二阶段&#xff1a;累积重要性值的计算 三、经典的相对重要节点挖掘…

08 - 条件判断语句

---- 整理自狄泰软件唐佐林老师课程 文章目录 1. 条件判断语句2. 语法说明3. 经验4. 代码 1. 条件判断语句 makefile 中支持条件判断语句 可以根据条件的值来决定 make 的执行可以比较两个不同变量或者变量和常量的值 注&#xff1a;条件判断语句只能用于控制 make 实际执行的…

探索大模型能力--prompt工程

1 prompt工程是什么 1.1 什么是Prompt&#xff1f; LLM大语言模型终究也只是一个工具&#xff0c;我们不可能每个人都去训一个大模型&#xff0c;但是我们可以思考如何利用好大模型&#xff0c;让他提升我们的工作效率。就像计算器工具一样&#xff0c;要你算10的10倍&#x…

今天看到一个有意思的问题:个人网站被恶意大量访问,怎么办(文末附GPT指令优化)

目录 问题描述 一、GPT 3.5 二、通义千问 三、讯飞星火 四、文心一言 五、Kimi 六、智谱清言 个人分析&#xff1a; 问题描述 大家好&#xff01;我的个人网站每天晚上7点30到11点被固定的十几个IP大量下载exe&#xff0c;造成网站带宽不够&#xff0c;怎么办! 已经把…

大模型系列之解读MoE

Mixtral 8x7B 的推出&#xff0c; 使我们开始更多地关注 基于MoE 的大模型架构&#xff0c; 那么&#xff0c;什么是MoE呢&#xff1f; 1. MoE溯源 MoE的概念起源于 1991 年的论文 Adaptive Mixture of Local Experts&#xff08;https://www.cs.toronto.edu/~hinton/absps/jjn…

如何在Android设备上恢复丢失的照片

Android手机或平板电脑上的照片丢失了&#xff1f;不要惊慌&#xff0c;您也许可以恢复它们。 由于我们的大量数据和日常生活都存储在一台设备上&#xff0c;有时将所有照片存储在本地的 Android 智能手机或平板电脑上可能是一项冒险的工作。无论是通过事故&#xff08;损坏、…

python数据分析常用基础语法

Python语言基础——语法基础 前言一、变量的介绍与使用变量的介绍变量命名规则变量的使用拓展 二、标识符标识符命名命名规则注意事项 三、数据类型数据类型的介绍数据类型的查看示例 四、输入与输出输入和输出的介绍format格式化输出占位符 五、代码缩进与注释代码缩进 前言 …

最高20K/月,安全、数通、云计算多个方向急招,可内推!

高级安全工程师【岗位职责及要求】 1、统筹负责行业客户的安全项目交付&#xff0c;能够独自输出技术方案并完成施&#xff0c;并具备指导初中级工程师实施的能力&#xff1b; 2、掌握H3C全系列安全产品功能并对全系列产品原理有深入了解&#xff0c;能够熟练完成安全产品规划及…

如何找到台式电脑的ip地址

在数字时代&#xff0c;每台接入网络的设备都拥有一个独特的标识&#xff0c;这就是IP地址。无论是手机、笔记本电脑还是台式电脑&#xff0c;IP地址都扮演着至关重要的角色&#xff0c;它帮助设备在网络世界中定位并与其他设备进行通信。对于许多电脑用户来说&#xff0c;了解…

RK3576芯片规格,以及与RK3588对比

瑞芯微RK3576是一款高性能、低功耗的SoC&#xff08;系统级芯片&#xff09;处理器&#xff0c;适用于基于ARM的PC、边缘计算设备、个人移动互联网设备等多种应用场景。它采用Arm架构的八核心CPU&#xff0c;集成了GPU、MCU、NPU、VPU等多种计算核心&#xff0c;并具有丰富的外…
最新文章