【问题标题】:Unable to mount EBS volume on Ubuntu EC2无法在 Ubuntu EC2 上挂载 EBS 卷
【发布时间】:2021-05-09 16:54:34
【问题描述】:

我似乎不知道如何使用Amazon's instructions 将 EBS 卷安装到 Ubuntu EC2 实例。有人可以帮帮我吗?

~$ lsblk
NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0  16G  0 disk 
└─xvda1 202:1    0  16G  0 part /

~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            492M   12K  492M   1% /dev
tmpfs           100M  340K   99M   1% /run
/dev/xvda1       16G  7.2G  7.8G  48% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
none            5.0M     0  5.0M   0% /run/lock
none            497M     0  497M   0% /run/shm
none            100M     0  100M   0% /run/user

~$ sudo file -s /dev/xvda
/dev/xvda: x86 boot sector

~$ sudo file -s /dev/xvda1
/dev/xvda1: Linux rev 1.0 ext4 filesystem data, UUID=da85f42e-5e55-40d1-95da-dea139db0d7f, volume name "cloudimg-rootfs" (needs journal recovery) (extents) (large files) (huge files)

~$ sudo mkfs -t ext4 /dev/xvda
mke2fs 1.42.9 (4-Feb-2014)
/dev/xvda is apparently in use by the system; will not make a filesystem here!

~$ sudo mkdir /data

~$ sudo mount /dev/xvda /data
mount: /dev/xvda already mounted or /data busy

【问题讨论】:

    标签: amazon-web-services ubuntu amazon-ec2


    【解决方案1】:

    您似乎有一个磁盘xvda 和一个分区xvda1。分区/dev/xvda1 已安装在/。由于您只有一个带有一个分区的磁盘作为根卷挂载,因此此时您确实无能为力。您是否尝试将第二个 EBS 卷添加到您的 EC2 实例?如果是这样,您需要先将其附加到实例,然后查找它以显示在 lsblk 输出中。

    【讨论】:

    • 啊,好吧——说得通,@mark-b。我是 EC2/EBS 的新手,所以我对亚马逊的说明有点迷茫。据我了解,使用 EBS 的好处之一是,如果我需要更改实例类型,我不会丢失数据,但我不明白哪个目录将保存到 EBS,因为它是一个分区。我的数据存储在 /home/ubuntu/ 中。如果我更改实例类型,该数据会保存吗?
    • 当前实例类型是什么?
    【解决方案2】:

    这里有一个 Amazon Linux 2 的脚本,您可以在使用 yum 评论 raw 时尝试为 Ubuntu 重新创建:

    #!/bin/bash
    sudo yum -y update
    sudo yum -y upgrade
    
    # Format and mount an attached volume
    DEVICE=/dev/$(lsblk -rno NAME | awk 'FNR == 3 {print}')
    MOUNT_POINT=/data/
    mkdir $MOUNT_POINT
    yum -y install xfsprogs
    mkfs -t xfs $DEVICE
    mount $DEVICE $MOUNT_POINT
    
    # Automatically mount an attached volume after reboot / For the current task it's not obligatory
    cp /etc/fstab /etc/fstab.orig
    UUID=$(blkid | grep $DEVICE | awk -F '\"' '{print $2}')
    echo -e "UUID=$UUID     $MOUNT_POINT      xfs    defaults,nofail   0   2" >> /etc/fstab
    umount /data
    mount -a
    
    # Change user for data operations / Non mandatory
    chown -R ec2-user:ec2-user $MOUNT_POINT
    
    

    来自here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-12
      • 1970-01-01
      • 2021-11-06
      • 2010-09-24
      • 2012-03-10
      • 1970-01-01
      • 2015-11-10
      • 1970-01-01
      相关资源
      最近更新 更多