在fstab文件中配置UUID方式自动挂载数据盘、swap、目录(**)

2024-03-25 17:04

本文主要是介绍在fstab文件中配置UUID方式自动挂载数据盘、swap、目录(**),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

linux如何挂在硬盘,自动挂载和手动挂载(详细说明)https://gitcode.csdn.net/65eedcea1a836825ed7a06f4.html

解决linux重启后磁盘挂载失效的问题  https://blog.csdn.net/sugarbliss/article/details/107033034

linux /etc/fstab 文件详细说明(整理版) https://blog.csdn.net/xiaolongwang2010/article/details/8657332

在fstab文件中配置UUID方式自动挂载数据盘中fstab配置详解说明  https://www.ctyun.cn/developer/article/456393921687621

mount挂载 fstab swap  https://www.cnblogs.com/liuzhiyun/p/11345281.html

--------------------------------------------------------------

linux:fstab 文件格式检查  https://blog.csdn.net/ken2232/article/details/136106660

--------------------------------------------------------------

关联参考:
mount --bind :目录挂载 (**)  https://blog.csdn.net/ken2232/article/details/136937678

--------------------------------------------------------------

多重挂载问题

fstab的挂载顺序问题  https://forum.ubuntu.com.cn/viewtopic.php?t=382618

The order of records in fstab is important because fsck(8), mount(8), and umount(8) sequentially iterate through fstab doing their thing. 

引用man,确实应该是按照fstab顺序挂载的。

刚才试了试,还是不行,只能挂载上某一个,可能和我需要多次挂载同一分区有关

帖子 由 Nile » 2012-07-30 14:53
解决了……
多重挂载时会多次fsck这个分区,而fsck只能检查未挂载的分区,所以就出问题了

解决方法:就是只将第一次挂载时的pass设为2,其它的设为0,这样就不会fsck已挂载分区了

<file system>   <dir>   <type>  <options>       <dump>  <pass>

<pass> fsck检查文件系统的优先级。

  • 0:表示不检查文件系统。

  • 1:如果需要检查,根目录(/)对应的文件系统设置为1。

  • 2:如果需要检查,非根目录对应的其他文件系统设置为2。

一般情况下,可以设置为0。

  https://blog.csdn.net/yu132563/article/details/50293019

    # <fs>            <mountpoint>    <type>        <opts>        <dump/pass>
     
    # NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.
     
    /dev/sda10        /boot            ext4        noauto,noatime    1 2
    /dev/sda6         /                ext4        noatime           0 1
    /dev/sda9         none             swap        sw                0 0
    /dev/cdrom        /mnt/cdrom       auto        noauto,ro         0 0

隐含了挂载的顺序 ?

<pass> 1 :首先挂载 /dev/sda6  “/”

<pass>2 :其次挂载  /dev/sda10  “/boot”

<pass>0 :其最后挂载:多个均为 0,此时,有时什么顺序呢?从上到下,还是反之?

What do the last two fields in fstab mean?  https://askubuntu.com/questions/9939/what-do-the-last-two-fields-in-fstab-mean

@chx101 see here: superuser.com/questions/247523/… -- short answer is that 'dump' seems to be rarely used anymore, so you would almost always expect this to be zero.

The second number is used by the more widely used fsck to check the filesystem, and if so in what order (root should be 1, rest should increment, or zero to skip checking the filesystem)

– pzkpfw

Mar 7, 2022 at 12:17

--------------------------------------------------------------

获取 UUID 的方法

1. ls -l /dev/disk/by-uuid

2. sudo blkid

3. df -h

4. 。。。。。。

  https://wiki.ubuntu.com.cn/UbuntuHelp:Fstab/zh

## fstab 文件

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/nvme0n1p2 during installation
UUID=36b290a4-752c-4e3a-83ae-1ab7a68c3868 /               ext4    errors=remount-ro 0       1

#

第1列是设备名或者卷标
第2列是挂载点(也就是挂载目录)
第3列是所要挂载设备的文件系统或者文件系统类型
第4列是挂载选项,通常使用defaults就可以
第5列设置是否使用dump备份,置0为不备份,置1,2为备份,但2的备份重要性比1小
第6列设置是否开机的时候使用fsck检验所挂载的磁盘,置0为不检验,置1,2为检验,但置2盘比置1的盘晚检验。

说明:

当有多块磁盘时,/dev/sdb 这类的标识方法,伴随着硬盘与硬盘接口的交换,而改变。

