Присоединение и монтирование существующего тома EBS к проблеме файловой системы экземпляра EC2

46

У меня была некоторая неизвестная проблема с моим старым экземпляром EC2, так что я больше не могу его использовать. Поэтому я создал новый том EBS из моментального снимка старого тома и попытался подключить его и подключить к новому экземпляру. Вот что я сделал:

  • Создал новый том из моментального снимка старого.
  • Создал новый экземпляр EC2 и подключил его к нему как /dev/xvdf (или /dev/sdf)
  • SSHed в экземпляр и попытался установить старый том с помощью:

    $ sudo mkdir -m 000 /vol $ sudo mount /dev/xvdf /vol

И результат был:

mount: block device /dev/xvdf is write-protected, mounting read-only
mount: you must specify the filesystem type

Теперь я знаю, что я должен указать fileytem как ext4, но поскольку том содержит много важных данных, я не могу отформатировать его через $ sudo mkfs -t ext4 /dev/xvdf. Тем не менее, я не знаю другого способа сохранить данные и указать файловую систему одновременно. Я много искал об этом, и сейчас я в растерянности.

Кстати, установка как "только для чтения" также беспокоит меня, но я еще не изучил ее, так как я не могу установить громкость вообще.

Спасибо заранее!

Edit:

Когда я делаю sudo mount /dev/xvdf /vol -t ext4 (без форматирования), я получаю:

mount: wrong fs type, bad option, bad superblock on /dev/xvdf,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

И dmesg | tail дает мне:

[ 1433.217915] EXT4-fs (xvdf): VFS: Can't find ext4 filesystem
[ 1433.222107] FAT-fs (xvdf): bogus number of reserved sectors
[ 1433.226127] FAT-fs (xvdf): Can't find a valid FAT filesystem
[ 1433.260752] EXT4-fs (xvdf): VFS: Can't find ext4 filesystem
[ 1433.265563] EXT4-fs (xvdf): VFS: Can't find ext4 filesystem
[ 1433.270477] EXT4-fs (xvdf): VFS: Can't find ext4 filesystem
[ 1433.274549] FAT-fs (xvdf): bogus number of reserved sectors
[ 1433.277632] FAT-fs (xvdf): Can't find a valid FAT filesystem
[ 1433.306549] ISOFS: Unable to identify CD-ROM format.
[ 2373.694570] EXT4-fs (xvdf): VFS: Can't find ext4 filesystem
  • 0
    Я обновил свой ответ. Это работает для вас?
Теги:
amazon-web-services
amazon-ec2
amazon-ebs

5 ответов

66
Лучший ответ

Один вкладыш


Используйте эту команду для монтирования, если ваш тип файловой системы - ext4:

sudo mount /dev/xvdf /vol -t ext4

где:

  • /dev/xvdf изменен на установленный EBS том устройство
  • /vol изменен на папку, к которой вы хотите подключиться.
  • ext4 - тип файловой системы устанавливаемого тома

Команда mount неразрушающая, поэтому ее не следует путать с случайным переформатированием уже отформатированного объема EBS.

Если ваша EBS уже секционирована, используйте:

sudo mount /dev/xvdf1 /vol -t ext4


Общие ошибки. Как:


Список прикрепленных устройств

Проверьте команду mount для правильных EBS томов имен устройств и типов файловой системы. Ниже перечислены все они:

sudo lsblk --output NAME,TYPE,SIZE,FSTYPE,MOUNTPOINT,LABEL

Если ваш объем EBS отображается с прикрепленным partition, установите partition; а не на диске.

Если он не отображается, вы не Attach ваш EBS том в веб-консоли AWS


Автоматическая перезагрузка при перезагрузке

Эти устройства снова размонтируются, если экземпляр EC2 перезагружается.

Способ повторного монтирования при запуске - это отредактировать файл сервера, указанный ниже, и вставить только одну команду монтирования, которую вы первоначально использовали.

/etc/rc.local

