Basically,  in  Upstart,    tasks   and services    are started and stopped by  events.
Events  are generated   as  other   tasks   and services    are started and stopped and
may be  received    from    any other   process on  the system. Services    may be
respawned   if  they    die unexpectedly    and communication   with    the init
daemon  occurs  over    D-Bus.
For now,    Upstart is  being   used    for many    jobs,   including   boot    and shutdown,
but not all services    have    Upstart jobs    written.    Those   that    exist   reside, as
expected,   in  /etc/init   and are easily  accessible  in  the same    basic   manner
as  init    jobs.   If  an  Upstart job exists  and you try to  manage  it  using   the
traditional method, you get a   message like    this:
Click   here    to  view    code    image
matthew@seymour:~$  sudo    /etc/init.d/ufw stop
[sudo]  password    for matthew:
Rather  than    invoking    init    scripts through /etc/init.d,    use the
service(8)
utility,    e.g.    service ufw stop
Since   the script  you are attempting  to  invoke  has been    converted   to
an
Upstart job,    you may also    use the stop(8) utility,    e.g.    stop    ufw
ufw stop/waitingIn  this    case,   to  start   or  stop    Ubuntu’s    Uncomplicated   Firewall    (UFW),  you
just    enter   sudo    start   ufw or  sudo    stop    ufw.    Simple. If  you want    to
learn   more    about   Upstart,    start   with    http://upstart.ubuntu.com.  There   is  also
an  excellent   cookbook    filled  with    Upstart recipes at
[http://upstart.ubuntu.com/cookbook/.   Read    the following   section before  you](http://upstart.ubuntu.com/cookbook/.   Read    the following   section before  you)
dig too deeply  into    Upstart,    however.
Using systemd
In  2015,   Upstart was replaced    with    systemd.    systemd was developed   at
the same    time    as  Upstart,    and the two have    been    competing   for the title   of
“init   replacement of  the future.”    systemd won.    There   isn’t   much    point   in
learning    a   ton about   Upstart,    other   than    what    you need    for the moment. The
future  lies    with    systemd.
To  interact    with    systemd,    you typically   use the systemctl   command.
The main    interactions    you are likely  to  have    with    systemd involve starting
and stopping    services.   Table   15.1    shows   commands    related to  services.
Table 15.1 systemd Service-Related Commands
