Для чего можно использовать файл id _rsa.pub?

( Я не уверен, почему вы используете вариант монтирования -o loop, поскольку устройство моментального снимка LVM должно быть таким же хорошим дисковым устройством, как и его оригинал.)

«Файл существует» — это стандартный английский текст для errnoзначения 17 или EEXIST, как он назван в #include .

Этот результат ошибки не задокументирован для системного вызова mount(2), поэтому необходимо немного прочитать исходный код.

Перекрёстный справочник ядра Linux -на elixir.bootlin.com может перечислить все места, где EEXIST используется в коде ядра. Поскольку вы пытаетесь зациклить -монтирование файловой системы btrfs, места, которые могут иметь значение, это:

  • drivers/block/loop.c, относящийся к управлению шлейфовыми устройствами
  • fs/btrfs/super.c, который будет использоваться при монтировании файловой системы btrfs.

В drivers/block/loop.cошибка EEXISTгенерируется, если вы пытаетесь выделить конкретное кольцевое устройство, которое уже используется (, например. mount -o loop=/dev/loop3...и /dev/loop3уже заняты ). Но это не должно быть проблемой здесь, если только что-то не создает состояние гонки с вашей командой монтирования.

fs/btrfs/super.cна самом делеbtrfs-имеет специальную функцию для преобразования кодов ошибок в сообщения об ошибках. Он переводит EEXISTв Object already exists.

Вы пытаетесь смонтировать то, что выглядит как клон btrfsфайловой системы, которая уже смонтирована, так что исторически это имело смысл :, раньше это приводило к путанице btrfs, но, похоже, некоторая защита была (разумно )добавлено в какой-то момент.

Поскольку это снимок LVM -уровня , в отличие от снимка, сделанного с помощью btrfsвстроенной -функции моментального снимка, вы должны рассматривать этот снимок как клонированный. filesystem, если вы хотите смонтировать его, пока смонтирована его исходная файловая система :, только LVM будет «знать», что это снимок, а не настоящий 1 :1 клон. Так,вам нужно будет изменить UUID метаданных файловой системы снимка/клона, если вам нужно смонтировать ее в той же системе, что и оригинал.

Предупреждение:У меня мало опыта работы с btrfs, поэтому приведенное ниже может быть неверным или неполным.

Поскольку ваше ядро ​​новее 5.0, у вас может быть возможность использовать btrfstune -m /dev/mapper/matrix-snap--of--coreдля внесения изменений. В противном случае вам придется использовать btrfstune -u /dev/mapper/matrix-snap--of--core, что будет медленнее, так как необходимо обновить все метаданные файловой системы, а не только поле metadata_uuidв суперблоке файловой системы.

0
05.10.2021, 02:07
0 ответов

Теги

Похожие вопросы