Сделайте Ubuntu 16.04 «живым» (только для чтения со слоем чтения / записи)

Я хочу настроить Ubuntu 16.04 как live CD. Это прекрасно работало в Ubuntu 12.04, но с 16.04 есть проблемы. Сбои служб, CRON не работает, X не работает, я даже не могу войти в оболочку. Поэтому я думаю, что 16.04 нуждается в некоторой модификации. Если я подключаю корневой диск как чтение / запись, все работает так, как должно. Итак, сама ОС в порядке.

Чтобы позволить Ubuntu загружаться в режиме только для чтения, я заменяю параметр ядра «rw» на «ro» и использую скрипт в initramfs:

/etc/initramfs-tools/scripts/init-bottom/ro_root

#!/bin/sh

PREREQ=''

prereqs() {
  echo "$PREREQ"
}

case $1 in
prereqs)
  prereqs
  exit 0
  ;;
esac

ro_mount_point="${rootmnt%/}.ro"
rw_mount_point="${rootmnt%/}.rw"

# Create mount points for the read-only and read/write layers:
mkdir "${ro_mount_point}" "${rw_mount_point}"

# Move the already-mounted root filesystem to the ro mount point:
mount --move "${rootmnt}" "${ro_mount_point}"

# Mount the read/write filesystem:
mount -t tmpfs root.rw "${rw_mount_point}"

# Mount the union:
mount -t aufs -o "dirs=${rw_mount_point}=rw:${ro_mount_point}=ro" root.union "${rootmnt}"

# Correct the permissions of /:
chmod 755 "${rootmnt}"

# Make sure the individual ro and rw mounts are accessible from within the root
# once the union is assumed as /.  This makes it possible to access the
# component filesystems individually.
mkdir "${rootmnt}/ro" "${rootmnt}/rw"
mount --bind "${ro_mount_point}" "${rootmnt}/ro"
mount --bind "${rw_mount_point}" "${rootmnt}/rw"

# ro_root end

Как правильно настроить Ubuntu 16.04 с корневым диском ro и слоем rw fs?

2
задан 11 May 2016 в 14:07

1 ответ

Используйте стандартный пакет Ubuntu "overlayroot". В Ubuntu 16.04 автоматически установлен этот пакет. Просто необходимо включить его путем редактирования/etc/overlayroot.conf и добавления следующей установки:

overlayroot="tmpfs"

Перезагружают систему Ubuntu 16.04, и Вы сделаны. Можно хотеть добавить запись загрузки ядра к конфигурации личинки, чтобы помочь временно отключить корневую файловую систему только для чтения для патчей и т.д. Способ сделать это должно добавить запись личинки, которая передает аргумент ядра следующим образом:

overlayroot=disabled

Посмотрите больше в: https://spin.atomicobject.com/2015/03/10/protecting-ubuntu-root-filesystem /

2
ответ дан 12 May 2016 в 00:07
  • 1
    Я don' t думают it' s необходимый, потому что мой /etc/gdm3/custom.conf уже " AutomaticLoginEnable=true" но это было прокомментировано. Я просто непрокомментированный это. – Redbob 25 October 2017 в 00:58

Другие вопросы по тегам:

Похожие вопросы: