читати тільки кореневу файлову систему


25

Якось мій Debian пішов читати лише в кореневій файловій системі. Я поняття не маю, як це могло статися.
Наприклад, коли я перебуваю в /rootпапці і введіть команду, nanoа після цього натисніть, Tabщоб перерахувати можливий файл у цій папці, я отримаю повідомлення:

root@debian:~# nano -bash: cannot create temp file for here-document: Read-only file system

Те ж саме для cdкоманди, коли я набираю cd /homeта натискаю, Tabщоб перелічити мені шляхи:

root@debian:~# cd /home -bash: cannot create temp file for here-document: Read-only file system

У мене також проблеми з програмним забезпеченням, як aptі інші. Не вдається навіть отримати оновлення. У мене дуже багато таких помилок:

Err http ://ftp.de.debian.org wheezy-updates/main Sources
406  Not Acceptable
W: Not using locking for read only lock file /var/lib/apt/lists/lock
W: Failed to fetch http ://ftp.de.debian.org/debian/dists/wheezy/Release  rename failed, Read-only file system (/var/lib/apt/lists/ftp.de.debian.org_debian_dists_wheezy_Release -> /var/lib/apt/lists/ftp.de.debian.org_debian_dists_wheezy_Release).
W: Failed to fetch http ://security.debian.org/dists/wheezy/updates/main/source/Sources  404  Not Found
W: Failed to fetch http ://security.debian.org/dists/wheezy/updates/main/binary-amd64/Packages  404  Not Found
W: Failed to fetch http ://ftp.de.debian.org/debian/dists/wheezy-updates/main/source/Sources  406  Not Acceptable
E: Some index files failed to download. They have been ignored, or old ones used instead.
W: Not using locking for read only lock file /var/lib/dpkg/lock

У мене дуже багато проблем у системі. Чи можна це виправити? Як я можу перевірити, що сталося? Що я повинен шукати в журналах?

Я знаю, що це може бути через рядок у /etc/fstabфайлі:

/dev/mapper/debian-root /               ext4    errors=remount-ro 0       1

але в чому проблема? Я нічого не можу знайти або, можливо, не знаю, де шукати.

Редагувати:

Я робив пошук журналів повідомлень і знаходив лише це:

kernel: [    5.709326] EXT4-fs (dm-0): re-mounted. Opts: (null)
kernel: [    5.977131] EXT4-fs (dm-0): re-mounted. Opts: errors=remount-ro
kernel: [    7.174856] EXT4-fs (dm-2): mounted filesystem with ordered data mode. Opts: (null)

Я думаю, що це правильно, тому що я маю ті самі записи на інших дебіанах.

Я знайшов щось у dmesg (я трохи скоротив цей висновок, оскільки було багато стандартних речей ext4)

root@gs3-svn:/# dmesg |grep ext4
EXT4-fs error (device dm-0) in ext4_reserve_inode_write:4507: Journal has aborted
EXT4-fs error (device dm-0) in ext4_reserve_inode_write:4507: Journal has aborted
EXT4-fs error (device dm-0) in ext4_dirty_inode:4634: Journal has aborted
EXT4-fs error (device dm-0): ext4_discard_preallocations:3894: comm rsyslogd: Error loading buddy information for 1
EXT4-fs warning (device dm-0): ext4_end_bio:250: I/O error -5 writing to inode 133130 (offset 132726784 size 8192 starting block 159380)
EXT4-fs error (device dm-0): ext4_journal_start_sb:327: Detected aborted journal

5 помилок та 1 попередження. Якісь ідеї? Чи безпечно використовувати mount -o remount, rw /?


2
Шукайте рядки "ext4" et "/ dev / mapper / debian-root" в /var/log/messages. Якщо ваша файлова система пошкоджена, ви повинні бачити її у ранніх повідомленнях ядра під час завантаження. Також спробуйте mount -o remount,rw /dev/mapper/debian-rootі скажіть нам, чи спричинить вам помилку.
lgeorget

а також у вас залишилось місця, що дає вам командуdf
Kiwy

Чи можете ви перейти в режим відновлення з grub? Крім того, відредагуйте параметри ядра grub та додайте слово single до кінця та завантаження. Ви повинні отримати кореневу оболонку, з якої можна запустити різні інструменти для перевірки та ремонту диска.
garethTheRed

скидання "машини VM" все-таки вирішило мою проблему (випадок - Ubuntu працював на Virtual Box)
парашутувати

Відповіді:


29

Поведінка за замовчуванням для більшості файлових систем Linux - це захист ваших даних. Коли ядро ​​виявить помилку в підсистемі зберігання, воно зробить файлову систему лише для читання, щоб запобігти (подальше) пошкодження даних.

Ви можете налаштувати це за допомогою параметра кріплення, errors={continue|remount-ro|panic}який задокументований у системному посібнику ( man mount).

Коли ваша коренева файлова система стикається з такою помилкою, більшість часу помилка не записується у ваші файли журналів, оскільки тепер вони також будуть доступні лише для читання. На щастя, оскільки це дія ядра, перше повідомлення про помилку записується спочатку в пам'ять, в буфер кільця ядра. Якщо ви вже не змили з пам'яті, ви можете відобразити вміст буфера дзвінка за допомогою dmesgкоманди. .

Більшість справжніх жорстких дисків підтримують SMART, і ви можете використовувати smartctlдля випробування та діагностики стану диска.

Залежно від повідомлень про помилку, ви можете вирішити, що все-таки безпечно використовувати файлову систему та повернути їй стан читання-запису mount -o remount,rw /

Взагалі, помилки диска є попередником повного збою диска. Зараз саме час створити резервну копію своїх даних або підтвердити статус існуючих резервних копій.


так, у мене є резервні дані. Ви, будь ласка, ще раз подивіться на моє запитання? Я знайшов щось у dmesg і змінив своє запитання.
s1c

Як правило, я б очікував, що ці помилки ext4 будуть оточені помилками, пов'язаними з IO або пристроєм, оскільки, швидше за все, проблема полягає не в файловій системі як такої, а в базовому диску. Дивіться, наприклад, askubuntu.com/questions/141862/…
HBruijn

Ще одне питання. Це може бути через змонтовані розділи (SAN / NAS зберігання)? У мене, звичайно, у файлі fstab визначено.
s1c

На мій досвід, лише файлова система, яка зазнала помилок вводу-виводу, встановлюється лише для читання; ні інші розділи, ні віддалені спільні ділянки не повинні переглядатись лише для читання.
HBruijn

Ми зробили mount -o remount, rw /, а потім зробили chmod у файл, який працював для нас. після завершення змін виконайте змонтування - перерахунок, ro / для повернення файлової системи до режиму лише для читання.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.