Диск VM's Linux пошел только для чтения = никакой выбор, но перезагрузка?

Вот что-то для исследования/проверения. Я нашел этот бит в журнале фиксации для журнала фиксации Tegra ARM для версии 2.6.39 ядра:

Стекло Simon (1):
ARM: Tegra: Зафиксируйте зависают на перезагрузке

Я думаю, что это - патч что фиксация Simon, названная: [ИСПРАВЬТЕ 7/7] РУКА: Tegra: зафиксируйте зависают на перезагрузке, относится к:

From: Simon Glass 

We cannot use writel() here since the resulting wmb() calls l2x0_cache_sync()
which uses a spinlock and L1 cache may be off at this point.

Signed-off-by: Simon Glass 
Signed-off-by: Olof Johansson 
---
 arch/arm/mach-tegra/common.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/arm/mach-tegra/common.c b/arch/arm/mach-tegra/common.c
index 34559d1..b1ecf60 100644
--- a/arch/arm/mach-tegra/common.c
+++ b/arch/arm/mach-tegra/common.c
     -41,7 +41,7      void tegra_assert_system_reset(char mode, const char *cmd)

    reg = readl(reset);
    reg |= 0x04;
-   writel(reg, reset);
+   writel_relaxed(reg, reset);
 }

 static __initdata struct tegra_clk_init_table common_clk_init_table[] = {
--

Я думаю, что необходимо будет или бэкпортировать это изменение в 2.6.35 или переместиться до более нового ядра.

Ссылки

5
08.04.2014, 19:08
4 ответа
[116273]Пару раз мы сталкивались с этой проблемой, как правило, из-за того, что сеть падает на продолжительный период времени. Проблема не в том, что файловая система доступна только для чтения, а в том, что само дисковое устройство помечено как доступное только для чтения. Здесь нет другого варианта, кроме перезагрузки. Увеличение таймаута scsi будет работать при переходных сбоях, таких как обход отказа пути. Не сработает при 15-минутном перебое в сети[116274].
1
27.01.2020, 20:42

От человекаmount:

   errors={continue|remount-ro|panic}
              Define the behavior  when  an  error  is  encountered.   (Either
              ignore  errors  and  just mark the filesystem erroneous and con‐
              tinue, or remount the filesystem read-only, or  panic  and  halt
              the  system.)   The default is set in the filesystem superblock,
              and can be changed using tune2fs(8). 

Таким образом, вы должны смонтировать виртуальную машину с параметром continueвместо remount-ro.

mount -o errors=continue
mount -o remount
1
27.01.2020, 20:42

Это случалось в системе RHEL при перезагрузке/повторной -настройке подключенной SAN. Что сработало для меня, так это деактивировать группу томов и LVM, а затем снова активировать их.

vgchange -a n /vg_group_name
lvchange -a n /lvm_group_name

Затем вы должны повторно активировать их.

vgchange -a y /vg_group_name
lvchange -a y /lvm_group_name

Затем просто попробуйте перемонтировать все с помощью mount -a.

1
27.01.2020, 20:42

Запустив тестовые примеры с использованием тестовой ВМ, работающей в хранилище данных NFS, которое я намеренно отключил, я не нашел ничего, что сработало. Команда blockdev не сработала, а команды vg / lv отказываются работать в смонтированной корневой /системе.

На данный момент лучшим вариантом является установка errors=panicв /etc/fstab , чтобы виртуальная машина просто отказала.

0
27.01.2020, 20:42

Теги

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