Miúdos de clonagens manuais de partições (III)
Em Miúdos de clonagens manuais de partições (II), sugeri, para regerar o machine-id, deletar
1)
2)
3) Ao deletar
O sintoma de
Resolução:
- Apenas substituir o conteúdo de
- Não recriar
- O erro da instalação do openSUSE 12.3 não é mais consertado preventivamente (recriar
- Rodar
Comandos:
/etc/machine-id
e reiniciar. O systemd recriaria-o com o conteúdo de /var/lib/dbus/machine-id
. Este método funciona no openSUSE 12.3, mas não no Fedora 18. Nele, existem alguns problemas.1)
/var/lib/dbus/machine-id
não existe mais. D-Bus e demais códigos que dependem do machine-id foram atualizados para usarem o arquivo presente em /etc
.2)
/etc
é somente leitura quando o código que regera-o durante o boot é executado (machine_id_setup()
), ou seja, a criação automática não funcionará.3) Ao deletar
/etc/machine-id
e recriá-lo no ambiente do SystemRescueCd, o label do SELinux ficará errado e o arquivo ficará inacessível para os daemons quando o sistema for carregado.O sintoma de
/etc/machine-id
inacessível se manifestará (dentre outras formas) assim:# systemctl status systemd-journald.service systemd-journald.service - Journal Service Loaded: loaded (/usr/lib/systemd/system/systemd-journald.service; static) Active: failed (Result: start-limit) since Sex 2013-06-21 15:03:26 BRT; 1min 3s ago Docs: man:systemd-journald.service(8) man:journald.conf(5) Process: 236 ExecStart=/usr/lib/systemd/systemd-journald (code=exited, status=1/FAILURE) Status: "Shutting down..."
# grep avc /var/log/audit/audit.log [ 4.052971] type=1400 audit(1371838098.883:4): avc: denied { read } for pid=219 comm="systemd-journal" name="machine-id" dev="sda1" ino=19136653 scontext=system_u:system_r:syslogd_t:s0 tcontext=system_u:object_r:file_t:s0 tclass=file
Resolução:
- Apenas substituir o conteúdo de
/var/lib/dbus/machine-id
se o arquivo existir (é considerado obsoleto) e não for um link simbólico (instalações novas usam um link apontando para /etc/machine-id
).- Não recriar
/etc/machine-id
dentro do SystemRescueCd. Ao invés disso, apenas apagar seu conteúdo, mantendo o arquivo original e consequentemente o rótulo do SELinux (system_u:object_r:etc_t:s0
).- O erro da instalação do openSUSE 12.3 não é mais consertado preventivamente (recriar
/etc/machine-id
quando não alteramos o machine-id). Faça manualmente antes de clonar a imagem.- Rodar
systemd-machine-id-setup
via chroot executa o mesmo código que seria executado pelo init (machine_id_setup()
) e importa o machine-id de /var/lib/dbus/machine-id
quando este existir.Comandos:
# [[ -e /mnt/fedora/var/lib/dbus/machine-id && ! -L /mnt/fedora/var/lib/dbus/machine-id ]] && dbus-uuidgen >/mnt/fedora/var/lib/dbus/machine-id # >/mnt/fedora/etc/machine-id # chroot /mnt/fedora systemd-machine-id-setup
Comentários
Postar um comentário