Как исправить "sudo: не удается открыть ... Файловая система, доступная только для чтения"?

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

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

Я могу подключиться к серверу по SSH, и при попытке запустить apache2, например, я получаю следующее :

username@srv1:~$ sudo service apache2 start[sudo] password for username:sudo: unable to open /var/lib/sudo/username/1: Read-only file system * Starting web server apache2                                                                                                                                                                                                               (30)Read-only file system: apache2: could not open error log file /var/log/apache2/error.log.Unable to open logsAction 'start' failed.The Apache error log may have more information.

Когда я пытаюсь перезапустить сервер, я получаю :

username@srv1:~$ sudo shutdown -r now[sudo] password for username:sudo: unable to open /var/lib/sudo/username/1: Read-only file system

Как только я перезапускаю его вручную, он просто запускается без какого-либо предупреждения или сообщения о том, что что-то не так.

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

Файловая система обычно переходит в режим только для чтения во время работы системы, если возникает проблема с согласованностью файловой системы. Это указано в fstab как errors=remount-ro и произойдет при сбое доступа к FS или при запросе аварийного повторного подключения только для чтения через Alt+SysRq+U. Ты можешь бежать:

sudo fsck -Af -M

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

Редактировать: Не забывайте о -M в командной строке.

записка: Как упоминал Бибхас в своем ответе: Если fsck застревает после баннера своей версии:

$ sudo fsck -Af -Mfsck from util-linux 2.20.1

возможно, вы захотите попробовать использовать fsck, специфичный для EXT4

$ sudo fsck.ext4 -f /dev/sda1

Предоставил соответствующий раздел /dev/sda1 это была файловая система ext4.

Ответ с помощью гексафракции у меня не сработал. Каждый раз, когда я пытался выполнить sudo fsck -Af -M это просто показало

$ sudo fsck -Af -Mfsck from util-linux 2.20.1

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

sudo fsck.ext4 -f /dev/sda1

Предоставил соответствующий раздел /dev/sda1 это была файловая система ext4.

Вот команда, которая решила мою проблему :

mount -o remount /

лучше, чем перезагрузить или sudo fsck -Af

Если вы хотите принудительно перемонтировать свою корневую файловую систему как rw, вы можете выполнить следующее.

mount -o remount,rw /

Попробуй бежать dmesg | grep "EXT4-fs error" чтобы узнать, есть ли у вас какие-либо проблемы, связанные с самой файловой системой / системой ведения журнала. Тогда я бы порекомендовал вам перезагрузить вашу систему. Также, sudo fsck -Af ответ навязчивой идеей не повредит.

Обратите внимание, что иногда это может быть вызвано тем, что компьютер забывает системное время - проверка диска завершается неудачно, потому что даты в журнале относятся к БУДУЩЕМУ!

Установка времени BIOS (и проверка батареи BIOS) устранили эту проблему для меня, без необходимости выполнять какое-либо восстановление диска.

(Удален предыдущий ответ)

Редактировать: Основная проблема была на стороне Windows. После обновления моей Windows 10 автоматически включилась опция "быстрый запуск". При повторном отключении этой опции, а затем повторном запуске компьютера проблема исчезла. Windows 10 вызывала у меня сильную головную боль в течение нескольких дней :(

Опцию "быстрый запуск" можно найти в разделе "Параметры питания" на панели управления. Отключите это!!! :)

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

>>>>>Параметры аппаратного обеспечения панели управления и питания звуков (слева) Выберите, как закрытие крышки изменяет настройки, которые в данный момент недоступны, Снимите флажок "Включить быстрый запуск".

Теперь загрузка в Ubuntu решит проблему. Надеюсь, это поможет!

https://youtu.be/KJ-0KPZhAFo

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

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

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

Для меня перезагрузка системы решает эту проблему

sudo reboot

как он упоминал об этом.

Помнить

как системный администратор перезагрузка должна быть последним решением

Все, этот вопрос предназначен для сервера, а не для ПК. Если у вас возникла эта проблема на вашем компьютере с двойной загрузкой, пожалуйста, проверьте “Параметр ** быстрый запуск ** можно найти в разделе ** параметры питания ** на панели управления Windows”. У меня такая же проблема с Ubuntu на AWS

Я рекомендую @ John изменить ответ на последний опубликованный ответ Бибхаса, поскольку он действительно работает там, где другие ответы на самом деле совсем не полезны.

Для microSD: http://askubuntu.com/questions/213889/microsd-card-is-set-to-read-only-state-how-can-i-write-data-on-it

У меня тоже есть эта проблема, и ни одно из решений не работает для меня, я использую ubuntu 18.04, и я не знаю, почему это произошло, я должен перезагрузить свою систему, а затем она покажет мне страницу, содержащую (initramfs) там, когда я запускаю fsck / dev / sda1 -y и перезагружаю ОС работайте, и снова через 30 минут - 1 час возникает проблема.