在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

相关文章

使用Java解析JSON数据并提取特定字段的实现步骤(以提取mailNo为例)

《使用Java解析JSON数据并提取特定字段的实现步骤(以提取mailNo为例)》在现代软件开发中,处理JSON数据是一项非常常见的任务,无论是从API接口获取数据,还是将数据存储为JSON格式,解析... 目录1. 背景介绍1.1 jsON简介1.2 实际案例2. 准备工作2.1 环境搭建2.1.1 添加

MySQL中删除重复数据SQL的三种写法

《MySQL中删除重复数据SQL的三种写法》:本文主要介绍MySQL中删除重复数据SQL的三种写法,文中通过代码示例讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下... 目录方法一:使用 left join + 子查询删除重复数据(推荐)方法二:创建临时表(需分多步执行,逻辑清晰,但会

Java实现任务管理器性能网络监控数据的方法详解

《Java实现任务管理器性能网络监控数据的方法详解》在现代操作系统中,任务管理器是一个非常重要的工具,用于监控和管理计算机的运行状态,包括CPU使用率、内存占用等,对于开发者和系统管理员来说,了解这些... 目录引言一、背景知识二、准备工作1. Maven依赖2. Gradle依赖三、代码实现四、代码详解五

C#读取本地网络配置信息全攻略分享

《C#读取本地网络配置信息全攻略分享》在当今数字化时代,网络已深度融入我们生活与工作的方方面面,对于软件开发而言,掌握本地计算机的网络配置信息显得尤为关键,而在C#编程的世界里,我们又该如何巧妙地读取... 目录一、引言二、C# 读取本地网络配置信息的基础准备2.1 引入关键命名空间2.2 理解核心类与方法

Springboot的ThreadPoolTaskScheduler线程池轻松搞定15分钟不操作自动取消订单

《Springboot的ThreadPoolTaskScheduler线程池轻松搞定15分钟不操作自动取消订单》:本文主要介绍Springboot的ThreadPoolTaskScheduler线... 目录ThreadPoolTaskScheduler线程池实现15分钟不操作自动取消订单概要1,创建订单后

详谈redis跟数据库的数据同步问题

《详谈redis跟数据库的数据同步问题》文章讨论了在Redis和数据库数据一致性问题上的解决方案,主要比较了先更新Redis缓存再更新数据库和先更新数据库再更新Redis缓存两种方案,文章指出,删除R... 目录一、Redis 数据库数据一致性的解决方案1.1、更新Redis缓存、删除Redis缓存的区别二

Jsoncpp的安装与使用方式

《Jsoncpp的安装与使用方式》JsonCpp是一个用于解析和生成JSON数据的C++库,它支持解析JSON文件或字符串到C++对象,以及将C++对象序列化回JSON格式,安装JsonCpp可以通过... 目录安装jsoncppJsoncpp的使用Value类构造函数检测保存的数据类型提取数据对json数

Redis事务与数据持久化方式

《Redis事务与数据持久化方式》该文档主要介绍了Redis事务和持久化机制,事务通过将多个命令打包执行,而持久化则通过快照(RDB)和追加式文件(AOF)两种方式将内存数据保存到磁盘,以防止数据丢失... 目录一、Redis 事务1.1 事务本质1.2 数据库事务与redis事务1.2.1 数据库事务1.

Linux磁盘分区、格式化和挂载方式

《Linux磁盘分区、格式化和挂载方式》本文详细介绍了Linux系统中磁盘分区、格式化和挂载的基本操作步骤和命令,包括MBR和GPT分区表的区别、fdisk和gdisk命令的使用、常见的文件系统格式以... 目录一、磁盘分区表分类二、fdisk命令创建分区1、交互式的命令2、分区主分区3、创建扩展分区,然后

Linux中chmod权限设置方式

《Linux中chmod权限设置方式》本文介绍了Linux系统中文件和目录权限的设置方法,包括chmod、chown和chgrp命令的使用,以及权限模式和符号模式的详细说明,通过这些命令,用户可以灵活... 目录设置基本权限命令:chmod1、权限介绍2、chmod命令常见用法和示例3、文件权限详解4、ch