而 UUID  https://zhuanlan.zhihu.com/p/438580928

UUID的组成

UUID是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。

~$ man fstab

   The sixth field (fs_passno).
       This field is used by fsck(8) to determine the order in which filesystem checks are done at boot time.
       The root filesystem should be specified with a fs_passno of 1.

       Other filesystems should have a fs_passno of 2.

       Filesystems within a drive will be checked sequentially,

       but filesystems on different drives will be checked at the same time to utilize (利用;运用;使用;应用)parallelism(平行结构) available in the hardware.
       Defaults to zero (don’t check the filesystem) if not present.

非默认文件系统类型的挂载

https://gitcode.csdn.net/65eedcea1a836825ed7a06f4.html

    运行以下命令挂载硬盘:

sudo mount /dev/sdb1 /mnt/mydisk

其中 /dev/sdb1 是要挂载的设备,/mnt/mydisk 是挂载点。

    如果您的硬盘使用的是非默认文件系统类型,需要指定文件系统类型。例如,如果硬盘使用的是 ext4 文件系统:

sudo mount -t ext4 /dev/sdb1 /mnt/mydisk

在fstab文件中配置UUID方式自动挂载数据盘中fstab配置详解说明

  https://www.ctyun.cn/developer/article/456393921687621

在使用云硬盘的过程中,我们经常需要挂载数据盘,一种简单的方式是在fstab文件中配置UUID方式自动挂载数据盘。磁盘的UUID(Universally Unique Identifier)是Linux系统为磁盘分区提供的唯一的标识字符串。

在Linux系统中,如果您需要在云主机系统启动时自动挂载磁盘,不能采用在/etc/fstab直接指定 /dev/vdb1的方法,因为云中设备的顺序编码在关闭或者开启云主机过程中可能发生改变,例如/dev/vdb5可能会变成/dev/vdb5。推荐使用UUID来配置自动挂载数据盘。

具体步骤为:

  • 查询磁盘分区信息。
  • 修改fstab文件。
  • 验证配置是否生效。

今天这篇文章基详细介绍FSTAB文件中所需配置的命令,您可根据您的需求按需调整参数配置:

32.png

/etc/fstab 包含以下字段,由空格或制表符分隔:

<file system>   <dir>   <type>  <options>       <dump>  <pass>
  • <文件系统> - 定义存储设备(即 /dev/sda1)。
  • <dir> - 告诉挂载命令应将<文件系统>挂载到的位置。
  • <type> - 定义要挂载的设备或分区的文件系统类型。支持许多不同的文件系统。一些例子是:ext2,ext3,reiserfs,xfs,jfs,smbfs,iso9660,vfat,ntfs,swap和auto。“auto”类型允许挂载命令尝试猜测使用的文件系统类型,这对于 CD 和 DVD 等可移动设备很有用。
  • <选项> - 为文件系统定义特定选项。某些选项仅与文件系统本身相关。一些更常见的选项是:
    • auto - 文件系统将在引导时自动挂载,或者在发出命令“mount -a”时自动挂载。
    • noauto - 文件系统仅在您告诉它时才挂载。
    • exec - 允许该分区上的执行二进制文件(默认)。
    • noexec - 不允许在文件系统上执行二进制文件。
    • ro - 以只读方式挂载文件系统。
    • RW - 挂载文件系统读写。
    • 同步 - I/O 应同步完成。
    • 异步 - I/O 应异步完成。
    • flush - FAT的特定选项,用于更频繁地刷新数据,从而使复制对话框或进度条保持运行状态,直到磁盘上有内容为止。
    • user - 允许任何用户挂载文件系统(意味着noexec,nosuid,nodev,除非被覆盖)。
    • nouser - 只允许 root 挂载文件系统(默认)。
    • 默认值 - 默认挂载设置(相当于 RW、SUID、DEV、EXEC、AUTO、NOUSER、ASYNC)。
    • SUID - 允许操作 SUID 和 SGID 位。它们主要用于允许计算机系统上的用户以临时提升的权限执行二进制可执行文件,以便执行特定任务。
    • Nosuid - 阻止 suid 和 sgid 位的操作。
    • NOATIME - 不要更新文件系统上的 inode 访问时间。可以帮助性能。
    • nodiratime - 不更新文件系统上的目录索引节点访问时间。可以帮助性能。如果您已启用 noatime,则无需启用此标志。
    • Relatime - 相对于修改或更改时间更新索引节点访问时间。仅当上一次访问时间早于当前修改或更改时间(类似于 noatime,但不会破坏 mutt 或其他需要知道自上次修改文件以来是否已被读取的应用程序)时,才会更新访问时间。可以帮助性能。
  • <dump> - 由 dump 实用程序用来决定何时进行备份。安装后,dump 会检查条目并使用编号来决定是否应备份文件系统。可能的条目为 0 和 1。
    如果为 0,转储将忽略文件系统,如果为 1,转储将进行备份。
    大多数用户不会安装转储,因此他们应该为 <dump> 条目输入 0。
  • <pass>fsck 读取 <pass> 编号并确定应按哪个顺序检查文件系统。可能的条目为 0、1 和 2。
    根文件系统应具有最高优先级 1,您要检查的所有其他文件系统应为 2。fsck 实用程序不会检查值为 <pass> 的文件系统。

