summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts.service
Commit message (Collapse)AuthorAgeFilesLines
* run-postinsts: Set dependency for ldconfig to avoid boot issuesArturo Buzarra2023-05-161-1/+1
| | | | | | | | | | | | | | | | | | | | | If a package with a postsints script requires ldconfig, the package class adds a ldconfig postinst fragment to initialize it before. Systemd has its own ldconfig.service to initialize it and sometimes if both services are running at the same time in the first boot, the first one will work, but the second one will fail with the following error: ldconfig[141]: /sbin/ldconfig: Renaming of /etc/ld.so.cache~ to /etc/ld.so.cache failed: No such file or directory This commit adds a ordering dependency between them to make sure that only one service is running at the same time. (From OE-Core rev: 1bc254e7969f3d5470bacf9ad9f065d38b7b7fde) Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit 4e9d812e127dc6743f52f4881e509e8e2e833afe) Signed-off-by: Jermain Horsman <jermain.horsman@nedap.com> Signed-off-by: Steve Sakoman <steve@sakoman.com>
* run-postinsts: Set RemainAfterExit on systemd unitAlex Kiernan2020-05-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | run-postinsts is only expected to run once, but during startup, but if any dependency is pulled into a transaction, even once it has been marked disabled, then it can be restarted. This leads to occasional failures during QA if an ssh session starts whilst the existing transaction is still running: Finished Run pending postinsts. run-postinsts.service: Succeeded. Condition check resulted in Commit a transient machine-id on disk being skipped. Condition check resulted in Bind mount volatile /srv being skipped. Condition check resulted in Bind mount volatile /var/spool being skipped. Condition check resulted in Bind mount volatile /var/lib being skipped. Condition check resulted in Bind mount volatile /var/cache being skipped. Condition check resulted in Platform Persistent Storage Archival being skipped. Condition check resulted in Rebuild Hardware Database being skipped. Starting Run pending postinsts... Condition check resulted in Kernel Configuration File System being skipped. Condition check resulted in FUSE Control File System being skipped. Condition check resulted in Load Kernel Modules being skipped. Condition check resulted in File System Check on Root Device being skipped. Condition check resulted in Huge Pages File System being skipped. Condition check resulted in Journal Audit Socket being skipped. dropbear@125-192.168.7.2:22-192.168.7.1:44226.service: Succeeded. Condition check resulted in Platform Persistent Storage Archival being skipped. Started SSH Per-Connection Server (192.168.7.1:44226). dropbear@124-192.168.7.2:22-192.168.7.1:44224.service: Succeeded. Started SSH Per-Connection Server (192.168.7.1:44224). Condition check resulted in Commit a transient machine-id on disk being skipped. Condition check resulted in Bind mount volatile /srv being skipped. Condition check resulted in Bind mount volatile /var/spool being skipped. Condition check resulted in Bind mount volatile /var/lib being skipped. Condition check resulted in Bind mount volatile /var/cache being skipped. Condition check resulted in Platform Persistent Storage Archival being skipped. Condition check resulted in Rebuild Hardware Database being skipped. Failed to start Run pending postinsts. run-postinsts.service: Failed with result 'start-limit-hit'. run-postinsts.service: Start request repeated too quickly. Setting RemainAfterExit ensures that the unit remains active and is not gratuitously restarted, unless done so explicitly using systemctl restart. (From OE-Core rev: 6e78fd580a8c6ed9d886b8431974baf6c988831c) Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* run-postinsts: for dpkg/opkg, do not rely on /etc/*-postinstsStefan Agner2018-06-181-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Start opkg/dpkg as soon as the respective package managers status file is present, no matter whether /etc/$pm-postinsts exists. This decouples the implicit link between postinsts scripts in /etc and the package manager: Currently the package manager is only started if those scripts are present, although the package manager does not use those scripts at all! Package managers install their own set of postinst scripts. The behavior when using rpm packages stays the same. Note that using the package managers capability to execute postinst scripts is preferred for good reasons: It makes sure that the package managers database reflects that the packages have been completely installed and configured. This change allows to drop installation of the postinsts scripts when package management is present. This will be done in a separate change. Note: Before commit 5aae19959a44 ("rootfs.py: Change logic to unistall packages") rootfs.py did not install /etc/$pm-postinsts when package management is installed! The change caused YOCTO #8235 which lead to the behavior change of run-postinsts in first place. (From OE-Core rev: 1af421fcf05457223bf271f3951599b6c150cdff) Signed-off-by: Stefan Agner <stefan.agner@toradex.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* run-postinsts: do not reload daemon configurationMax Krummenacher2017-08-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case a systemd service disables itself while init is still in its boot sequence the reloading of the service files can be problematic. In that case: It seems that systemd looses the state of .device units, and some services depend on such units (namely serial consoles such as serial-getty@ttymxc0.service). As a result no getty is spawned on the affected serial tty. After a power-cycle the second boot (which does not disable services) succeeds. The following sequence shows this problem: | Jan 09 16:36:28 apalis-t30 systemctl[162]: Removed /etc/systemd/system/sysinit.target.wants/run-postinsts.service. | Jan 09 16:36:28 apalis-t30 systemd[1]: Reloading. | ... | And then the failing one: | Feb 22 15:33:15 apalis-t30 systemd[1]: dev-ttyS0.device: Job dev-ttyS0.device/start timed out. | Feb 22 15:33:15 apalis-t30 systemd[1]: Timed out waiting for device dev-ttyS0.device. | Feb 22 15:33:15 apalis-t30 systemd[1]: Dependency failed for Serial Getty on ttyS0. | Feb 22 15:33:15 apalis-t30 systemd[1]: serial-getty@ttyS0.service: Job serial-getty@ttyS0.service/start failed with result 'dependency'. | Feb 22 15:33:15 apalis-t30 systemd[1]: dev-ttyS0.device: Job dev-ttyS0.device/start failed with result 'timeout'. | Feb 22 15:33:15 apalis-t30 systemd[1]: Reached target Login Prompts. (the time has been updated between this two events, but that does not influence the issue) Using --no-reload in the service file avoids the "Reloading." message above and seems to not cause such issues anymore. Reported-by: Stefan Agner <stefan.agner@toradex.com> (From OE-Core rev: 23b359b6e26d0b17037bf955bd15a16a3fd9ab8f) Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> (cherry picked from commit 4a425d05bac5dcba023b67aa3d726f7e7869404f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* run-postinsts.service: remove redundant lineChen Qi2014-09-031-1/+0
| | | | | | | | | | The basic.target itself requires sysinit.target, so there's no need to write this redundant line in the run-postinsts unit file. (From OE-Core rev: 28835fcd78fd35db6d3bd7ee2be16904ddf11991) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* run-postinsts: Add systemd service fileRoss Burton2014-01-281-0/+17
This patch mainly adds a systmd service file for run-postinsts, which is started at first boot to run the post-install scripts. Apart from this, this patch also modifies the installation location of run-postinsts to ${sbindir}. This is because this script would be used by both sysvinit and systemd based images. So it's more reasonable to make it locate under ${sbindir}. [YOCTO #5719] (From OE-Core rev: 5933fbef26ffbc8140248ffb28957f36a813054b) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>