Ошибка «Файловая система только для чтения» при закрытии вкладки и случайном закрытии окна терминала


28

Сначала просто странность с командой cd. Если я наберу cd, затем пробел, а затем нажмите, Tabчтобы просмотреть доступные каталоги, я получаю это сообщение об ошибке:

bash: не может создать временный файл для here-документа: файловая система только для чтения

Более проблемной проблемой было случайное закрытие окна терминала. Это произошло во время тестирования cdстранности, а также в то время, когда ssh'd на другом сервере делал простые вещи вроде того git statusи такого. [Edit] Кажется, что если я нажму Enter точно 31 раз, это вызовет автоматическое закрытие окна терминала (теперь проверено 3 раза).

Недавно я обновился с 12.04 до 14.04 в конце прошлой недели, и такое поведение не происходило весь день, когда я использовал его после обновления. Это первый раз, когда что-либо предпринималось на этом компьютере с того дня.

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


Просто дружеское напоминание о том, чтобы сделать заголовок вопроса более наглядным, что помогает получить более качественные ответы: «странное поведение терминала» не очень наглядно.
— Томасруттер

Я признателен за это.
— Такамуфин

Чтобы лучше диагностировать вашу проблему, можете ли вы сказать мне, если вы используете разделы по умолчанию, которые настроил Ubuntu, используете ли вы полное шифрование диска или LVM, и сделали ли вы что-нибудь с вашим fstab? Какой вывод mountкоманды?
— Томасруттер

выход для монтирования: gist.github.com/anonymous/74dc62ccd5602d1e9742
— Такамуфин,

Спасибо за предоставленную информацию - похоже, нет проблем с настройкой монтирования и никаких проблем во время монтирования, но, возможно, с тех пор возникли ошибки с монтированием / (root)? В remount-roуказывает , что корневой раздел будет перемонтируется , как только для чтения в случае некоторых ошибок файловой системы. Было бы неплохо сделать fsck из recovery или Live CD.
— Томасруттер

Ответы:


16

Я перезагрузился в режиме восстановления и следовал инструкциям системы. Я побежал fsckна /dev/sda2, и это устранило проблему.


13

Read-only file systemОшибка является главным ключом здесь. Я предполагаю, что ваш домашний каталог, где bash пытается сохранить историю команд и т. Д., Находится внутри раздела только для чтения.

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

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

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

Вы можете попробовать перезагрузить компьютер и проверить диск из меню восстановления. Нажмите и удерживайте Shift при загрузке компьютера сразу после исчезновения экрана BIOS и до появления логотипа Ubuntu.


1
Была такая же проблема. Перезагрузка сработала. Спасибо.
— whitehat

4

Именно эта проблема произошла со мной тоже.

Это происходит с перерывами.

Поэтому мне, наконец, надоест и решил переустановить ОС - Ubuntu-GNOME 14.04 (чистая).

Это исправлено! По крайней мере, в течение нескольких дней .. Тогда точно такая же проблема возникла снова ...

Так что я пошел в Фрай и получил новый жесткий диск (Seagate).

Пока все хорошо (6 месяцев и считая).

примечание стороны: сток hdd был Toshiba


Добро пожаловать в Спросите Ubuntu. Поскольку это неправильный ответ на вопрос, удалите его.
— Архисман Паниграхи

2
Это мой ответ. Каков твой ответ?
— phtn458

2
Я хотел сказать, что переустановка ОС или покупка нового жесткого диска не является правильным решением. Вы можете комментировать другие посты, и вы сможете комментировать, когда у вас будет достаточно репутации (15).
— Архиепископ Паниграхи

10
@ArchismanPanigrahi "диск плох, получи новый" - это ответ.
— Сет

1
Вау. Поэтому все те, кто проголосовал против, пошли и купили новый жесткий диск (?)
— Паван

2

Как уже отмечали другие, /tmpфайловая система только для чтения вызывает дополнительные проблемы.

Что касается 31 строки, это связано gnome-terminalс внутренними.

Он хранит определенное количество строк в памяти, в так называемом «кольце». Остальные строки, которые выходят из этого кольца, помещаются в «поток». В более старых версиях gnome-терминала поток в значительной степени записывался непосредственно в файл /tmp, в более новых версиях буферизация, сжатие и шифрование перед его записью. (Я не могу вспомнить, неважно, открыт ли файл under, /tmpкогда первый поток данных записывается в поток, или когда поток впервые пытается выполнить запись /tmp; это незначительная деталь реализации.)

Размер кольца всегда равен степени двух (каждый слот содержит 1 строку терминала; кроме 1 слота не используется по техническим причинам) и удваивается каждый раз, когда это требуется из-за роста высоты терминала ( но никогда не сжимается). Например, с высотой по умолчанию в 24 строки кольцо содержит последние 31 строку выходных данных, остальная часть отправляется в поток (в конечном итоге в /tmp). Если вы увеличите высоту окна, скажем, до 40 строк, кольцо в памяти увеличится, чтобы вместить не более 63 записей одновременно.

То, что вы испытываете, это то, что gnome-terminalпытается открыть файл /tmpдля сохранения потока и завершает работу из-за непредвиденной ошибки здесь. Попробуйте с более высоким окном, чем по умолчанию; он потерпит крах после нажатия Enter 63 (или, может быть, 127) раз.

Это, как говорится, /tmpдолжно быть исправлено, чтобы быть доступным для записи (с разрешения 1777).


1

Моя проблема заключалась в том, что процесс работал со 100% процессором и, вероятно, занимал все ресурсы диска (некоторый процесс резервного копирования: Ur-Backup).

Как только я убил его, все прошло хорошо. Так что я думаю, что узкое место в IO может вызвать эту ошибку, даже если места достаточно и у вас есть разрешение на запись.

(Raspberry Pi с Джесси 18/03/16)

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.