在fstab文件中配置UUID方式自动挂载数据盘 (**)

  https://help.aliyun.com/zh/ecs/use-cases/configure-uuids-in-the-fstab-file-to-automatically-attach-data-disks

在Linux系统中,您可以通过在fstab文件中使用UUID(Universally Unique Identifier)方式标识文件系统,以确保即使云盘的挂载顺序发生变化仍然可以正确地自动挂载数据盘,从而解决挂载顺序变更导致ECS重启后无法正常运行的问题。本文介绍如何在fstab文件中配置UUID方式自动挂载数据盘的文件系统。

说明

fstab支持使用云盘分区名(例如/dev/vdb1)或UUID标识文件系统,两者的差异如下所示:

  • 在fstab中使用云盘分区名标识文件系统,如果云盘的挂载顺序变更,云盘分区可能不会被正确地挂载(mount)到原来的挂载点。这种情况下可能会影响您在ECS上运行的应用。

  • 在fstab中使用UUID标识文件系统,如果云盘的挂载顺序变更,云盘分区仍然可以正确地挂载(mount)到原来的挂载点。因此,本文建议使用UUID标识文件系统。

前提条件

挂载到实例的数据盘已经完成初始化。具体操作,请参见初始化小于等于2 TiB数据盘(Linux)或者初始化大于2 TiB数据盘。

操作步骤

本操作以实例的两块数据盘/dev/vdc(分区/dev/vdc1)和/dev/vdd(分区/dev/vdd1)为例,请您根据环境进行操作。

  1. 远程连接ECS实例。

    具体操作,请参见通过密码或密钥认证登录Linux实例。

  2. 运行以下命令,查看实例的云盘信息。

    sudo fdisk -lu

    运行结果如下所示。

    image.png

  3. 运行以下命令,查询数据盘的UUID信息。

    sudo blkid

    运行结果如下所示。

    image.png

  4. (条件必选)如果没有可用的挂载目录,运行以下命令,分别为数据盘分区创建挂载点。

    您也可以将目标数据盘挂载到已有目录下,无需创建新的挂载点,本示例以新建挂载点为例。

    • 创建/dev/vdc1分区的挂载点/test01:

      sudo mkdir /test01
    • 创建/dev/vdd1分区的挂载点/test02:

      sudo mkdir /test02
  5. 在fstab文件中添加数据盘分区的挂载信息。

    1. 运行以下命令,编辑fstab。

      sudo vi /etc/fstab
    2. i键进入编辑模式。

    3. 新增以下挂载信息。

      UUID=d18698d2-61ea-4992-a8a9-26ee214e****   /test01     ext4    defaults     0   0
      UUID=6c5b3eea-930f-477d-abc6-42aa413d****   /test02     xfs     defaults     0   0

      结果如下所示。

      image.png

      序号

      字段

      说明

      <file system>

      要挂载分区的文件系统。

      此处建议使用UUID,可以使用blkid命令查询分区文件系统的UUID。

      <dir>

      文件系统的挂载位置。

      您可以自己创建新的挂载位置,例如本文中创建的/test01和/test02。

      <type>

      要挂载分区的文件系统类型。

      您可以使用blkid命令查询分区的文件系统类型。

      <options>

      挂载时使用的参数,一般情况下使用defaults参数。如果需要使用多个参数,通过英文逗号(,)分隔,例如defaults,noatime

      • 对于<options>参数的更多说明,请参见fstab说明。

      • 选择不同的挂载参数可以满足您对文件系统的数据安全性以及性能的要求。更多信息,请参见使用mount命令挂载ext4文件系统。

      <dump>

      dump工具是否对这个文件系统进行备份。

      • 0:表示忽略。

      • 1:表示进行备份。

      一般情况下不使用dump工具,可以设置为0。

      <pass>

      fsck检查文件系统的优先级。

      • 0:表示不检查文件系统。

      • 1:如果需要检查,根目录(/)对应的文件系统设置为1。

      • 2:如果需要检查,非根目录对应的其他文件系统设置为2。

      一般情况下,可以设置为0。

    4. 修改完成后,按Esc键退出编辑模式。

    5. 输入:wq后,按Enter键保存并退出。

  6. 运行以下命令,查看fstab文件。

    cat /etc/fstab

    执行结果如下所示。

    image.png

  7. (条件必选)运行以下命令,挂载数据盘分区的文件系统。

    • 挂载/dev/vdc1:

      sudo mount /dev/vdc1 /test01
    • 挂载/dev/vdd1:

      sudo mount /dev/vdd1 /test02
  8. 运行以下命令,检查挂载结果。

    df -h

    执行结果如下所示。

    image.png