(Поместите свое изменение выше exit 0, последняя строка в этом файле.)

  • 0
    Извините, забыл добавить это. Я отредактирую вопрос, можете ли вы увидеть результаты.
  • 0
    Команда mount, которую я дал в своем ответе, не перезаписывает вашу файловую систему Volume, поэтому вам не нужно беспокоиться о потере данных. Кроме того, будьте уверены, что если что-то пойдет не так ... вы можете просто заново создать новую копию тома из исходного снимка EBS, как вы это делали для создания тома в первую очередь. Сделайте мою команду монтирования, это не разрушительно. Я обещаю. И если вы воссоздаете новый том, убедитесь, что это не реплика только для чтения.
Показать ещё 6 комментариев
22

Я заметил, что по какой-то причине объем находился в /dev/xvdf1, а не /dev/xvdf.

Используя

sudo mount /dev/xvdf1 /vol -t ext4

работал как шарм

  • 1
    xvdf - это диск, xvdf1 - это раздел. Если диск уже разделен таким образом, необходимо смонтировать сам раздел.
12

Я тоже столкнулся с этой проблемой после добавления нового тома объемом 16 ГБ и привязки его к существующему экземпляру. Прежде всего, вам нужно знать, какие диски у вас есть Run

  sudo fdisk -l 

У вас будет вывод, похожий на тот, который показан ниже, с подробным описанием информации о ваших дисках (тома "

 Disk /dev/xvda: 12.9 GB, 12884901888 bytes
  255 heads, 63 sectors/track, 1566 cylinders, total 25165824 sectors
  Units = sectors of 1 * 512 = 512 bytes
  Sector size (logical/physical): 512 bytes / 512 bytes
  I/O size (minimum/optimal): 512 bytes / 512 bytes
  Disk identifier: 0x00000000

Device Boot      Start         End      Blocks   Id  System
/dev/xvda1   *       16065    25157789    12570862+  83  Linux

 Disk /dev/xvdf: 17.2 GB, 17179869184 bytes
 255 heads, 63 sectors/track, 2088 cylinders, total 33554432 sectors
 Units = sectors of 1 * 512 = 512 bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
 Disk identifier: 0x00000000

 Disk /dev/xvdf doesn't contain a valid partition table

Как вы можете видеть, недавно добавлен диск /dev/xvdf. Чтобы сделать его доступным, вам нужно создать на нем файловую систему и подключить ее к точке монтирования. Вы можете добиться этого с помощью следующих команд

 sudo mkfs -t ext4 /dev/xvdf

Создание новой файловой системы очищает все в объеме, поэтому сделайте это на новом томе без важных данных

Затем смонтируйте его, возможно, в каталоге в папке /mnt

 sudo mount /dev/xvdf /mnt/dir/

Подтвердите, что вы установили том в экземпляр, запустив

  df -h

Это то, что вам нужно

Filesystem      Size  Used Avail Use% Mounted on
 udev            486M   12K  486M   1% /dev
 tmpfs           100M  400K   99M   1% /run
 /dev/xvda1       12G  5.5G  5.7G  50% /
 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
 /dev/xvdf        16G   44M   15G   1% /mnt/ebs

И что у вас есть том для использования там, прикрепленный к вашему существующему экземпляру. кредит

10

Я столкнулся с этой проблемой, и я получил ее сейчас,

[ec2-user@ip-172-31-63-130 ~]$ lsblk
NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0   8G  0 disk
└─xvda1 202:1    0   8G  0 part /
xvdf    202:80   0   8G  0 disk
└─xvdf1 202:81   0   8G  0 part

Вы должны установить partition

/dev/xvdf1 (какой тип является разделом)

не монтируйте disk

/dev/xvdf (какой тип является диском)

  • 0
    Это решило мою проблему. Это был такой простой смысл! Спасибо!
  • 0
    Так легко ... Спасибо!
Показать ещё 1 комментарий
0

Вам не нужно создавать файловую систему вновь созданного тома из моментального снимка. Просто присоедините том и смонтируйте том в нужную папку. Я подключил новый том к тому же местоположению ранее удаленного тома, и он работал нормально.

[ec2-user@ip-x-x-x-x vol1]$ sudo lsblk
NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0   8G  0 disk 
└─xvda1 202:1    0   8G  0 part /
xvdb    202:16   0  10G  0 disk /home/ec2-user/vol1

Ещё вопросы

Сообщество Overcoder
Наверх
Меню