In src/rc/rc-logger.c: /* * logfile or its basedir may be read-only during sysinit and * shutdown so skip the error in this case */ if ((strcmp(level, RC_LEVEL_SHUTDOWN) != 0) && (strcmp(level, RC_LEVEL_SYSINIT) != 0)) { log_error = 1; eerror("Error: fopen(%s) failed: %s", logfile, strerror(errno)); } However, what about telinit 1? I have /var mounted by localmount from /etc/fstab (i.e., not initramfs), and I am seeing two warnings after telinit 1: * Error: fopen(/var/log/rc.log) failed: Read-only file system * Warning: temporary logfile left behind: /lib/rc/init.d/rc.log Suggest including RC_LEVEL_SINGLE in the comparison above, and/or reworking the logic to check errno against EROFS, e.g.: if ((errno != EROFS) || (strcmp(level, RC_LEVEL_SHUTDOWN) != 0) && (strcmp(level, RC_LEVEL_SYSINIT) != 0) && (strcmp(level, RC_LEVEL_SINGLE) != 0)) {
http://git.overlays.gentoo.org/gitweb/?p=proj/openrc.git;a=commitdiff;h=2d2751c Should be fixed in Git.
@Maxim: have you tested the fixes? I think we can probably close this since it's in master.
(In reply to comment #2) > @Maxim: have you tested the fixes? Didn't test, but they look fine to me - ro-fs errors are ignored at any runlevel. That's more encompassing than what I suggested, but you know the intended policy better.
Ok, closing this then.