配置完成后,如果您后续重启ECS实例,系统将自动挂载数据盘。

linux如何挂在硬盘,自动挂载和手动挂载(详细说明)

请注意,在手动挂载后,如果系统重新启动,挂载将会丢失。如果您希望在每次启动时都自动挂载硬盘,请参考自动挂载部分的步骤,并将相关信息添加到。在Linux中,您可以使用自动挂载和手动挂载的方法来挂载硬盘。文件中添加一行,指定要挂载的设备、挂载点、文件系统类型以及其他选项。现在,硬盘已经手动挂载到指定的挂载点。创建一个用于挂载的目录。可以选择任意目录作为挂载点,例如。可以选择任意目录作为挂载点,例如。目

​编辑 连界优站  ·  2023-07-13 16:26:31 发布

在Linux中,您可以使用自动挂载和手动挂载的方法来挂载硬盘。下面我会详细说明这两种方法:

自动挂载:

  1. 确保您的硬盘已经正确连接到Linux系统,并且系统已经识别并分配了设备名称(如 /dev/sdb1)。

  2. 创建一个用于挂载的目录。可以选择任意目录作为挂载点,例如 /mnt/mydisk

  3. 打开终端,编辑 /etc/fstab 文件。使用 root 或具有管理员权限的用户进行操作。

  4. /etc/fstab 文件中添加一行,指定要挂载的设备、挂载点、文件系统类型以及其他选项。例如:

/dev/sdb1  /mnt/mydisk  ext4  defaults  0  0

这行表示将 /dev/sdb1 设备挂载到 /mnt/mydisk 目录,文件系统类型为 ext4,并使用默认的挂载选项。

  1. 保存并关闭 /etc/fstab 文件。

  2. 运行以下命令,使更改生效:

sudo mount -a

这将使 /etc/fstab 中定义的所有项都进行挂载。

现在,每当系统启动时,硬盘将自动挂载到指定的挂载点。

手动挂载:

  1. 打开终端。

  2. 创建一个用于挂载的目录。可以选择任意目录作为挂载点,例如 /mnt/mydisk

  3. 运行以下命令挂载硬盘:

sudo mount /dev/sdb1 /mnt/mydisk

其中 /dev/sdb1 是要挂载的设备,/mnt/mydisk 是挂载点。

  1. 如果您的硬盘使用的是非默认文件系统类型,需要指定文件系统类型。例如,如果硬盘使用的是 ext4 文件系统:
sudo mount -t ext4 /dev/sdb1 /mnt/mydisk

现在,硬盘已经手动挂载到指定的挂载点。如果您想要解除挂载,可以运行以下命令:

sudo umount /mnt/mydisk

请注意,在手动挂载后,如果系统重新启动,挂载将会丢失。如果您希望在每次启动时都自动挂载硬盘,请参考自动挂载部分的步骤,并将相关信息添加到 /etc/fstab 文件中。

 解决linux重启后磁盘挂载失效的问题

  https://blog.csdn.net/sugarbliss/article/details/107033034

用mount挂载分区之后重启就没有了,原因是因为这个挂载是临时的,而不是永久的。磁盘Linux分区都必须挂载到目录树中的某个具体的目录上才能进行读写操作,然而在linux操作系统中fstab正是负责这一配置的。在开机的时候linux操作系统会调用fstab配置文件,根据该配置文件挂载分区到操作系统的。这是重启后挂载的分区丢失的根本原因,所以我们只需要修改/etc/fstab文件就能解决这个问题。

