2014-09-29 2 views
1

Во-первых, я хочу создать портативный загрузочный USB-накопитель, содержащий дистрибутив GNU/Linux. В частности, я хочу использовать Arch Linux с squashfs только для чтения корневой файловой системы.Запуск Gnome 3 в среде только для чтения

Изображение squashfs основано на снимке рабочей виртуальной машины. Базовая система с такими сервисами, как ssh, работает из коробки, как и ожидалось. Но при попытке запустить gnome через systemd (systemctl start gdm) все, что я вижу, это черный экран (предположительно, X-Server запущен, но gdm не загружается). Я уже пытался выяснить, что происходит, но не смог определить точную проблему.

  • Главная каталоги записываемые
  • /ТМР записываемые
  • /вар/журнал записываемые
  • /вар/запустить &/бег являются записываемые в любом случае

/вар/Журнал/gdm создается, но остается пустым. Какие модули могут требовать доступа на запись к любым другим файлам? Есть ли какая-либо документация? Что имело бы смысл в отношении strace или подобных?

Мое желание знать корень проблемы и исправить ее, вместо использования обходных решений, таких как unionfs. Спасибо за любую помощь или подсказки!

Хотя это не имеет значения, для тех, кто мог бы задаться вопросом, почему я хочу, чтобы это сделать, вот некоторые моменты, рассмотреть следующие вопросы:

  • Стабильность - не так как вы не можете изменять системные файлы, вы можете испортить система (если вы не напишете поддельным непосредственно к приводу, конечно)
  • хранения - в файлы сжаты, больше данных помещается на диск
  • Performance - в качестве ввода/вывода на большинстве USB D rives медленный, сжатие дает вам более высокую скорость ввода-вывода
  • Переносимость - нет специальной обработки для хранения только для чтения, вы можете скопировать ее на компакт-диск или любую другую технологию только для чтения, и она все равно будет работать одинаково как это было бы на записываемый диск

Update

я понял, что проблема была на самом деле в/вар/Lib/GDM. GDM попытался получить доступ к файлам там, где (молча) не удалось сделать это, давая мне черный экран.

+0

Я работал над чем-то похожим в CentOS 7. Я установил 'ro' для корневой файловой системы в'/etc/fstab' и 'READONLY = yes' в'/etc/systemctl/readonly-root'. Это отлично работает для минималистской, безголовой системы, но вход в систему с использованием результатов GDM на черном экране с последующим повторным вводом в систему GDM. Мне жаль, что я не могу получить журнал доступа к файлу, поэтому я мог бы добавить его в '/ etc/rwtab'. Есть ли в Arch Linux эквивалент '/ etc/systemctl/readonly-root'? –

+0

Этот вопрос кажется не по теме, и он наиболее подходит для 'unix.stackexchange.com' ... –

+0

@MidoriKid Я не знаю, что погода Arch имеет эквивалент/etc/systemctl/readonly-root. Но, как сказано в ответе, я нашел решение проблемы. Возможно, вы захотите посмотреть на журналctl (1), так как это показывает вам журнал systemd. Вероятно, вам нужно подключиться через SSH к коробке, поскольку мне было нужно, потому что GDM, казалось, замерзал весь X-сервер, и я не мог вернуться на TTY. 'journalctl -f' дает вам предварительный просмотр в журнале systemd. Следует упомянуть, если вы собираетесь использовать NetworkManager, убедитесь, что/etc/NetworkManager/системные соединения также доступны для записи. – s1kam4n

ответ

2

Я выяснил, что проблема была на самом деле в/var/lib/gdm. GDM попытался получить доступ к файлам там, где (молча) не удалось сделать это, давая мне черный экран.

journalctl была командой отладки, которой я отсутствовал в первую очередь.