Вопрос или проблема
Используя Debian на BeagleBone Black. Плата подключена к интернету с статическим IP для удаленного SSH. Через несколько дней я не смог подключиться к своей плате по SSH. При отладке плата получила следующий лог ошибок.
Не удалось запустить создание временных файлов и директорий.
Не удалось запустить службы: создание временных файлов, SSH-сервер, сетевая служба и т.д. Не удалось запустить.
Что могло пойти не так? Кто-нибудь сталкивался с подобной проблемой?
Лог:
[FAILED] Не удалось запустить создание временных файлов и директорий
[FAILED] Не удалось запустить демона энтропии с использованием алгоритма HAVEGE
[FAILED] Не удалось запустить синхронизацию сетевого времени.
[FAILED] Не удалось запустить сервер Apache HTTP.
**[FAILED] Не удалось запустить сервер OpenBSD Secure Shell.**
Убедитесь, что корневая файловая система имеет режим rw
У меня возникла эта проблема, когда я пытался создать образ debootstrap
, работающий на QEMU.
После некоторых поисков на случайных форумах я узнал, что решение заключается в том, чтобы сделать корневую файловую систему доступной для записи, вместо стандартной только для чтения, с которой Linux ядро монтирует её.
Наиболее правильный способ сделать это в Debian – добавить в ваш fstab
:
/dev/sda / ext4 errors=remount-ro,acl 0 1
что перемонтирует корень с параметром по умолчанию rw
, хотя я этого еще не тестировал.
Основная проблема с debootstrap
заключается в том, что fstab
является просто фиктивным, как объясняется здесь: https://askubuntu.com/questions/557556/why-is-my-etc-fstab-file-unconfigured/1080541#1080541
Альтернативный способ, который может сработать, это передать параметр загрузки ядра rw
, но я не тестировал это в Debian, только в Buildroot.
Окончательная работающая настройка debootstrap
, которую я достиг, описана здесь: Создание загрузочного образа Debian с помощью debootstrap
Ответ или решение
Проблема, с которой вы столкнулись, связана с тем, что ваша файловая система, вероятно, смонтирована в режиме "только для чтения". Это может привести к сбоям служб, таких как создание временных файлов и каталогов, SSH-сервер и другие сетевые службы, как указано в ваших логах.
Чтобы решить эту проблему, вам необходимо убедиться, что корневая файловая система (root filesystem) смонтирована в режиме чтения-записи (rw). Вы можете сделать это, выполнив следующие шаги:
-
Проверка состояния файловой системы:
Прежде всего, проверьте, в каком состоянии смонтирована файловая система. Это можно сделать с помощью команды:mount | grep ' / '
Если вы увидите
ro
в выводе, это означает, что файловая система смонтирована в режиме только для чтения. -
Перемонтирование файловой системы:
Если ваша файловая система смонтирована в режиме "только для чтения", вы можете попытаться перемонтировать её в режиме "чтение-запись" с помощью следующей команды:sudo mount -o remount,rw /
-
Изменение файла fstab:
Чтобы убедиться, что ваша файловая система всегда монтируется в режиме "чтение-запись" при загрузке, откройте файл/etc/fstab
и модифицируйте его. Найдите строку, которая относится к вашему корневому разделу (обычно это/dev/sda1
или что-то похожее) и убедитесь, что в ней указаны правильные параметры. Например:/dev/sda1 / ext4 errors=remount-ro,acl 0 1
Это обеспечит автоматическое перемонтирование в режиме "чтение-запись" при загрузке.
-
Параметры загрузки ядра:
Если проблема сохраняется, вы можете также попробовать добавить параметрrw
в параметры загрузки ядра. Для этого отредактируйте файл конфигурации загрузчика (например, Grub) и добавьтеrw
к строке, начинающейся сlinux
, в файле/boot/grub/grub.cfg
, или в конфигурации меню загрузчика, если используете другой загрузчик. -
Перезагрузка системы:
После внесенных изменений обязательно перезагрузите систему для применения настроек:sudo reboot
-
Проверка работы служб:
После перезагрузки проверьте статус служб, которые ранее не удавались:systemctl status ssh systemctl status networking
Если после выполнения всех вышеупомянутых шагов проблема не устранена, внимательно проанализируйте логи системы для выявления возможных ошибок с помощью:
journalctl -xe
Таким образом, вы сможете диагностировать и устранить проблемы, которые могли оставить вашу систему в неработоспособном состоянии.