Как предотвратить монтирование файловых систем только для чтения после приостановки?

У меня Ubuntu 12.04 установлена ​​на SDHC-карте (только один раздел ext2, без подкачки). Когда я приостанавливаю использование pm-suspend, моя корневая файловая система монтируется только для чтения. В настоящее время я «исправляю» это следующим файлом:

/etc/pm/sleep.d/99_make_disk_rw:

#!/bin/sh

mount -o remount,rw /

Но диск помечен как нуждающийся в fsck на перезагружать. Как я могу предотвратить монтирование файловой системы только для чтения или что-то здесь не так?

Обновление: похоже, что он монтируется только для чтения, потому что произошла ошибка. Я изменил параметры монтирования для / в /etc/fstab на noatime,nodiratime,errors=continue, и он больше не монтирует SDHC-карту только для чтения после ее возобновления. Таким образом, проблема возникает, когда она приостанавливается, а не когда она возобновляется, как я думал.

Я проверил /sys/bus/usb/devices/1-4/power/persist, и для него установлено значение 1. Таким образом, карта SDHC не должна выглядеть отключенной от ОС (или, точнее, должна восстановиться после отключения без ошибки).

Здесь, кажется, соответствующий раздел системного журнала

Sep 10 10:34:23 iubit kernel: [  748.246226] sd 4:0:0:0: [sdb] Media Changed
Sep 10 10:34:23 iubit kernel: [  748.246234] sd 4:0:0:0: [sdb]  Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
Sep 10 10:34:23 iubit kernel: [  748.246243] sd 4:0:0:0: [sdb]  Sense Key : Unit Attention [current] 
Sep 10 10:34:23 iubit kernel: [  748.246253] Info fld=0x0
Sep 10 10:34:23 iubit kernel: [  748.246258] sd 4:0:0:0: [sdb]  Add. Sense: Not ready to ready change, medium may have changed
Sep 10 10:34:23 iubit kernel: [  748.246271] sd 4:0:0:0: [sdb] CDB: Read(10): 28 00 00 5d 3e f0 00 00 08 00
Sep 10 10:34:23 iubit kernel: [  748.246291] end_request: I/O error, dev sdb, sector 6110960
Sep 10 10:34:23 iubit kernel: [  748.247027] EXT2-fs (sdb1): error: ext2_fsync: detected IO error when writing metadata buffers
Sep 10 10:34:23 iubit anacron[6954]: Anacron 2.3 started on 2012-09-10
Sep 10 10:34:23 iubit anacron[6954]: Normal exit (0 jobs run)
Sep 10 10:34:24 iubit laptop-mode: Laptop mode 
Sep 10 10:34:24 iubit laptop-mode: enabled, not active
Sep 10 10:34:24 iubit kernel: [  749.055376] sd 4:0:0:0: [sdb] No Caching mode page present
Sep 10 10:34:24 iubit kernel: [  749.055387] sd 4:0:0:0: [sdb] Assuming drive cache: write through
Sep 10 10:34:25 iubit anacron[7555]: Anacron 2.3 started on 2012-09-10
Sep 10 10:34:25 iubit anacron[7555]: Normal exit (0 jobs run)
Sep 10 10:34:31 iubit kernel: [  756.090861] EXT2-fs (sdb1): previous I/O error to superblock detected
3
задан 10 September 2012 в 18:59

1 ответ

Настоящей проблемой здесь является ошибка «error: ext2_fsync: обнаружена ошибка ввода-вывода при записи буферов метаданных». была ошибка ext2, которая вызывала эту проблему, но я думал, что она исправлена ​​или, по крайней мере, исправлена.

Файловая система помечается как несовместимая из-за буферов метаданных, отсюда и монтирование как R / O и необходимость проверки диска. Может быть, вам следует изменить название этой статьи на что-то, связанное с этой ошибкой, и вы могли бы привлечь внимание еще нескольких знающих людей.

У меня есть EeePC, в котором я использую карту SDHC 8 Гб, в которой монтируется как / home. Это отформатированный ext4, и у меня никогда не было этой проблемы ни с каким 'buntu от 10.04LTS до 12.04LTS. Возможно, стоит отформатировать SDHC-карту как ext4 и посмотреть, устранится ли проблема, если это регрессия только в модулях ext2.

Редактировать: О, вы также можете сообщить об этом как об ошибке. Посмотрите, сможете ли вы найти оригинальные отчеты на Launchpad и попробуйте заново открыть их как регрессию, или начните новый, если считаете, что это уместно.

0
ответ дан 10 September 2012 в 18:59

Другие вопросы по тегам:

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