← Back to team overview

touch-packages team mailing list archive

[Bug 1468103] Re: rc.local runs earlier than cloud-init.service

 

A simple fix is something like this:

Create the /etc/systemd/system/rc-local.service file with the following
contents:

[Unit]
Description=/etc/rc.local Compatibility

[Service]
Type=idle
ExecStart=/etc/rc.systemd
TimeoutSec=0
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Create a file /etc/rc.systemd with whatever you want to run, set it to executable.
Delete everything you added from rc.local until this gets properly fixed 

run systemctl daemon-reload

Reboot to test it.

Working for me at the moment

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/1468103

Title:
  rc.local runs earlier than cloud-init.service

Status in cloud-init package in Ubuntu:
  Confirmed
Status in systemd package in Ubuntu:
  Triaged

Bug description:
  per https://www.debian.org/doc/manuals/debian-faq/ch-customizing.en.html
   | The rc.local script is executed at the end of each multiuser runlevel.

  Generally speaking people expect rc.local to be run as "the last thing
  in boot".

  currently it is being run by systemd much earlier.

  Provided in the attached is user-data that tells cloud-init to write a
  file in /usr/local/bin/rc-local-message and edit set rc.local to
  execute it.

  On current wily, under most scenarios the script will not be executed
  as rc.local will most likely run before the cloud-init service has a
  chance to update /etc/rc.local.

  To reproduce:
   a.) launch an instance with provided user-data

  Expected behavior would be:
   1.  /run/rc-local-message exists with contents of /proc/uptime at the time it was run
   2.  /rc-local-message.mark exists with the number of times this script has been run ('1' after first boot)
   3.  /var/log/rc-local-message.log exists with a message like:
        [/var/log/rc-local-message.log] <date> === successful boot 1 ====
   4. console log should also have message like in 3 with '/dev/console'

  4 is broken as rc.local output is not sent to console as reported
  separately at bug 1468102.

  Related bugs:
   * bug 1468102: rc.local output does not go to console 

  ProblemType: Bug
  DistroRelease: Ubuntu 15.10
  Package: systemd 220-7ubuntu1
  ProcVersionSignature: User Name 3.19.0-22.22-generic 3.19.8-ckt1
  Uname: Linux 3.19.0-22-generic x86_64
  ApportVersion: 2.17.3-0ubuntu4
  Architecture: amd64
  Date: Tue Jun 23 20:21:50 2015
  Ec2AMI: ami-00000434
  Ec2AMIManifest: FIXME
  Ec2AvailabilityZone: nova
  Ec2InstanceType: m1.small
  Ec2Kernel: aki-00000002
  Ec2Ramdisk: ari-00000002
  Lsusb: Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
  MachineType: OpenStack Foundation OpenStack Nova
  ProcEnviron:
   TERM=xterm-256color
   PATH=(custom, no user)
   XDG_RUNTIME_DIR=<set>
   LANG=en_US.UTF-8
   SHELL=/bin/bash
  ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.19.0-22-generic root=LABEL=cloudimg-rootfs ro console=tty1 console=ttyS0
  SourcePackage: systemd
  UdevLog: Error: [Errno 2] No such file or directory: '/var/log/udev'
  UpgradeStatus: No upgrade log present (probably fresh install)
  dmi.bios.date: 01/01/2011
  dmi.bios.vendor: Bochs
  dmi.bios.version: Bochs
  dmi.chassis.type: 1
  dmi.chassis.vendor: Bochs
  dmi.modalias: dmi:bvnBochs:bvrBochs:bd01/01/2011:svnOpenStackFoundation:pnOpenStackNova:pvr2014.1.4:cvnBochs:ct1:cvr:
  dmi.product.name: OpenStack Nova
  dmi.product.version: 2014.1.4
  dmi.sys.vendor: OpenStack Foundation

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/cloud-init/+bug/1468103/+subscriptions


References