一、用df -Th命令查看你要挂载的磁盘信息

第一列是你要挂载的设备,第二列是文件系统类型,最后一列是挂载点,这几个后面要用到;

二、vi /etc/fstab命令,进入后再添加一列

三、在修改/etc/fstab文件后,运行mount -a命令验证一下配置是否正确

 执行mount -a命令后,用df -h查看会发现磁盘已经挂载成功,说明输入没有错误。下次重启的时候系统就可以自动进行挂载了。完结撒花!

原文链接:https://blog.csdn.net/sugarbliss/article/details/107033034

这篇关于在fstab文件中配置UUID方式自动挂载数据盘、swap、目录(**)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/845657

相关文章

Python使用Pandas对比两列数据取最大值的五种方法

《Python使用Pandas对比两列数据取最大值的五种方法》本文主要介绍使用Pandas对比两列数据取最大值的五种方法,包括使用max方法、apply方法结合lambda函数、函数、clip方法、w... 目录引言一、使用max方法二、使用apply方法结合lambda函数三、使用np.maximum函数

shell脚本自动删除30天以前的文件(最新推荐)

《shell脚本自动删除30天以前的文件(最新推荐)》该文章介绍了如何使用Shell脚本自动删除指定目录下30天以前的文件,并通过crontab设置定时任务,此外,还提供了如何使用Shell脚本删除E... 目录shell脚本自动删除30天以前的文件linux按照日期定时删除elasticsearch索引s

spring-boot-starter-thymeleaf加载外部html文件方式

《spring-boot-starter-thymeleaf加载外部html文件方式》本文介绍了在SpringMVC中使用Thymeleaf模板引擎加载外部HTML文件的方法,以及在SpringBoo... 目录1.Thymeleaf介绍2.springboot使用thymeleaf2.1.引入spring

Debezium 与 Apache Kafka 的集成方式步骤详解

《Debezium与ApacheKafka的集成方式步骤详解》本文详细介绍了如何将Debezium与ApacheKafka集成,包括集成概述、步骤、注意事项等,通过KafkaConnect,D... 目录一、集成概述二、集成步骤1. 准备 Kafka 环境2. 配置 Kafka Connect3. 安装 D

linux下多个硬盘划分到同一挂载点问题

《linux下多个硬盘划分到同一挂载点问题》在Linux系统中,将多个硬盘划分到同一挂载点需要通过逻辑卷管理(LVM)来实现,首先,需要将物理存储设备(如硬盘分区)创建为物理卷,然后,将这些物理卷组成... 目录linux下多个硬盘划分到同一挂载点需要明确的几个概念硬盘插上默认的是非lvm总结Linux下多

Springboot中分析SQL性能的两种方式详解

《Springboot中分析SQL性能的两种方式详解》文章介绍了SQL性能分析的两种方式:MyBatis-Plus性能分析插件和p6spy框架,MyBatis-Plus插件配置简单,适用于开发和测试环... 目录SQL性能分析的两种方式:功能介绍实现方式:实现步骤:SQL性能分析的两种方式:功能介绍记录

SQL 中多表查询的常见连接方式详解

《SQL中多表查询的常见连接方式详解》本文介绍SQL中多表查询的常见连接方式,包括内连接(INNERJOIN)、左连接(LEFTJOIN)、右连接(RIGHTJOIN)、全外连接(FULLOUTER... 目录一、连接类型图表(ASCII 形式)二、前置代码(创建示例表)三、连接方式代码示例1. 内连接(I

Android里面的Service种类以及启动方式

《Android里面的Service种类以及启动方式》Android中的Service分为前台服务和后台服务,前台服务需要亮身份牌并显示通知,后台服务则有启动方式选择,包括startService和b... 目录一句话总结:一、Service 的两种类型:1. 前台服务(必须亮身份牌)2. 后台服务(偷偷干

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

最长公共子序列问题的深度分析与Java实现方式

《最长公共子序列问题的深度分析与Java实现方式》本文详细介绍了最长公共子序列(LCS)问题,包括其概念、暴力解法、动态规划解法,并提供了Java代码实现,暴力解法虽然简单,但在大数据处理中效率较低,... 目录最长公共子序列问题概述问题理解与示例分析暴力解法思路与示例代码动态规划解法DP 表的构建与意义动