Merge lp:~jamesodhunt/upstart/bug-1238078 into lp:upstart

Proposed by James Hunt on 2013-10-11
Status: Merged
Merged at revision: 1561
Proposed branch: lp:~jamesodhunt/upstart/bug-1238078
Merge into: lp:upstart
Diff against target: 19782 lines (+19467/-52)
11 files modified
ChangeLog (+52/-5)
init/Makefile.am (+2/-1)
init/job_class.c (+67/-5)
init/job_class.h (+8/-0)
init/state.c (+25/-1)
init/tests/data/upstart-1.11.json (+19034/-0)
init/tests/test_state.c (+85/-1)
test/test_util_common.c (+89/-35)
test/test_util_common.h (+7/-2)
util/man/initctl.8 (+2/-1)
util/tests/test_initctl.c (+96/-1)
To merge this branch: bzr merge lp:~jamesodhunt/upstart/bug-1238078
Reviewer Review Type Date Requested Status
Steve Langasek 2013-10-11 Needs Fixing on 2013-11-03
Review via email: mp+190723@code.launchpad.net

Description of the change

Fix for bug 1238078:

------------------------------------------------------------
revno: 1545
committer: James Hunt <email address hidden>
branch nick: upstart-bug-1238078
timestamp: Fri 2013-10-11 17:17:19 +0100
message:
  * test/test_util_common.c:
    - session_init_reexec(): New.
    - set_upstart_session(): Whitespace.
  * test/test_util_common.h: REEXEC_UPSTART(): Update to handle Session
    Inits too.
  * util/man/initctl.8: Clarify 'set-env' behaviour.
  * util/tests/test_initctl.c: New tests:
    - "ensure 'set-env' persists across session-init re-exec".
    - "ensure 'set-env --global' persists across session-init re-exec".
------------------------------------------------------------
revno: 1544
fixes bug: https://launchpad.net/bugs/1238078
committer: James Hunt <email address hidden>
branch nick: upstart-bug-1238078
timestamp: Fri 2013-10-11 14:35:51 +0100
message:
  * init/job_class.c:
    - job_class_serialise_job_environ(): New function to serialise global
      job environment table.
    - job_class_deserialise_job_environ(): New function to deserialise global
      job environment table.
  * init/state.c:
    - state_to_string(): Serialise global job environment table
      (LP: #1238078).
    - state_from_string(): Deserialise global job environment table.
    - _state_deserialise_str_array(): Don't attempt to free array if type
      check fails.

To post a comment you must log in.
James Hunt (jamesodhunt) wrote :

I need to add a few more .json test files before this is merged.

Steve Langasek (vorlon) wrote :

per above :)

review: Needs Fixing
James Hunt (jamesodhunt) wrote :

New tests added.

Steve Langasek (vorlon) wrote :

Hi James,

What's the difference between the upstart-reload-signal.json test and the upstart-no-job-environ.json test? AFAICS, there isn't one. If the serialization format hasn't changed between 1.9 and 1.10, we shouldn't add a redundant test here, it's unnecessary and confusing.

Also, perhaps it would be a good idea to name these json data tests after the upstream versions they correspond to, so that it's clearer? For instance, upstart-reload-signal.json could be called 'upstart-1.9.json', and upstart-with-job-environ.json could be called 'upstart-1.11.json'.

I'm not sure if (or how) the separate session-init tests are needed. They contain different data (since they're obviously taken from a running session init's state rather than a system init), but there shouldn't be any differences in the *format*, should there? If there are no differences, then I think the tests are redundant and should be omitted. If there are differences, please call this out more clearly so that it's understood at a glance what we're testing for.

I haven't had a chance yet to review the code; will do that tomorrow and send any further comments.

review: Needs Fixing
lp:~jamesodhunt/upstart/bug-1238078 updated on 2013-10-24
1547. By James Hunt on 2013-10-24

* init/tests/test_state.c: Removed some redundant JSON upgrade
  tests and renamed some existing data files to reflect the
  serialisation format version they encapsulate.

1548. By James Hunt on 2013-10-24

* Sync with lp:upstart.

James Hunt (jamesodhunt) wrote :

Hi Steve,

> What's the difference between the upstart-reload-signal.json test and
> the upstart-no-job-environ.json test? AFAICS, there isn't one. If the
> serialization format hasn't changed between 1.9 and 1.10, we shouldn't
> add a redundant test here, it's unnecessary and confusing.
Ack - gone.

>
> Also, perhaps it would be a good idea to name these json data tests
> after the upstream versions they correspond to, so that it's clearer?
> For instance, upstart-reload-signal.json could be called
> 'upstart-1.9.json', and upstart-with-job-environ.json could be called
> 'upstart-1.11.json'.
Agreed. We just need to remember to update upstart-1.11.json if new
serialisation data is added prior to 1.11 being released.

> I'm not sure if (or how) the separate session-init tests are needed.
> They contain different data (since they're obviously taken from a
> running session init's state rather than a system init), but there
> shouldn't be any differences in the *format*, should there? If there are
> no differences, then I think the tests are redundant and should be
> omitted. If there are differences, please call this out more clearly so
> that it's understood at a glance what we're testing for.
Right - there is no difference in the format of the data in the session
init .json files: the Session Init tests were an attempt to ensure
correct deserialisation of a "non-default" job environment table (which
can only be non-default when running as a Session Init). However, I
think you are right: these tests aren't really adding much since to
test that setup. Really, we need to be able to feed the .json files
to an actual Session Init process and we don't currently have that
ability.

> I haven't had a chance yet to review the code; will do that tomorrow and
> send any further comments.
Thanks!

Branch updated.

Steve Langasek (vorlon) wrote :

Ok, finally found the time to fully review this patch. The revised json looks good. I have just a couple other comments:

- "_state_deserialise_str_array(): Don't attempt to free array if type check fails." It's not at all clear to me how this relates to the rest of the code changes. If this is fixing a problem exposed by the addition of the environment serialization, it would be better if this were made more explicit - and probably kept in a commit all to its own. (This does not warrant redoing the branch, but please keep in mind for the future.)

- I don't understand the added test_initctl test case. You appear to be dynamically creating a job that has both an 'exec' and a 'script' stanza. I don't know if this is an accident or if you're relying on some particular behavior of upstart here, but if it's the latter I think this should be done some other way because the current job definition is quite opaque. If this *isn't* relying on some upstart behavior that I don't know about, then I suspect this job doesn't actually do what you intend anyway, because it talks about using a flag file to notify the job that upstart has re-execed "to allow it to move out of pre-start", but the only place the job watches for this file after creating it is in a post-stop script. So I suspect that the test succeeds but is not actually testing what it's meant to because of a broken job definition. Please take a close look at this.

- Finally, you've added a commented-out call to a non-existent test_reexec_job_env function, which should be dropped from the patch.

review: Needs Fixing
lp:~jamesodhunt/upstart/bug-1238078 updated on 2013-11-04
1549. By James Hunt on 2013-11-04

* test/test_util_common.h: WAIT_FOR_FILE(): Check @path not logfile.

1550. By James Hunt on 2013-11-04

* util/tests/test_initctl.c: test_reexec(): Fixed behaviour and comments
  for test "ensure 'set-env --global' persists across session-init
  re-exec".

1551. By James Hunt on 2013-11-04

* Sync with lp:upstart.

James Hunt (jamesodhunt) wrote :

> - "_state_deserialise_str_array(): Don't attempt to free array if type check fails." It's not at all clear to me how this relates to the rest of the code changes. If this is fixing a problem exposed by the addition of the environment serialization, it would be better if this were made more explicit - and probably kept in a commit all to its own. (This does not warrant redoing the branch, but please keep in mind for the future.)
No, I just noticed this additional issue whilst fixing the main bug. I guess it should prolly have had more prominence and a separate commit, but atleast the bug is now fixed :)

> - I don't understand the added test_initctl test case. You appear to be dynamically creating a job that has both an 'exec' and a 'script' stanza. I don't know if this is an accident or if you're relying on some particular behavior of upstart here, but if it's the latter I think this should be done some other way because the current job definition is quite opaque. If this *isn't* relying on some upstart behavior that I don't know about, then I suspect this job doesn't actually do what you intend anyway, because it talks about using a flag file to notify the job that upstart has re-execed "to allow it to move out of pre-start", but the only place the job watches for this file after creating it is in a post-stop script. So I suspect that the test succeeds but is not actually testing what it's meant to because of a broken job definition. Please take a close look at this.
Good catch - comments were misleading and indeed the auto-generated job was incorrect.

> - Finally, you've added a commented-out call to a non-existent test_reexec_job_env function, which should be dropped from the patch.
Done.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'ChangeLog'
2--- ChangeLog 2013-11-03 02:56:57 +0000
3+++ ChangeLog 2013-11-04 09:35:50 +0000
4@@ -1,9 +1,10 @@
5-2013-10-25 Steve Langasek <steve.langasek@ubuntu.com>
6+2013-11-04 James Hunt <james.hunt@ubuntu.com>
7
8- * init/main.c, init/system.c, init/system.h: allow mount options
9- to be passed to system_mount(), and pass the right options when
10- mounting /dev/pts to match the permissions set by either
11- initramfs-tools or mountall. LP: #1244763.
12+ * test/test_util_common.h: WAIT_FOR_FILE(): Check @path not
13+ logfile.
14+ * util/tests/test_initctl.c: test_reexec(): Fixed behaviour and
15+ comments for test "ensure 'set-env --global' persists across
16+ session-init re-exec".
17
18 2013-11-03 James Hunt <james.hunt@ubuntu.com>
19
20@@ -59,6 +60,13 @@
21 * scripts/tests/test_pyupstart_session_init.py: Added file bridge tests
22 for directory creation, modification and deletion.
23
24+2013-10-25 Steve Langasek <steve.langasek@ubuntu.com>
25+
26+ * init/main.c, init/system.c, init/system.h: allow mount options
27+ to be passed to system_mount(), and pass the right options when
28+ mounting /dev/pts to match the permissions set by either
29+ initramfs-tools or mountall. LP: #1244763.
30+
31 2013-10-24 James Hunt <james.hunt@ubuntu.com>
32
33 * init/environ.c: Comment.
34@@ -75,6 +83,9 @@
35 - "remove first bare name entry from table of size 2"
36 - "remove last name=value entry from table of size 2"
37 - "remove last bare name entry from table of size 2"
38+ * init/tests/test_state.c: Removed some redundant JSON upgrade
39+ tests and renamed some existing data files to reflect the
40+ serialisation format version they encapsulate.
41 * test/test_util_common.c: get_initctl(): Added environment checks.
42
43 2013-10-23 Dmitrijs Ledkovs <xnox@ubuntu.com>
44@@ -87,6 +98,42 @@
45 * util/initctl.h: IS_INIT_EVENT(): Ignore session end event when
46 running in user mode (for 'check-config').
47
48+2013-10-14 James Hunt <james.hunt@ubuntu.com>
49+
50+ * init/job_class.c: job_class_environment_clear(): Utility function
51+ exposed primarily to allow tests to invalidate job_environ.
52+ * init/tests/test_state.c:
53+ - Added appropriate calls to job_class_environment_clear().
54+ - New JSON data tests added:
55+ - upstart-no-job-environ.json
56+ - upstart-with-job-environ.json
57+ - session-init-no-job-environ.json
58+ - session-init-with-job-environ.json
59+ - session-init-with-modified-job-environ.json
60+
61+2013-10-11 James Hunt <james.hunt@ubuntu.com>
62+
63+ * init/job_class.c:
64+ - job_class_serialise_job_environ(): New function to serialise global
65+ job environment table.
66+ - job_class_deserialise_job_environ(): New function to deserialise global
67+ job environment table.
68+ * init/state.c:
69+ - state_to_string(): Serialise global job environment table
70+ (LP: #1238078).
71+ - state_from_string(): Deserialise global job environment table.
72+ - _state_deserialise_str_array(): Don't attempt to free array if type
73+ check fails.
74+ * test/test_util_common.c:
75+ - session_init_reexec(): New.
76+ - set_upstart_session(): Whitespace.
77+ * test/test_util_common.h: REEXEC_UPSTART(): Update to handle Session
78+ Inits too.
79+ * util/man/initctl.8: Clarify 'set-env' behaviour.
80+ * util/tests/test_initctl.c: New tests:
81+ - "ensure 'set-env' persists across session-init re-exec".
82+ - "ensure 'set-env --global' persists across session-init re-exec".
83+
84 2013-10-04 Steve Langasek <steve.langasek@ubuntu.com>
85
86 * extra/upstart-local-bridge.c: use SOCKET_PATH in our event
87
88=== modified file 'init/Makefile.am'
89--- init/Makefile.am 2013-08-23 09:22:32 +0000
90+++ init/Makefile.am 2013-11-04 09:35:50 +0000
91@@ -144,7 +144,8 @@
92 $(TEST_DATA_DIR)/upstart-session.json \
93 $(TEST_DATA_DIR)/upstart-session2.json \
94 $(TEST_DATA_DIR)/upstart-session-infinity.json \
95- $(TEST_DATA_DIR)/upstart-reload-signal.json
96+ $(TEST_DATA_DIR)/upstart-1.9.json \
97+ $(TEST_DATA_DIR)/upstart-1.11.json
98
99 upstart_test_programs = \
100 test_system \
101
102=== modified file 'init/job_class.c'
103--- init/job_class.c 2013-10-18 09:13:36 +0000
104+++ init/job_class.c 2013-11-04 09:35:50 +0000
105@@ -145,12 +145,22 @@
106 void
107 job_class_environment_reset (void)
108 {
109- if (job_environ)
110+ job_class_environment_clear ();
111+ job_class_environment_init ();
112+}
113+
114+/**
115+ * job_class_environment_clear:
116+ *
117+ * Clear the environment table.
118+ **/
119+void
120+job_class_environment_clear (void)
121+{
122+ if (job_environ) {
123 nih_free (job_environ);
124-
125- job_environ = NULL;
126-
127- job_class_environment_init ();
128+ job_environ = NULL;
129+ }
130 }
131
132 /**
133@@ -1809,6 +1819,58 @@
134 return 0;
135 }
136
137+/**
138+ * job_class_serialise_job_environ:
139+ *
140+ * Serialise the global job environment table.
141+ *
142+ * Returns: JSON-serialised global job environment table, or NULL on error.
143+ **/
144+json_object *
145+job_class_serialise_job_environ (void)
146+{
147+ json_object *json;
148+
149+ job_class_environment_init ();
150+
151+ json = state_serialise_str_array (job_environ);
152+ if (! json)
153+ goto error;
154+
155+ return json;
156+
157+error:
158+ json_object_put (json);
159+ return NULL;
160+}
161+
162+/**
163+ * job_class_deserialise_job_environ
164+ * @json: JSON-serialised global job environment table to deserialise.
165+ *
166+ * Create the global job environment table from provided JSON.
167+ *
168+ * Returns: 0 on success, < 0 on error.
169+ **/
170+int
171+job_class_deserialise_job_environ (json_object *json)
172+{
173+ nih_assert (json);
174+
175+ nih_assert (! job_environ);
176+
177+ if (! state_check_json_type (json, array))
178+ goto error;
179+
180+ if (! state_deserialise_str_array (NULL, json, &job_environ))
181+ goto error;
182+
183+ return 0;
184+
185+error:
186+ return -1;
187+}
188+
189
190 /**
191 * job_class_serialise:
192
193=== modified file 'init/job_class.h'
194--- init/job_class.h 2013-07-21 23:54:16 +0000
195+++ init/job_class.h 2013-11-04 09:35:50 +0000
196@@ -239,6 +239,8 @@
197
198 void job_class_environment_reset (void);
199
200+void job_class_environment_clear (void);
201+
202 int job_class_environment_set (const char *var, int replace);
203 int job_class_environment_unset (const char *name);
204
205@@ -360,6 +362,12 @@
206 JobClass * job_class_get (const char *name, Session *session)
207 __attribute__ ((warn_unused_result));
208
209+json_object * job_class_serialise_job_environ (void)
210+ __attribute__ ((warn_unused_result));
211+
212+int job_class_deserialise_job_environ (json_object *json)
213+ __attribute__ ((warn_unused_result));
214+
215 void job_class_prepare_reexec (void);
216
217 time_t job_class_max_kill_timeout (void)
218
219=== modified file 'init/state.c'
220--- init/state.c 2013-07-15 14:54:39 +0000
221+++ init/state.c 2013-11-04 09:35:50 +0000
222@@ -339,6 +339,7 @@
223 state_to_string (char **json_string, size_t *len)
224 {
225 json_object *json;
226+ json_object *json_job_environ;
227 const char *value;
228
229 nih_assert (json_string);
230@@ -365,6 +366,16 @@
231
232 json_object_object_add (json, "events", json_events);
233
234+ json_job_environ = job_class_serialise_job_environ ();
235+
236+ if (! json_job_environ) {
237+ nih_error ("%s global job environment",
238+ _("Failed to serialise"));
239+ goto error;
240+ }
241+
242+ json_object_object_add (json, "job_environment", json_job_environ);
243+
244 json_classes = job_class_serialise_all ();
245
246 if (! json_classes) {
247@@ -415,6 +426,7 @@
248 {
249 int ret = -1;
250 json_object *json;
251+ json_object *json_job_environ;
252 enum json_tokener_error error;
253
254 nih_assert (state);
255@@ -458,6 +470,18 @@
256 nih_warn ("%s", _("No ConfSources present in state data"));
257 }
258
259+ json_job_environ = json_object_object_get (json, "job_environment");
260+
261+ if (json_job_environ) {
262+ if (job_class_deserialise_job_environ (json_job_environ) < 0) {
263+ nih_error ("%s global job environment",
264+ _("Failed to deserialise"));
265+ goto out;
266+ }
267+ } else {
268+ nih_warn ("%s", _("No global job environment data present in state data"));
269+ }
270+
271 if (job_class_deserialise_all (json) < 0) {
272 nih_error ("%s JobClasses", _("Failed to deserialise"));
273 goto out;
274@@ -610,7 +634,7 @@
275 nih_assert (len);
276
277 if (! state_check_json_type (json, array))
278- goto error;
279+ return -1;
280
281 *len = json_object_array_length (json);
282
283
284=== added file 'init/tests/data/upstart-1.11.json'
285--- init/tests/data/upstart-1.11.json 1970-01-01 00:00:00 +0000
286+++ init/tests/data/upstart-1.11.json 2013-11-04 09:35:50 +0000
287@@ -0,0 +1,19034 @@
288+{
289+ "sessions" : [],
290+ "conf_sources" : [
291+ {
292+ "conf_files" : [],
293+ "session" : 0,
294+ "flag" : 1,
295+ "type" : "CONF_FILE",
296+ "path" : "//etc/init.conf"
297+ },
298+ {
299+ "conf_files" : [
300+ {
301+ "conf_source" : 1,
302+ "job_class" : {
303+ "session" : 0,
304+ "name" : "mounted-debugfs"
305+ },
306+ "flag" : 1,
307+ "path" : "//etc/init/mounted-debugfs.conf"
308+ },
309+ {
310+ "conf_source" : 1,
311+ "job_class" : {
312+ "session" : 0,
313+ "name" : "mountnfs.sh"
314+ },
315+ "flag" : 1,
316+ "path" : "//etc/init/mountnfs.sh.conf"
317+ },
318+ {
319+ "conf_source" : 1,
320+ "job_class" : {
321+ "session" : 0,
322+ "name" : "pulseaudio"
323+ },
324+ "flag" : 1,
325+ "path" : "//etc/init/pulseaudio.conf"
326+ },
327+ {
328+ "conf_source" : 1,
329+ "job_class" : {
330+ "session" : 0,
331+ "name" : "rc-sysinit"
332+ },
333+ "flag" : 1,
334+ "path" : "//etc/init/rc-sysinit.conf"
335+ },
336+ {
337+ "conf_source" : 1,
338+ "job_class" : {
339+ "session" : 0,
340+ "name" : "setvtrgb"
341+ },
342+ "flag" : 1,
343+ "path" : "//etc/init/setvtrgb.conf"
344+ },
345+ {
346+ "conf_source" : 1,
347+ "job_class" : {
348+ "session" : 0,
349+ "name" : "lightdm"
350+ },
351+ "flag" : 1,
352+ "path" : "//etc/init/lightdm.conf"
353+ },
354+ {
355+ "conf_source" : 1,
356+ "job_class" : {
357+ "session" : 0,
358+ "name" : "mountdevsubfs.sh"
359+ },
360+ "flag" : 1,
361+ "path" : "//etc/init/mountdevsubfs.sh.conf"
362+ },
363+ {
364+ "conf_source" : 1,
365+ "job_class" : {
366+ "session" : 0,
367+ "name" : "mounted-proc"
368+ },
369+ "flag" : 1,
370+ "path" : "//etc/init/mounted-proc.conf"
371+ },
372+ {
373+ "conf_source" : 1,
374+ "job_class" : {
375+ "session" : 0,
376+ "name" : "network-interface"
377+ },
378+ "flag" : 1,
379+ "path" : "//etc/init/network-interface.conf"
380+ },
381+ {
382+ "conf_source" : 1,
383+ "job_class" : {
384+ "session" : 0,
385+ "name" : "plymouth-log"
386+ },
387+ "flag" : 1,
388+ "path" : "//etc/init/plymouth-log.conf"
389+ },
390+ {
391+ "conf_source" : 1,
392+ "job_class" : {
393+ "session" : 0,
394+ "name" : "alsa-state"
395+ },
396+ "flag" : 1,
397+ "path" : "//etc/init/alsa-state.conf"
398+ },
399+ {
400+ "conf_source" : 1,
401+ "job_class" : {
402+ "session" : 0,
403+ "name" : "control-alt-delete"
404+ },
405+ "flag" : 1,
406+ "path" : "//etc/init/control-alt-delete.conf"
407+ },
408+ {
409+ "conf_source" : 1,
410+ "job_class" : {
411+ "session" : 0,
412+ "name" : "failsafe"
413+ },
414+ "flag" : 1,
415+ "path" : "//etc/init/failsafe.conf"
416+ },
417+ {
418+ "conf_source" : 1,
419+ "job_class" : {
420+ "session" : 0,
421+ "name" : "hwclock-save"
422+ },
423+ "flag" : 1,
424+ "path" : "//etc/init/hwclock-save.conf"
425+ },
426+ {
427+ "conf_source" : 1,
428+ "job_class" : {
429+ "session" : 0,
430+ "name" : "irqbalance"
431+ },
432+ "flag" : 1,
433+ "path" : "//etc/init/irqbalance.conf"
434+ },
435+ {
436+ "conf_source" : 1,
437+ "job_class" : {
438+ "session" : 0,
439+ "name" : "networking"
440+ },
441+ "flag" : 1,
442+ "path" : "//etc/init/networking.conf"
443+ },
444+ {
445+ "conf_source" : 1,
446+ "job_class" : {
447+ "session" : 0,
448+ "name" : "ufw"
449+ },
450+ "flag" : 1,
451+ "path" : "//etc/init/ufw.conf"
452+ },
453+ {
454+ "conf_source" : 1,
455+ "job_class" : {
456+ "session" : 0,
457+ "name" : "avahi-cups-reload"
458+ },
459+ "flag" : 1,
460+ "path" : "//etc/init/avahi-cups-reload.conf"
461+ },
462+ {
463+ "conf_source" : 1,
464+ "job_class" : {
465+ "session" : 0,
466+ "name" : "console-font"
467+ },
468+ "flag" : 1,
469+ "path" : "//etc/init/console-font.conf"
470+ },
471+ {
472+ "conf_source" : 1,
473+ "job_class" : {
474+ "session" : 0,
475+ "name" : "modemmanager"
476+ },
477+ "flag" : 1,
478+ "path" : "//etc/init/modemmanager.conf"
479+ },
480+ {
481+ "conf_source" : 1,
482+ "job_class" : {
483+ "session" : 0,
484+ "name" : "mounted-run"
485+ },
486+ "flag" : 1,
487+ "path" : "//etc/init/mounted-run.conf"
488+ },
489+ {
490+ "conf_source" : 1,
491+ "job_class" : {
492+ "session" : 0,
493+ "name" : "mounted-tmp"
494+ },
495+ "flag" : 1,
496+ "path" : "//etc/init/mounted-tmp.conf"
497+ },
498+ {
499+ "conf_source" : 1,
500+ "job_class" : {
501+ "session" : 0,
502+ "name" : "rc"
503+ },
504+ "flag" : 1,
505+ "path" : "//etc/init/rc.conf"
506+ },
507+ {
508+ "conf_source" : 1,
509+ "job_class" : {
510+ "session" : 0,
511+ "name" : "rsyslog"
512+ },
513+ "flag" : 1,
514+ "path" : "//etc/init/rsyslog.conf"
515+ },
516+ {
517+ "conf_source" : 1,
518+ "job_class" : {
519+ "session" : 0,
520+ "name" : "shutdown"
521+ },
522+ "flag" : 1,
523+ "path" : "//etc/init/shutdown.conf"
524+ },
525+ {
526+ "conf_source" : 1,
527+ "job_class" : {
528+ "session" : 0,
529+ "name" : "plymouth"
530+ },
531+ "flag" : 1,
532+ "path" : "//etc/init/plymouth.conf"
533+ },
534+ {
535+ "conf_source" : 1,
536+ "job_class" : {
537+ "session" : 0,
538+ "name" : "anacron"
539+ },
540+ "flag" : 1,
541+ "path" : "//etc/init/anacron.conf"
542+ },
543+ {
544+ "conf_source" : 1,
545+ "job_class" : {
546+ "session" : 0,
547+ "name" : "mountall-shell"
548+ },
549+ "flag" : 1,
550+ "path" : "//etc/init/mountall-shell.conf"
551+ },
552+ {
553+ "conf_source" : 1,
554+ "job_class" : {
555+ "session" : 0,
556+ "name" : "mounted-var"
557+ },
558+ "flag" : 1,
559+ "path" : "//etc/init/mounted-var.conf"
560+ },
561+ {
562+ "conf_source" : 1,
563+ "job_class" : {
564+ "session" : 0,
565+ "name" : "plymouth-upstart-bridge"
566+ },
567+ "flag" : 1,
568+ "path" : "//etc/init/plymouth-upstart-bridge.conf"
569+ },
570+ {
571+ "conf_source" : 1,
572+ "job_class" : {
573+ "session" : 0,
574+ "name" : "ssh"
575+ },
576+ "flag" : 1,
577+ "path" : "//etc/init/ssh.conf"
578+ },
579+ {
580+ "conf_source" : 1,
581+ "job_class" : {
582+ "session" : 0,
583+ "name" : "tty1"
584+ },
585+ "flag" : 1,
586+ "path" : "//etc/init/tty1.conf"
587+ },
588+ {
589+ "conf_source" : 1,
590+ "job_class" : {
591+ "session" : 0,
592+ "name" : "udev-fallback-graphics"
593+ },
594+ "flag" : 1,
595+ "path" : "//etc/init/udev-fallback-graphics.conf"
596+ },
597+ {
598+ "conf_source" : 1,
599+ "job_class" : {
600+ "session" : 0,
601+ "name" : "udev-finish"
602+ },
603+ "flag" : 1,
604+ "path" : "//etc/init/udev-finish.conf"
605+ },
606+ {
607+ "conf_source" : 1,
608+ "job_class" : {
609+ "session" : 0,
610+ "name" : "wait-for-state"
611+ },
612+ "flag" : 1,
613+ "path" : "//etc/init/wait-for-state.conf"
614+ },
615+ {
616+ "conf_source" : 1,
617+ "job_class" : {
618+ "session" : 0,
619+ "name" : "acpid"
620+ },
621+ "flag" : 1,
622+ "path" : "//etc/init/acpid.conf"
623+ },
624+ {
625+ "conf_source" : 1,
626+ "job_class" : {
627+ "session" : 0,
628+ "name" : "alsa-restore"
629+ },
630+ "flag" : 1,
631+ "path" : "//etc/init/alsa-restore.conf"
632+ },
633+ {
634+ "conf_source" : 1,
635+ "job_class" : {
636+ "session" : 0,
637+ "name" : "alsa-store"
638+ },
639+ "flag" : 1,
640+ "path" : "//etc/init/alsa-store.conf"
641+ },
642+ {
643+ "conf_source" : 1,
644+ "job_class" : {
645+ "session" : 0,
646+ "name" : "apport"
647+ },
648+ "flag" : 1,
649+ "path" : "//etc/init/apport.conf"
650+ },
651+ {
652+ "conf_source" : 1,
653+ "job_class" : {
654+ "session" : 0,
655+ "name" : "cron"
656+ },
657+ "flag" : 1,
658+ "path" : "//etc/init/cron.conf"
659+ },
660+ {
661+ "conf_source" : 1,
662+ "job_class" : {
663+ "session" : 0,
664+ "name" : "mountall-bootclean.sh"
665+ },
666+ "flag" : 1,
667+ "path" : "//etc/init/mountall-bootclean.sh.conf"
668+ },
669+ {
670+ "conf_source" : 1,
671+ "job_class" : {
672+ "session" : 0,
673+ "name" : "plymouth-stop"
674+ },
675+ "flag" : 1,
676+ "path" : "//etc/init/plymouth-stop.conf"
677+ },
678+ {
679+ "conf_source" : 1,
680+ "job_class" : {
681+ "session" : 0,
682+ "name" : "procps"
683+ },
684+ "flag" : 1,
685+ "path" : "//etc/init/procps.conf"
686+ },
687+ {
688+ "conf_source" : 1,
689+ "job_class" : {
690+ "session" : 0,
691+ "name" : "hwclock"
692+ },
693+ "flag" : 1,
694+ "path" : "//etc/init/hwclock.conf"
695+ },
696+ {
697+ "conf_source" : 1,
698+ "job_class" : {
699+ "session" : 0,
700+ "name" : "james"
701+ },
702+ "flag" : 1,
703+ "path" : "//etc/init/james.conf"
704+ },
705+ {
706+ "conf_source" : 1,
707+ "job_class" : {
708+ "session" : 0,
709+ "name" : "container-detect"
710+ },
711+ "flag" : 1,
712+ "path" : "//etc/init/container-detect.conf"
713+ },
714+ {
715+ "conf_source" : 1,
716+ "job_class" : {
717+ "session" : 0,
718+ "name" : "cups-browsed"
719+ },
720+ "flag" : 1,
721+ "path" : "//etc/init/cups-browsed.conf"
722+ },
723+ {
724+ "conf_source" : 1,
725+ "job_class" : {
726+ "session" : 0,
727+ "name" : "mountall"
728+ },
729+ "flag" : 1,
730+ "path" : "//etc/init/mountall.conf"
731+ },
732+ {
733+ "conf_source" : 1,
734+ "job_class" : {
735+ "session" : 0,
736+ "name" : "mtab.sh"
737+ },
738+ "flag" : 1,
739+ "path" : "//etc/init/mtab.sh.conf"
740+ },
741+ {
742+ "conf_source" : 1,
743+ "job_class" : {
744+ "session" : 0,
745+ "name" : "rcS"
746+ },
747+ "flag" : 1,
748+ "path" : "//etc/init/rcS.conf"
749+ },
750+ {
751+ "conf_source" : 1,
752+ "job_class" : {
753+ "session" : 0,
754+ "name" : "whoopsie"
755+ },
756+ "flag" : 1,
757+ "path" : "//etc/init/whoopsie.conf"
758+ },
759+ {
760+ "conf_source" : 1,
761+ "job_class" : {
762+ "session" : 0,
763+ "name" : "mountall.sh"
764+ },
765+ "flag" : 1,
766+ "path" : "//etc/init/mountall.sh.conf"
767+ },
768+ {
769+ "conf_source" : 1,
770+ "job_class" : {
771+ "session" : 0,
772+ "name" : "network-interface-security"
773+ },
774+ "flag" : 1,
775+ "path" : "//etc/init/network-interface-security.conf"
776+ },
777+ {
778+ "conf_source" : 1,
779+ "job_class" : {
780+ "session" : 0,
781+ "name" : "tty5"
782+ },
783+ "flag" : 1,
784+ "path" : "//etc/init/tty5.conf"
785+ },
786+ {
787+ "conf_source" : 1,
788+ "job_class" : {
789+ "session" : 0,
790+ "name" : "friendly-recovery"
791+ },
792+ "flag" : 1,
793+ "path" : "//etc/init/friendly-recovery.conf"
794+ },
795+ {
796+ "conf_source" : 1,
797+ "job_class" : {
798+ "session" : 0,
799+ "name" : "mountall-reboot"
800+ },
801+ "flag" : 1,
802+ "path" : "//etc/init/mountall-reboot.conf"
803+ },
804+ {
805+ "conf_source" : 1,
806+ "job_class" : {
807+ "session" : 0,
808+ "name" : "mounted-dev"
809+ },
810+ "flag" : 1,
811+ "path" : "//etc/init/mounted-dev.conf"
812+ },
813+ {
814+ "conf_source" : 1,
815+ "job_class" : {
816+ "session" : 0,
817+ "name" : "tty4"
818+ },
819+ "flag" : 1,
820+ "path" : "//etc/init/tty4.conf"
821+ },
822+ {
823+ "conf_source" : 1,
824+ "job_class" : {
825+ "session" : 0,
826+ "name" : "ureadahead-other"
827+ },
828+ "flag" : 1,
829+ "path" : "//etc/init/ureadahead-other.conf"
830+ },
831+ {
832+ "conf_source" : 1,
833+ "job_class" : {
834+ "session" : 0,
835+ "name" : "avahi-daemon"
836+ },
837+ "flag" : 1,
838+ "path" : "//etc/init/avahi-daemon.conf"
839+ },
840+ {
841+ "conf_source" : 1,
842+ "job_class" : {
843+ "session" : 0,
844+ "name" : "emergency-console"
845+ },
846+ "flag" : 1,
847+ "path" : "//etc/init/emergency-console.conf"
848+ },
849+ {
850+ "conf_source" : 1,
851+ "job_class" : {
852+ "session" : 0,
853+ "name" : "failsafe-x"
854+ },
855+ "flag" : 1,
856+ "path" : "//etc/init/failsafe-x.conf"
857+ },
858+ {
859+ "conf_source" : 1,
860+ "job_class" : {
861+ "session" : 0,
862+ "name" : "mountkernfs.sh"
863+ },
864+ "flag" : 1,
865+ "path" : "//etc/init/mountkernfs.sh.conf"
866+ },
867+ {
868+ "conf_source" : 1,
869+ "job_class" : {
870+ "session" : 0,
871+ "name" : "rfkill-restore"
872+ },
873+ "flag" : 1,
874+ "path" : "//etc/init/rfkill-restore.conf"
875+ },
876+ {
877+ "conf_source" : 1,
878+ "job_class" : {
879+ "session" : 0,
880+ "name" : "rfkill-store"
881+ },
882+ "flag" : 1,
883+ "path" : "//etc/init/rfkill-store.conf"
884+ },
885+ {
886+ "conf_source" : 1,
887+ "job_class" : {
888+ "session" : 0,
889+ "name" : "systemd-logind"
890+ },
891+ "flag" : 1,
892+ "path" : "//etc/init/systemd-logind.conf"
893+ },
894+ {
895+ "conf_source" : 1,
896+ "job_class" : {
897+ "session" : 0,
898+ "name" : "udevtrigger"
899+ },
900+ "flag" : 1,
901+ "path" : "//etc/init/udevtrigger.conf"
902+ },
903+ {
904+ "conf_source" : 1,
905+ "job_class" : {
906+ "session" : 0,
907+ "name" : "upstart-socket-bridge"
908+ },
909+ "flag" : 1,
910+ "path" : "//etc/init/upstart-socket-bridge.conf"
911+ },
912+ {
913+ "conf_source" : 1,
914+ "job_class" : {
915+ "session" : 0,
916+ "name" : "ureadahead"
917+ },
918+ "flag" : 1,
919+ "path" : "//etc/init/ureadahead.conf"
920+ },
921+ {
922+ "conf_source" : 1,
923+ "job_class" : {
924+ "session" : 0,
925+ "name" : "passwd"
926+ },
927+ "flag" : 1,
928+ "path" : "//etc/init/passwd.conf"
929+ },
930+ {
931+ "conf_source" : 1,
932+ "job_class" : {
933+ "session" : 0,
934+ "name" : "startpar-bridge"
935+ },
936+ "flag" : 1,
937+ "path" : "//etc/init/startpar-bridge.conf"
938+ },
939+ {
940+ "conf_source" : 1,
941+ "job_class" : {
942+ "session" : 0,
943+ "name" : "mountall-net"
944+ },
945+ "flag" : 1,
946+ "path" : "//etc/init/mountall-net.conf"
947+ },
948+ {
949+ "conf_source" : 1,
950+ "job_class" : {
951+ "session" : 0,
952+ "name" : "mountnfs-bootclean.sh"
953+ },
954+ "flag" : 1,
955+ "path" : "//etc/init/mountnfs-bootclean.sh.conf"
956+ },
957+ {
958+ "conf_source" : 1,
959+ "job_class" : {
960+ "session" : 0,
961+ "name" : "network-manager"
962+ },
963+ "flag" : 1,
964+ "path" : "//etc/init/network-manager.conf"
965+ },
966+ {
967+ "conf_source" : 1,
968+ "job_class" : {
969+ "session" : 0,
970+ "name" : "resolvconf"
971+ },
972+ "flag" : 1,
973+ "path" : "//etc/init/resolvconf.conf"
974+ },
975+ {
976+ "conf_source" : 1,
977+ "job_class" : {
978+ "session" : 0,
979+ "name" : "tty3"
980+ },
981+ "flag" : 1,
982+ "path" : "//etc/init/tty3.conf"
983+ },
984+ {
985+ "conf_source" : 1,
986+ "job_class" : {
987+ "session" : 0,
988+ "name" : "checkfs.sh"
989+ },
990+ "flag" : 1,
991+ "path" : "//etc/init/checkfs.sh.conf"
992+ },
993+ {
994+ "conf_source" : 1,
995+ "job_class" : {
996+ "session" : 0,
997+ "name" : "dbus"
998+ },
999+ "flag" : 1,
1000+ "path" : "//etc/init/dbus.conf"
1001+ },
1002+ {
1003+ "conf_source" : 1,
1004+ "job_class" : {
1005+ "session" : 0,
1006+ "name" : "flush-early-job-log"
1007+ },
1008+ "flag" : 1,
1009+ "path" : "//etc/init/flush-early-job-log.conf"
1010+ },
1011+ {
1012+ "conf_source" : 1,
1013+ "job_class" : {
1014+ "session" : 0,
1015+ "name" : "network-interface-container"
1016+ },
1017+ "flag" : 1,
1018+ "path" : "//etc/init/network-interface-container.conf"
1019+ },
1020+ {
1021+ "conf_source" : 1,
1022+ "job_class" : {
1023+ "session" : 0,
1024+ "name" : "plymouth-ready"
1025+ },
1026+ "flag" : 1,
1027+ "path" : "//etc/init/plymouth-ready.conf"
1028+ },
1029+ {
1030+ "conf_source" : 1,
1031+ "job_class" : {
1032+ "session" : 0,
1033+ "name" : "plymouth-splash"
1034+ },
1035+ "flag" : 1,
1036+ "path" : "//etc/init/plymouth-splash.conf"
1037+ },
1038+ {
1039+ "conf_source" : 1,
1040+ "job_class" : {
1041+ "session" : 0,
1042+ "name" : "test-upstart-monitor"
1043+ },
1044+ "flag" : 1,
1045+ "path" : "//etc/init/test-upstart-monitor.conf"
1046+ },
1047+ {
1048+ "conf_source" : 1,
1049+ "job_class" : {
1050+ "session" : 0,
1051+ "name" : "checkroot-bootclean.sh"
1052+ },
1053+ "flag" : 1,
1054+ "path" : "//etc/init/checkroot-bootclean.sh.conf"
1055+ },
1056+ {
1057+ "conf_source" : 1,
1058+ "job_class" : {
1059+ "session" : 0,
1060+ "name" : "checkroot.sh"
1061+ },
1062+ "flag" : 1,
1063+ "path" : "//etc/init/checkroot.sh.conf"
1064+ },
1065+ {
1066+ "conf_source" : 1,
1067+ "job_class" : {
1068+ "session" : 0,
1069+ "name" : "console-setup"
1070+ },
1071+ "flag" : 1,
1072+ "path" : "//etc/init/console-setup.conf"
1073+ },
1074+ {
1075+ "conf_source" : 1,
1076+ "job_class" : {
1077+ "session" : 0,
1078+ "name" : "console"
1079+ },
1080+ "flag" : 1,
1081+ "path" : "//etc/init/console.conf"
1082+ },
1083+ {
1084+ "conf_source" : 1,
1085+ "job_class" : {
1086+ "session" : 0,
1087+ "name" : "cups"
1088+ },
1089+ "flag" : 1,
1090+ "path" : "//etc/init/cups.conf"
1091+ },
1092+ {
1093+ "conf_source" : 1,
1094+ "job_class" : {
1095+ "session" : 0,
1096+ "name" : "dmesg"
1097+ },
1098+ "flag" : 1,
1099+ "path" : "//etc/init/dmesg.conf"
1100+ },
1101+ {
1102+ "conf_source" : 1,
1103+ "job_class" : {
1104+ "session" : 0,
1105+ "name" : "screen-cleanup"
1106+ },
1107+ "flag" : 1,
1108+ "path" : "//etc/init/screen-cleanup.conf"
1109+ },
1110+ {
1111+ "conf_source" : 1,
1112+ "job_class" : {
1113+ "session" : 0,
1114+ "name" : "tty2"
1115+ },
1116+ "flag" : 1,
1117+ "path" : "//etc/init/tty2.conf"
1118+ },
1119+ {
1120+ "conf_source" : 1,
1121+ "job_class" : {
1122+ "session" : 0,
1123+ "name" : "udev"
1124+ },
1125+ "flag" : 1,
1126+ "path" : "//etc/init/udev.conf"
1127+ },
1128+ {
1129+ "conf_source" : 1,
1130+ "job_class" : {
1131+ "session" : 0,
1132+ "name" : "bluetooth"
1133+ },
1134+ "flag" : 1,
1135+ "path" : "//etc/init/bluetooth.conf"
1136+ },
1137+ {
1138+ "conf_source" : 1,
1139+ "job_class" : {
1140+ "session" : 0,
1141+ "name" : "bootmisc.sh"
1142+ },
1143+ "flag" : 1,
1144+ "path" : "//etc/init/bootmisc.sh.conf"
1145+ },
1146+ {
1147+ "conf_source" : 1,
1148+ "job_class" : {
1149+ "session" : 0,
1150+ "name" : "hostname"
1151+ },
1152+ "flag" : 1,
1153+ "path" : "//etc/init/hostname.conf"
1154+ },
1155+ {
1156+ "conf_source" : 1,
1157+ "job_class" : {
1158+ "session" : 0,
1159+ "name" : "hybrid-gfx"
1160+ },
1161+ "flag" : 1,
1162+ "path" : "//etc/init/hybrid-gfx.conf"
1163+ },
1164+ {
1165+ "conf_source" : 1,
1166+ "job_class" : {
1167+ "session" : 0,
1168+ "name" : "kmod"
1169+ },
1170+ "flag" : 1,
1171+ "path" : "//etc/init/kmod.conf"
1172+ },
1173+ {
1174+ "conf_source" : 1,
1175+ "job_class" : {
1176+ "session" : 0,
1177+ "name" : "tty6"
1178+ },
1179+ "flag" : 1,
1180+ "path" : "//etc/init/tty6.conf"
1181+ },
1182+ {
1183+ "conf_source" : 1,
1184+ "job_class" : {
1185+ "session" : 0,
1186+ "name" : "udevmonitor"
1187+ },
1188+ "flag" : 1,
1189+ "path" : "//etc/init/udevmonitor.conf"
1190+ },
1191+ {
1192+ "conf_source" : 1,
1193+ "job_class" : {
1194+ "session" : 0,
1195+ "name" : "upstart-file-bridge"
1196+ },
1197+ "flag" : 1,
1198+ "path" : "//etc/init/upstart-file-bridge.conf"
1199+ },
1200+ {
1201+ "conf_source" : 1,
1202+ "job_class" : {
1203+ "session" : 0,
1204+ "name" : "upstart-udev-bridge"
1205+ },
1206+ "flag" : 1,
1207+ "path" : "//etc/init/upstart-udev-bridge.conf"
1208+ }
1209+ ],
1210+ "session" : 0,
1211+ "flag" : 1,
1212+ "type" : "CONF_JOB_DIR",
1213+ "path" : "//etc/init"
1214+ }
1215+ ],
1216+ "job_classes" : [
1217+ {
1218+ "setuid" : null,
1219+ "jobs" : [],
1220+ "emits" : [],
1221+ "session" : 0,
1222+ "debug" : 0,
1223+ "export" : [],
1224+ "reload_signal" : 1,
1225+ "expect" : "EXPECT_NONE",
1226+ "chroot" : null,
1227+ "console" : "CONSOLE_LOG",
1228+ "kill_signal" : 15,
1229+ "name" : "avahi-cups-reload",
1230+ "instance" : "",
1231+ "description" : "Reload cups, upon starting avahi-daemon to make sure remote queues are populated",
1232+ "respawn_interval" : 5,
1233+ "process" : [
1234+ {
1235+ "script" : 0,
1236+ "command" : "reload cups"
1237+ },
1238+ {
1239+ "script" : 0,
1240+ "command" : null
1241+ },
1242+ {
1243+ "script" : 0,
1244+ "command" : null
1245+ },
1246+ {
1247+ "script" : 0,
1248+ "command" : null
1249+ },
1250+ {
1251+ "script" : 0,
1252+ "command" : null
1253+ },
1254+ {
1255+ "script" : 0,
1256+ "command" : null
1257+ }
1258+ ],
1259+ "apparmor_switch" : null,
1260+ "respawn_limit" : 10,
1261+ "author" : "Dmitrijs Ledkovs <dmitrijs.ledkovs@canonical.com>",
1262+ "respawn" : 0,
1263+ "nice" : -21,
1264+ "limits" : [
1265+ {
1266+ "rlim_cur" : 0,
1267+ "rlim_max" : 0
1268+ },
1269+ {
1270+ "rlim_cur" : 0,
1271+ "rlim_max" : 0
1272+ },
1273+ {
1274+ "rlim_cur" : 0,
1275+ "rlim_max" : 0
1276+ },
1277+ {
1278+ "rlim_cur" : 0,
1279+ "rlim_max" : 0
1280+ },
1281+ {
1282+ "rlim_cur" : 0,
1283+ "rlim_max" : 0
1284+ },
1285+ {
1286+ "rlim_cur" : 0,
1287+ "rlim_max" : 0
1288+ },
1289+ {
1290+ "rlim_cur" : 0,
1291+ "rlim_max" : 0
1292+ },
1293+ {
1294+ "rlim_cur" : 0,
1295+ "rlim_max" : 0
1296+ },
1297+ {
1298+ "rlim_cur" : 0,
1299+ "rlim_max" : 0
1300+ },
1301+ {
1302+ "rlim_cur" : 0,
1303+ "rlim_max" : 0
1304+ },
1305+ {
1306+ "rlim_cur" : 0,
1307+ "rlim_max" : 0
1308+ },
1309+ {
1310+ "rlim_cur" : 0,
1311+ "rlim_max" : 0
1312+ },
1313+ {
1314+ "rlim_cur" : 0,
1315+ "rlim_max" : 0
1316+ },
1317+ {
1318+ "rlim_cur" : 0,
1319+ "rlim_max" : 0
1320+ },
1321+ {
1322+ "rlim_cur" : 0,
1323+ "rlim_max" : 0
1324+ },
1325+ {
1326+ "rlim_cur" : 0,
1327+ "rlim_max" : 0
1328+ }
1329+ ],
1330+ "oom_score_adj" : 0,
1331+ "normalexit" : [],
1332+ "kill_timeout" : 5,
1333+ "usage" : null,
1334+ "env" : [],
1335+ "version" : null,
1336+ "task" : 1,
1337+ "path" : "/com/ubuntu/Upstart/jobs/avahi_2dcups_2dreload",
1338+ "deleted" : 0,
1339+ "chdir" : null,
1340+ "start_on" : [
1341+ {
1342+ "env" : [
1343+ "avahi-daemon"
1344+ ],
1345+ "value" : 0,
1346+ "name" : "started",
1347+ "type" : "EVENT_MATCH"
1348+ }
1349+ ],
1350+ "umask" : 18,
1351+ "setgid" : null
1352+ },
1353+ {
1354+ "setuid" : null,
1355+ "jobs" : [
1356+ {
1357+ "trace_state" : "TRACE_NONE",
1358+ "failed" : 0,
1359+ "state" : "JOB_RUNNING",
1360+ "failed_process" : "PROCESS_INVALID",
1361+ "pid" : [
1362+ 553,
1363+ 0,
1364+ 0,
1365+ 0,
1366+ 0,
1367+ 0
1368+ ],
1369+ "start_env" : [],
1370+ "trace_forks" : 2,
1371+ "respawn_time" : 0,
1372+ "log" : [
1373+ {
1374+ "path" : null
1375+ },
1376+ {
1377+ "path" : null
1378+ },
1379+ {
1380+ "path" : null
1381+ },
1382+ {
1383+ "path" : null
1384+ },
1385+ {
1386+ "path" : null
1387+ },
1388+ {
1389+ "path" : null
1390+ }
1391+ ],
1392+ "respawn_count" : 0,
1393+ "kill_process" : "PROCESS_INVALID",
1394+ "stop_on" : [
1395+ {
1396+ "env" : [
1397+ "dbus"
1398+ ],
1399+ "value" : 0,
1400+ "name" : "stopping",
1401+ "type" : "EVENT_MATCH"
1402+ }
1403+ ],
1404+ "env" : [
1405+ "PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/sbin:/bin",
1406+ "TERM=linux",
1407+ "JOB=dbus",
1408+ "INSTANCE=",
1409+ "UPSTART_EVENTS=filesystem started"
1410+ ],
1411+ "name" : "",
1412+ "path" : "/com/ubuntu/Upstart/jobs/avahi_2ddaemon/_",
1413+ "exit_status" : 0,
1414+ "goal" : "JOB_START",
1415+ "stop_env" : [],
1416+ "fds" : []
1417+ }
1418+ ],
1419+ "emits" : [],
1420+ "session" : 0,
1421+ "debug" : 0,
1422+ "export" : [],
1423+ "reload_signal" : 1,
1424+ "expect" : "EXPECT_DAEMON",
1425+ "stop_on" : [
1426+ {
1427+ "env" : [
1428+ "dbus"
1429+ ],
1430+ "value" : 0,
1431+ "name" : "stopping",
1432+ "type" : "EVENT_MATCH"
1433+ }
1434+ ],
1435+ "chroot" : null,
1436+ "console" : "CONSOLE_LOG",
1437+ "kill_signal" : 15,
1438+ "name" : "avahi-daemon",
1439+ "instance" : "",
1440+ "description" : "mDNS/DNS-SD daemon",
1441+ "respawn_interval" : 5,
1442+ "process" : [
1443+ {
1444+ "script" : 1,
1445+ "command" : "opts=\"-D\"\n[ -e \"/etc/eucalyptus/avahi-daemon.conf\" ] && opts=\"${opts} -f /etc/eucalyptus/avahi-daemon.conf\"\nexec avahi-daemon ${opts}\n"
1446+ },
1447+ {
1448+ "script" : 1,
1449+ "command" : "/lib/init/apparmor-profile-load usr.sbin.avahi-daemon\n"
1450+ },
1451+ {
1452+ "script" : 0,
1453+ "command" : null
1454+ },
1455+ {
1456+ "script" : 0,
1457+ "command" : null
1458+ },
1459+ {
1460+ "script" : 0,
1461+ "command" : null
1462+ },
1463+ {
1464+ "script" : 0,
1465+ "command" : null
1466+ }
1467+ ],
1468+ "apparmor_switch" : null,
1469+ "respawn_limit" : 10,
1470+ "author" : null,
1471+ "respawn" : 1,
1472+ "nice" : -21,
1473+ "limits" : [
1474+ {
1475+ "rlim_cur" : 0,
1476+ "rlim_max" : 0
1477+ },
1478+ {
1479+ "rlim_cur" : 0,
1480+ "rlim_max" : 0
1481+ },
1482+ {
1483+ "rlim_cur" : 0,
1484+ "rlim_max" : 0
1485+ },
1486+ {
1487+ "rlim_cur" : 0,
1488+ "rlim_max" : 0
1489+ },
1490+ {
1491+ "rlim_cur" : 0,
1492+ "rlim_max" : 0
1493+ },
1494+ {
1495+ "rlim_cur" : 0,
1496+ "rlim_max" : 0
1497+ },
1498+ {
1499+ "rlim_cur" : 0,
1500+ "rlim_max" : 0
1501+ },
1502+ {
1503+ "rlim_cur" : 0,
1504+ "rlim_max" : 0
1505+ },
1506+ {
1507+ "rlim_cur" : 0,
1508+ "rlim_max" : 0
1509+ },
1510+ {
1511+ "rlim_cur" : 0,
1512+ "rlim_max" : 0
1513+ },
1514+ {
1515+ "rlim_cur" : 0,
1516+ "rlim_max" : 0
1517+ },
1518+ {
1519+ "rlim_cur" : 0,
1520+ "rlim_max" : 0
1521+ },
1522+ {
1523+ "rlim_cur" : 0,
1524+ "rlim_max" : 0
1525+ },
1526+ {
1527+ "rlim_cur" : 0,
1528+ "rlim_max" : 0
1529+ },
1530+ {
1531+ "rlim_cur" : 0,
1532+ "rlim_max" : 0
1533+ },
1534+ {
1535+ "rlim_cur" : 0,
1536+ "rlim_max" : 0
1537+ }
1538+ ],
1539+ "oom_score_adj" : 0,
1540+ "normalexit" : [],
1541+ "kill_timeout" : 5,
1542+ "usage" : null,
1543+ "env" : [],
1544+ "version" : null,
1545+ "deleted" : 0,
1546+ "task" : 0,
1547+ "path" : "/com/ubuntu/Upstart/jobs/avahi_2ddaemon",
1548+ "chdir" : null,
1549+ "start_on" : [
1550+ {
1551+ "value" : 0,
1552+ "name" : "filesystem",
1553+ "type" : "EVENT_MATCH"
1554+ },
1555+ {
1556+ "env" : [
1557+ "dbus"
1558+ ],
1559+ "value" : 0,
1560+ "name" : "started",
1561+ "type" : "EVENT_MATCH"
1562+ },
1563+ {
1564+ "value" : 0,
1565+ "type" : "EVENT_AND"
1566+ }
1567+ ],
1568+ "umask" : 18,
1569+ "setgid" : null
1570+ },
1571+ {
1572+ "setuid" : null,
1573+ "jobs" : [],
1574+ "emits" : [],
1575+ "session" : 0,
1576+ "debug" : 0,
1577+ "export" : [],
1578+ "reload_signal" : 1,
1579+ "expect" : "EXPECT_NONE",
1580+ "chroot" : null,
1581+ "console" : "CONSOLE_LOG",
1582+ "kill_signal" : 15,
1583+ "name" : "mountall-net",
1584+ "instance" : "",
1585+ "description" : "Mount network filesystems",
1586+ "respawn_interval" : 5,
1587+ "process" : [
1588+ {
1589+ "script" : 1,
1590+ "command" : "PID=$(status mountall 2>/dev/null | sed -e '/start\\/running,/{s/.*,[^0-9]*//;q};d')\n[ -n \"$PID\" ] && kill -USR1 $PID || true\n"
1591+ },
1592+ {
1593+ "script" : 0,
1594+ "command" : null
1595+ },
1596+ {
1597+ "script" : 0,
1598+ "command" : null
1599+ },
1600+ {
1601+ "script" : 0,
1602+ "command" : null
1603+ },
1604+ {
1605+ "script" : 0,
1606+ "command" : null
1607+ },
1608+ {
1609+ "script" : 0,
1610+ "command" : null
1611+ }
1612+ ],
1613+ "apparmor_switch" : null,
1614+ "respawn_limit" : 10,
1615+ "author" : null,
1616+ "respawn" : 0,
1617+ "nice" : -21,
1618+ "limits" : [
1619+ {
1620+ "rlim_cur" : 0,
1621+ "rlim_max" : 0
1622+ },
1623+ {
1624+ "rlim_cur" : 0,
1625+ "rlim_max" : 0
1626+ },
1627+ {
1628+ "rlim_cur" : 0,
1629+ "rlim_max" : 0
1630+ },
1631+ {
1632+ "rlim_cur" : 0,
1633+ "rlim_max" : 0
1634+ },
1635+ {
1636+ "rlim_cur" : 0,
1637+ "rlim_max" : 0
1638+ },
1639+ {
1640+ "rlim_cur" : 0,
1641+ "rlim_max" : 0
1642+ },
1643+ {
1644+ "rlim_cur" : 0,
1645+ "rlim_max" : 0
1646+ },
1647+ {
1648+ "rlim_cur" : 0,
1649+ "rlim_max" : 0
1650+ },
1651+ {
1652+ "rlim_cur" : 0,
1653+ "rlim_max" : 0
1654+ },
1655+ {
1656+ "rlim_cur" : 0,
1657+ "rlim_max" : 0
1658+ },
1659+ {
1660+ "rlim_cur" : 0,
1661+ "rlim_max" : 0
1662+ },
1663+ {
1664+ "rlim_cur" : 0,
1665+ "rlim_max" : 0
1666+ },
1667+ {
1668+ "rlim_cur" : 0,
1669+ "rlim_max" : 0
1670+ },
1671+ {
1672+ "rlim_cur" : 0,
1673+ "rlim_max" : 0
1674+ },
1675+ {
1676+ "rlim_cur" : 0,
1677+ "rlim_max" : 0
1678+ },
1679+ {
1680+ "rlim_cur" : 0,
1681+ "rlim_max" : 0
1682+ }
1683+ ],
1684+ "oom_score_adj" : 0,
1685+ "normalexit" : [],
1686+ "kill_timeout" : 5,
1687+ "usage" : null,
1688+ "env" : [],
1689+ "version" : null,
1690+ "task" : 1,
1691+ "path" : "/com/ubuntu/Upstart/jobs/mountall_2dnet",
1692+ "deleted" : 0,
1693+ "chdir" : null,
1694+ "start_on" : [
1695+ {
1696+ "value" : 0,
1697+ "name" : "net-device-up",
1698+ "type" : "EVENT_MATCH"
1699+ }
1700+ ],
1701+ "umask" : 18,
1702+ "setgid" : null
1703+ },
1704+ {
1705+ "setuid" : null,
1706+ "jobs" : [
1707+ {
1708+ "trace_state" : "TRACE_NONE",
1709+ "failed" : 0,
1710+ "state" : "JOB_RUNNING",
1711+ "failed_process" : "PROCESS_INVALID",
1712+ "pid" : [
1713+ 0,
1714+ 0,
1715+ 0,
1716+ 0,
1717+ 0,
1718+ 0
1719+ ],
1720+ "start_env" : [],
1721+ "trace_forks" : 0,
1722+ "respawn_time" : 0,
1723+ "log" : [
1724+ {
1725+ "path" : null
1726+ },
1727+ {
1728+ "path" : null
1729+ },
1730+ {
1731+ "path" : null
1732+ },
1733+ {
1734+ "path" : null
1735+ },
1736+ {
1737+ "path" : null
1738+ },
1739+ {
1740+ "path" : null
1741+ }
1742+ ],
1743+ "respawn_count" : 0,
1744+ "kill_process" : "PROCESS_INVALID",
1745+ "env" : [
1746+ "PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/sbin:/bin",
1747+ "TERM=linux",
1748+ "UPSTART_EVENTS=virtual-filesystems"
1749+ ],
1750+ "name" : "",
1751+ "path" : "/com/ubuntu/Upstart/jobs/mountnfs_2dbootclean_2esh/_",
1752+ "exit_status" : 0,
1753+ "goal" : "JOB_START",
1754+ "stop_env" : [],
1755+ "fds" : []
1756+ }
1757+ ],
1758+ "emits" : [],
1759+ "session" : 0,
1760+ "debug" : 0,
1761+ "export" : [],
1762+ "reload_signal" : 1,
1763+ "expect" : "EXPECT_NONE",
1764+ "chroot" : null,
1765+ "console" : "CONSOLE_LOG",
1766+ "kill_signal" : 15,
1767+ "name" : "mountnfs-bootclean.sh",
1768+ "instance" : "",
1769+ "description" : null,
1770+ "respawn_interval" : 5,
1771+ "process" : [
1772+ {
1773+ "script" : 0,
1774+ "command" : null
1775+ },
1776+ {
1777+ "script" : 0,
1778+ "command" : null
1779+ },
1780+ {
1781+ "script" : 0,
1782+ "command" : null
1783+ },
1784+ {
1785+ "script" : 0,
1786+ "command" : null
1787+ },
1788+ {
1789+ "script" : 0,
1790+ "command" : null
1791+ },
1792+ {
1793+ "script" : 0,
1794+ "command" : null
1795+ }
1796+ ],
1797+ "apparmor_switch" : null,
1798+ "respawn_limit" : 10,
1799+ "author" : null,
1800+ "respawn" : 0,
1801+ "nice" : -21,
1802+ "limits" : [
1803+ {
1804+ "rlim_cur" : 0,
1805+ "rlim_max" : 0
1806+ },
1807+ {
1808+ "rlim_cur" : 0,
1809+ "rlim_max" : 0
1810+ },
1811+ {
1812+ "rlim_cur" : 0,
1813+ "rlim_max" : 0
1814+ },
1815+ {
1816+ "rlim_cur" : 0,
1817+ "rlim_max" : 0
1818+ },
1819+ {
1820+ "rlim_cur" : 0,
1821+ "rlim_max" : 0
1822+ },
1823+ {
1824+ "rlim_cur" : 0,
1825+ "rlim_max" : 0
1826+ },
1827+ {
1828+ "rlim_cur" : 0,
1829+ "rlim_max" : 0
1830+ },
1831+ {
1832+ "rlim_cur" : 0,
1833+ "rlim_max" : 0
1834+ },
1835+ {
1836+ "rlim_cur" : 0,
1837+ "rlim_max" : 0
1838+ },
1839+ {
1840+ "rlim_cur" : 0,
1841+ "rlim_max" : 0
1842+ },
1843+ {
1844+ "rlim_cur" : 0,
1845+ "rlim_max" : 0
1846+ },
1847+ {
1848+ "rlim_cur" : 0,
1849+ "rlim_max" : 0
1850+ },
1851+ {
1852+ "rlim_cur" : 0,
1853+ "rlim_max" : 0
1854+ },
1855+ {
1856+ "rlim_cur" : 0,
1857+ "rlim_max" : 0
1858+ },
1859+ {
1860+ "rlim_cur" : 0,
1861+ "rlim_max" : 0
1862+ },
1863+ {
1864+ "rlim_cur" : 0,
1865+ "rlim_max" : 0
1866+ }
1867+ ],
1868+ "oom_score_adj" : 0,
1869+ "normalexit" : [],
1870+ "kill_timeout" : 5,
1871+ "usage" : null,
1872+ "env" : [],
1873+ "version" : null,
1874+ "task" : 0,
1875+ "path" : "/com/ubuntu/Upstart/jobs/mountnfs_2dbootclean_2esh",
1876+ "deleted" : 0,
1877+ "chdir" : null,
1878+ "start_on" : [
1879+ {
1880+ "value" : 0,
1881+ "name" : "virtual-filesystems",
1882+ "type" : "EVENT_MATCH"
1883+ }
1884+ ],
1885+ "umask" : 18,
1886+ "setgid" : null
1887+ },
1888+ {
1889+ "setuid" : null,
1890+ "jobs" : [],
1891+ "emits" : [],
1892+ "session" : 0,
1893+ "debug" : 0,
1894+ "export" : [],
1895+ "reload_signal" : 1,
1896+ "expect" : "EXPECT_NONE",
1897+ "chroot" : null,
1898+ "console" : "CONSOLE_LOG",
1899+ "kill_signal" : 15,
1900+ "name" : "passwd",
1901+ "instance" : "",
1902+ "description" : "Clear passwd locks",
1903+ "respawn_interval" : 5,
1904+ "process" : [
1905+ {
1906+ "script" : 0,
1907+ "command" : "rm -f /etc/gshadow.lock /etc/shadow.lock /etc/passwd.lock /etc/group.lock"
1908+ },
1909+ {
1910+ "script" : 0,
1911+ "command" : null
1912+ },
1913+ {
1914+ "script" : 0,
1915+ "command" : null
1916+ },
1917+ {
1918+ "script" : 0,
1919+ "command" : null
1920+ },
1921+ {
1922+ "script" : 0,
1923+ "command" : null
1924+ },
1925+ {
1926+ "script" : 0,
1927+ "command" : null
1928+ }
1929+ ],
1930+ "apparmor_switch" : null,
1931+ "respawn_limit" : 10,
1932+ "author" : null,
1933+ "respawn" : 0,
1934+ "nice" : -21,
1935+ "limits" : [
1936+ {
1937+ "rlim_cur" : 0,
1938+ "rlim_max" : 0
1939+ },
1940+ {
1941+ "rlim_cur" : 0,
1942+ "rlim_max" : 0
1943+ },
1944+ {
1945+ "rlim_cur" : 0,
1946+ "rlim_max" : 0
1947+ },
1948+ {
1949+ "rlim_cur" : 0,
1950+ "rlim_max" : 0
1951+ },
1952+ {
1953+ "rlim_cur" : 0,
1954+ "rlim_max" : 0
1955+ },
1956+ {
1957+ "rlim_cur" : 0,
1958+ "rlim_max" : 0
1959+ },
1960+ {
1961+ "rlim_cur" : 0,
1962+ "rlim_max" : 0
1963+ },
1964+ {
1965+ "rlim_cur" : 0,
1966+ "rlim_max" : 0
1967+ },
1968+ {
1969+ "rlim_cur" : 0,
1970+ "rlim_max" : 0
1971+ },
1972+ {
1973+ "rlim_cur" : 0,
1974+ "rlim_max" : 0
1975+ },
1976+ {
1977+ "rlim_cur" : 0,
1978+ "rlim_max" : 0
1979+ },
1980+ {
1981+ "rlim_cur" : 0,
1982+ "rlim_max" : 0
1983+ },
1984+ {
1985+ "rlim_cur" : 0,
1986+ "rlim_max" : 0
1987+ },
1988+ {
1989+ "rlim_cur" : 0,
1990+ "rlim_max" : 0
1991+ },
1992+ {
1993+ "rlim_cur" : 0,
1994+ "rlim_max" : 0
1995+ },
1996+ {
1997+ "rlim_cur" : 0,
1998+ "rlim_max" : 0
1999+ }
2000+ ],
2001+ "oom_score_adj" : 0,
2002+ "normalexit" : [],
2003+ "kill_timeout" : 5,
2004+ "usage" : null,
2005+ "env" : [],
2006+ "version" : null,
2007+ "task" : 1,
2008+ "path" : "/com/ubuntu/Upstart/jobs/passwd",
2009+ "deleted" : 0,
2010+ "chdir" : null,
2011+ "start_on" : [
2012+ {
2013+ "value" : 0,
2014+ "name" : "filesystem",
2015+ "type" : "EVENT_MATCH"
2016+ }
2017+ ],
2018+ "umask" : 18,
2019+ "setgid" : null
2020+ },
2021+ {
2022+ "setuid" : null,
2023+ "jobs" : [],
2024+ "emits" : [
2025+ "deconfiguring-networking",
2026+ "unmounted-remote-filesystems"
2027+ ],
2028+ "session" : 0,
2029+ "debug" : 0,
2030+ "export" : [
2031+ "RUNLEVEL",
2032+ "PREVLEVEL"
2033+ ],
2034+ "reload_signal" : 1,
2035+ "expect" : "EXPECT_NONE",
2036+ "stop_on" : [
2037+ {
2038+ "env" : [
2039+ "[!$RUNLEVEL]"
2040+ ],
2041+ "value" : 0,
2042+ "name" : "runlevel",
2043+ "type" : "EVENT_MATCH"
2044+ }
2045+ ],
2046+ "chroot" : null,
2047+ "console" : "CONSOLE_OUTPUT",
2048+ "kill_signal" : 15,
2049+ "name" : "rc",
2050+ "instance" : "",
2051+ "description" : "System V runlevel compatibility",
2052+ "respawn_interval" : 5,
2053+ "process" : [
2054+ {
2055+ "script" : 0,
2056+ "command" : "/etc/init.d/rc $RUNLEVEL"
2057+ },
2058+ {
2059+ "script" : 0,
2060+ "command" : null
2061+ },
2062+ {
2063+ "script" : 0,
2064+ "command" : null
2065+ },
2066+ {
2067+ "script" : 0,
2068+ "command" : null
2069+ },
2070+ {
2071+ "script" : 0,
2072+ "command" : null
2073+ },
2074+ {
2075+ "script" : 0,
2076+ "command" : null
2077+ }
2078+ ],
2079+ "apparmor_switch" : null,
2080+ "respawn_limit" : 10,
2081+ "author" : "Scott James Remnant <scott@netsplit.com>",
2082+ "respawn" : 0,
2083+ "nice" : -21,
2084+ "limits" : [
2085+ {
2086+ "rlim_cur" : 0,
2087+ "rlim_max" : 0
2088+ },
2089+ {
2090+ "rlim_cur" : 0,
2091+ "rlim_max" : 0
2092+ },
2093+ {
2094+ "rlim_cur" : 0,
2095+ "rlim_max" : 0
2096+ },
2097+ {
2098+ "rlim_cur" : 0,
2099+ "rlim_max" : 0
2100+ },
2101+ {
2102+ "rlim_cur" : 0,
2103+ "rlim_max" : 0
2104+ },
2105+ {
2106+ "rlim_cur" : 0,
2107+ "rlim_max" : 0
2108+ },
2109+ {
2110+ "rlim_cur" : 0,
2111+ "rlim_max" : 0
2112+ },
2113+ {
2114+ "rlim_cur" : 0,
2115+ "rlim_max" : 0
2116+ },
2117+ {
2118+ "rlim_cur" : 0,
2119+ "rlim_max" : 0
2120+ },
2121+ {
2122+ "rlim_cur" : 0,
2123+ "rlim_max" : 0
2124+ },
2125+ {
2126+ "rlim_cur" : 0,
2127+ "rlim_max" : 0
2128+ },
2129+ {
2130+ "rlim_cur" : 0,
2131+ "rlim_max" : 0
2132+ },
2133+ {
2134+ "rlim_cur" : 0,
2135+ "rlim_max" : 0
2136+ },
2137+ {
2138+ "rlim_cur" : 0,
2139+ "rlim_max" : 0
2140+ },
2141+ {
2142+ "rlim_cur" : 0,
2143+ "rlim_max" : 0
2144+ },
2145+ {
2146+ "rlim_cur" : 0,
2147+ "rlim_max" : 0
2148+ }
2149+ ],
2150+ "oom_score_adj" : 0,
2151+ "normalexit" : [],
2152+ "kill_timeout" : 5,
2153+ "usage" : null,
2154+ "env" : [
2155+ "INIT_VERBOSE"
2156+ ],
2157+ "version" : null,
2158+ "deleted" : 0,
2159+ "task" : 1,
2160+ "path" : "/com/ubuntu/Upstart/jobs/rc",
2161+ "chdir" : null,
2162+ "start_on" : [
2163+ {
2164+ "env" : [
2165+ "[0123456]"
2166+ ],
2167+ "value" : 0,
2168+ "name" : "runlevel",
2169+ "type" : "EVENT_MATCH"
2170+ }
2171+ ],
2172+ "umask" : 18,
2173+ "setgid" : null
2174+ },
2175+ {
2176+ "setuid" : null,
2177+ "jobs" : [
2178+ {
2179+ "trace_state" : "TRACE_NONE",
2180+ "failed" : 0,
2181+ "state" : "JOB_RUNNING",
2182+ "failed_process" : "PROCESS_INVALID",
2183+ "pid" : [
2184+ 538,
2185+ 0,
2186+ 0,
2187+ 0,
2188+ 0,
2189+ 0
2190+ ],
2191+ "start_env" : [],
2192+ "trace_forks" : 1,
2193+ "respawn_time" : 0,
2194+ "log" : [
2195+ {
2196+ "path" : null
2197+ },
2198+ {
2199+ "path" : null
2200+ },
2201+ {
2202+ "path" : null
2203+ },
2204+ {
2205+ "path" : null
2206+ },
2207+ {
2208+ "path" : null
2209+ },
2210+ {
2211+ "path" : null
2212+ }
2213+ ],
2214+ "respawn_count" : 0,
2215+ "kill_process" : "PROCESS_INVALID",
2216+ "stop_on" : [
2217+ {
2218+ "env" : [
2219+ "[06]"
2220+ ],
2221+ "value" : 0,
2222+ "name" : "runlevel",
2223+ "type" : "EVENT_MATCH"
2224+ }
2225+ ],
2226+ "env" : [
2227+ "PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/sbin:/bin",
2228+ "TERM=linux",
2229+ "UPSTART_EVENTS=filesystem"
2230+ ],
2231+ "name" : "",
2232+ "path" : "/com/ubuntu/Upstart/jobs/rsyslog/_",
2233+ "exit_status" : 0,
2234+ "goal" : "JOB_START",
2235+ "stop_env" : [],
2236+ "fds" : []
2237+ }
2238+ ],
2239+ "emits" : [],
2240+ "session" : 0,
2241+ "debug" : 0,
2242+ "export" : [],
2243+ "reload_signal" : 1,
2244+ "expect" : "EXPECT_FORK",
2245+ "stop_on" : [
2246+ {
2247+ "env" : [
2248+ "[06]"
2249+ ],
2250+ "value" : 0,
2251+ "name" : "runlevel",
2252+ "type" : "EVENT_MATCH"
2253+ }
2254+ ],
2255+ "chroot" : null,
2256+ "console" : "CONSOLE_LOG",
2257+ "kill_signal" : 15,
2258+ "name" : "rsyslog",
2259+ "instance" : "",
2260+ "description" : "system logging daemon",
2261+ "respawn_interval" : 5,
2262+ "process" : [
2263+ {
2264+ "script" : 1,
2265+ "command" : ". /etc/default/rsyslog\nexec rsyslogd $RSYSLOGD_OPTIONS\n"
2266+ },
2267+ {
2268+ "script" : 1,
2269+ "command" : "/lib/init/apparmor-profile-load usr.sbin.rsyslogd\n"
2270+ },
2271+ {
2272+ "script" : 0,
2273+ "command" : null
2274+ },
2275+ {
2276+ "script" : 0,
2277+ "command" : null
2278+ },
2279+ {
2280+ "script" : 0,
2281+ "command" : null
2282+ },
2283+ {
2284+ "script" : 0,
2285+ "command" : null
2286+ }
2287+ ],
2288+ "apparmor_switch" : null,
2289+ "respawn_limit" : 10,
2290+ "author" : null,
2291+ "respawn" : 1,
2292+ "nice" : -21,
2293+ "limits" : [
2294+ {
2295+ "rlim_cur" : 0,
2296+ "rlim_max" : 0
2297+ },
2298+ {
2299+ "rlim_cur" : 0,
2300+ "rlim_max" : 0
2301+ },
2302+ {
2303+ "rlim_cur" : 0,
2304+ "rlim_max" : 0
2305+ },
2306+ {
2307+ "rlim_cur" : 0,
2308+ "rlim_max" : 0
2309+ },
2310+ {
2311+ "rlim_cur" : 0,
2312+ "rlim_max" : 0
2313+ },
2314+ {
2315+ "rlim_cur" : 0,
2316+ "rlim_max" : 0
2317+ },
2318+ {
2319+ "rlim_cur" : 0,
2320+ "rlim_max" : 0
2321+ },
2322+ {
2323+ "rlim_cur" : 0,
2324+ "rlim_max" : 0
2325+ },
2326+ {
2327+ "rlim_cur" : 0,
2328+ "rlim_max" : 0
2329+ },
2330+ {
2331+ "rlim_cur" : 0,
2332+ "rlim_max" : 0
2333+ },
2334+ {
2335+ "rlim_cur" : 0,
2336+ "rlim_max" : 0
2337+ },
2338+ {
2339+ "rlim_cur" : 0,
2340+ "rlim_max" : 0
2341+ },
2342+ {
2343+ "rlim_cur" : 0,
2344+ "rlim_max" : 0
2345+ },
2346+ {
2347+ "rlim_cur" : 0,
2348+ "rlim_max" : 0
2349+ },
2350+ {
2351+ "rlim_cur" : 0,
2352+ "rlim_max" : 0
2353+ },
2354+ {
2355+ "rlim_cur" : 0,
2356+ "rlim_max" : 0
2357+ }
2358+ ],
2359+ "oom_score_adj" : 0,
2360+ "normalexit" : [],
2361+ "kill_timeout" : 5,
2362+ "usage" : null,
2363+ "env" : [],
2364+ "version" : null,
2365+ "deleted" : 0,
2366+ "task" : 0,
2367+ "path" : "/com/ubuntu/Upstart/jobs/rsyslog",
2368+ "chdir" : null,
2369+ "start_on" : [
2370+ {
2371+ "value" : 0,
2372+ "name" : "filesystem",
2373+ "type" : "EVENT_MATCH"
2374+ }
2375+ ],
2376+ "umask" : 18,
2377+ "setgid" : null
2378+ },
2379+ {
2380+ "setuid" : null,
2381+ "jobs" : [],
2382+ "emits" : [],
2383+ "session" : 0,
2384+ "debug" : 0,
2385+ "export" : [],
2386+ "reload_signal" : 1,
2387+ "expect" : "EXPECT_NONE",
2388+ "chroot" : null,
2389+ "console" : "CONSOLE_LOG",
2390+ "kill_signal" : 15,
2391+ "name" : "screen-cleanup",
2392+ "instance" : "",
2393+ "description" : "GNU Screen Cleanup",
2394+ "respawn_interval" : 5,
2395+ "process" : [
2396+ {
2397+ "script" : 1,
2398+ "command" : "SCREENDIR=/var/run/screen\nif [ -L $SCREENDIR ] || [ ! -d $SCREENDIR ]; then\n\trm -f $SCREENDIR\n\tmkdir $SCREENDIR\n\tchown root:utmp $SCREENDIR\nfi\nfind $SCREENDIR -type p -delete\n# If the local admin has used dpkg-statoverride to install the screen\n# binary with different set[ug]id bits, change the permissions of\n# $SCREENDIR accordingly\nBINARYPERM=`stat -c%a /usr/bin/screen`\nif [ \"$BINARYPERM\" -ge 4000 ]; then\n\tchmod 0755 $SCREENDIR\nelif [ \"$BINARYPERM\" -ge 2000 ]; then\n\tchmod 0775 $SCREENDIR\nelse\n\tchmod 0777 $SCREENDIR\nfi\n"
2399+ },
2400+ {
2401+ "script" : 0,
2402+ "command" : null
2403+ },
2404+ {
2405+ "script" : 0,
2406+ "command" : null
2407+ },
2408+ {
2409+ "script" : 0,
2410+ "command" : null
2411+ },
2412+ {
2413+ "script" : 0,
2414+ "command" : null
2415+ },
2416+ {
2417+ "script" : 0,
2418+ "command" : null
2419+ }
2420+ ],
2421+ "apparmor_switch" : null,
2422+ "respawn_limit" : 10,
2423+ "author" : "Dustin Kirkland <kirkland@canonical.com>",
2424+ "respawn" : 0,
2425+ "nice" : -21,
2426+ "limits" : [
2427+ {
2428+ "rlim_cur" : 0,
2429+ "rlim_max" : 0
2430+ },
2431+ {
2432+ "rlim_cur" : 0,
2433+ "rlim_max" : 0
2434+ },
2435+ {
2436+ "rlim_cur" : 0,
2437+ "rlim_max" : 0
2438+ },
2439+ {
2440+ "rlim_cur" : 0,
2441+ "rlim_max" : 0
2442+ },
2443+ {
2444+ "rlim_cur" : 0,
2445+ "rlim_max" : 0
2446+ },
2447+ {
2448+ "rlim_cur" : 0,
2449+ "rlim_max" : 0
2450+ },
2451+ {
2452+ "rlim_cur" : 0,
2453+ "rlim_max" : 0
2454+ },
2455+ {
2456+ "rlim_cur" : 0,
2457+ "rlim_max" : 0
2458+ },
2459+ {
2460+ "rlim_cur" : 0,
2461+ "rlim_max" : 0
2462+ },
2463+ {
2464+ "rlim_cur" : 0,
2465+ "rlim_max" : 0
2466+ },
2467+ {
2468+ "rlim_cur" : 0,
2469+ "rlim_max" : 0
2470+ },
2471+ {
2472+ "rlim_cur" : 0,
2473+ "rlim_max" : 0
2474+ },
2475+ {
2476+ "rlim_cur" : 0,
2477+ "rlim_max" : 0
2478+ },
2479+ {
2480+ "rlim_cur" : 0,
2481+ "rlim_max" : 0
2482+ },
2483+ {
2484+ "rlim_cur" : 0,
2485+ "rlim_max" : 0
2486+ },
2487+ {
2488+ "rlim_cur" : 0,
2489+ "rlim_max" : 0
2490+ }
2491+ ],
2492+ "oom_score_adj" : 0,
2493+ "normalexit" : [],
2494+ "kill_timeout" : 5,
2495+ "usage" : null,
2496+ "env" : [],
2497+ "version" : null,
2498+ "task" : 1,
2499+ "path" : "/com/ubuntu/Upstart/jobs/screen_2dcleanup",
2500+ "deleted" : 0,
2501+ "chdir" : null,
2502+ "start_on" : [
2503+ {
2504+ "value" : 0,
2505+ "name" : "filesystem",
2506+ "type" : "EVENT_MATCH"
2507+ }
2508+ ],
2509+ "umask" : 18,
2510+ "setgid" : null
2511+ },
2512+ {
2513+ "setuid" : null,
2514+ "jobs" : [],
2515+ "emits" : [],
2516+ "session" : 0,
2517+ "debug" : 0,
2518+ "export" : [],
2519+ "reload_signal" : 1,
2520+ "expect" : "EXPECT_NONE",
2521+ "chroot" : null,
2522+ "console" : "CONSOLE_LOG",
2523+ "kill_signal" : 15,
2524+ "name" : "startpar-bridge",
2525+ "instance" : "$JOB-$INSTANCE-$UPSTART_EVENTS",
2526+ "description" : "startpar bridge for notification of upstart job start/stop",
2527+ "respawn_interval" : 5,
2528+ "process" : [
2529+ {
2530+ "script" : 0,
2531+ "command" : "startpar-upstart-inject \"$JOB\" \"$INSTANCE\" \"$UPSTART_EVENTS\""
2532+ },
2533+ {
2534+ "script" : 0,
2535+ "command" : null
2536+ },
2537+ {
2538+ "script" : 0,
2539+ "command" : null
2540+ },
2541+ {
2542+ "script" : 0,
2543+ "command" : null
2544+ },
2545+ {
2546+ "script" : 0,
2547+ "command" : null
2548+ },
2549+ {
2550+ "script" : 0,
2551+ "command" : null
2552+ }
2553+ ],
2554+ "apparmor_switch" : null,
2555+ "respawn_limit" : 10,
2556+ "author" : "Steve Langasek <steve.langasek@ubuntu.com>",
2557+ "respawn" : 0,
2558+ "nice" : -21,
2559+ "limits" : [
2560+ {
2561+ "rlim_cur" : 0,
2562+ "rlim_max" : 0
2563+ },
2564+ {
2565+ "rlim_cur" : 0,
2566+ "rlim_max" : 0
2567+ },
2568+ {
2569+ "rlim_cur" : 0,
2570+ "rlim_max" : 0
2571+ },
2572+ {
2573+ "rlim_cur" : 0,
2574+ "rlim_max" : 0
2575+ },
2576+ {
2577+ "rlim_cur" : 0,
2578+ "rlim_max" : 0
2579+ },
2580+ {
2581+ "rlim_cur" : 0,
2582+ "rlim_max" : 0
2583+ },
2584+ {
2585+ "rlim_cur" : 0,
2586+ "rlim_max" : 0
2587+ },
2588+ {
2589+ "rlim_cur" : 0,
2590+ "rlim_max" : 0
2591+ },
2592+ {
2593+ "rlim_cur" : 0,
2594+ "rlim_max" : 0
2595+ },
2596+ {
2597+ "rlim_cur" : 0,
2598+ "rlim_max" : 0
2599+ },
2600+ {
2601+ "rlim_cur" : 0,
2602+ "rlim_max" : 0
2603+ },
2604+ {
2605+ "rlim_cur" : 0,
2606+ "rlim_max" : 0
2607+ },
2608+ {
2609+ "rlim_cur" : 0,
2610+ "rlim_max" : 0
2611+ },
2612+ {
2613+ "rlim_cur" : 0,
2614+ "rlim_max" : 0
2615+ },
2616+ {
2617+ "rlim_cur" : 0,
2618+ "rlim_max" : 0
2619+ },
2620+ {
2621+ "rlim_cur" : 0,
2622+ "rlim_max" : 0
2623+ }
2624+ ],
2625+ "oom_score_adj" : 0,
2626+ "normalexit" : [],
2627+ "kill_timeout" : 5,
2628+ "usage" : null,
2629+ "env" : [],
2630+ "version" : null,
2631+ "task" : 1,
2632+ "path" : "/com/ubuntu/Upstart/jobs/startpar_2dbridge",
2633+ "deleted" : 0,
2634+ "chdir" : null,
2635+ "start_on" : [
2636+ {
2637+ "env" : [
2638+ "JOB!=startpar-bridge"
2639+ ],
2640+ "value" : 0,
2641+ "name" : "started",
2642+ "type" : "EVENT_MATCH"
2643+ },
2644+ {
2645+ "env" : [
2646+ "JOB!=startpar-bridge"
2647+ ],
2648+ "value" : 0,
2649+ "name" : "stopped",
2650+ "type" : "EVENT_MATCH"
2651+ },
2652+ {
2653+ "value" : 0,
2654+ "type" : "EVENT_OR"
2655+ }
2656+ ],
2657+ "umask" : 18,
2658+ "setgid" : null
2659+ },
2660+ {
2661+ "setuid" : null,
2662+ "jobs" : [
2663+ {
2664+ "trace_state" : "TRACE_NONE",
2665+ "failed" : 0,
2666+ "state" : "JOB_RUNNING",
2667+ "failed_process" : "PROCESS_INVALID",
2668+ "pid" : [
2669+ 933,
2670+ 0,
2671+ 0,
2672+ 0,
2673+ 0,
2674+ 0
2675+ ],
2676+ "start_env" : [],
2677+ "trace_forks" : 0,
2678+ "respawn_time" : 0,
2679+ "log" : [
2680+ {
2681+ "path" : null
2682+ },
2683+ {
2684+ "path" : null
2685+ },
2686+ {
2687+ "path" : null
2688+ },
2689+ {
2690+ "path" : null
2691+ },
2692+ {
2693+ "path" : null
2694+ },
2695+ {
2696+ "path" : null
2697+ }
2698+ ],
2699+ "respawn_count" : 0,
2700+ "kill_process" : "PROCESS_INVALID",
2701+ "stop_on" : [
2702+ {
2703+ "env" : [
2704+ "[!23]"
2705+ ],
2706+ "value" : 0,
2707+ "name" : "runlevel",
2708+ "type" : "EVENT_MATCH"
2709+ }
2710+ ],
2711+ "env" : [
2712+ "PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/sbin:/bin",
2713+ "TERM=linux",
2714+ "RUNLEVEL=2",
2715+ "PREVLEVEL=N",
2716+ "UPSTART_EVENTS=runlevel not-container"
2717+ ],
2718+ "name" : "",
2719+ "path" : "/com/ubuntu/Upstart/jobs/tty4/_",
2720+ "exit_status" : 0,
2721+ "goal" : "JOB_START",
2722+ "stop_env" : [],
2723+ "fds" : []
2724+ }
2725+ ],
2726+ "emits" : [],
2727+ "session" : 0,
2728+ "debug" : 0,
2729+ "export" : [],
2730+ "reload_signal" : 1,
2731+ "expect" : "EXPECT_NONE",
2732+ "stop_on" : [
2733+ {
2734+ "env" : [
2735+ "[!23]"
2736+ ],
2737+ "value" : 0,
2738+ "name" : "runlevel",
2739+ "type" : "EVENT_MATCH"
2740+ }
2741+ ],
2742+ "chroot" : null,
2743+ "console" : "CONSOLE_LOG",
2744+ "kill_signal" : 15,
2745+ "name" : "tty4",
2746+ "instance" : "",
2747+ "description" : null,
2748+ "respawn_interval" : 5,
2749+ "process" : [
2750+ {
2751+ "script" : 0,
2752+ "command" : "/sbin/getty -8 38400 tty4"
2753+ },
2754+ {
2755+ "script" : 0,
2756+ "command" : null
2757+ },
2758+ {
2759+ "script" : 0,
2760+ "command" : null
2761+ },
2762+ {
2763+ "script" : 0,
2764+ "command" : null
2765+ },
2766+ {
2767+ "script" : 0,
2768+ "command" : null
2769+ },
2770+ {
2771+ "script" : 0,
2772+ "command" : null
2773+ }
2774+ ],
2775+ "apparmor_switch" : null,
2776+ "respawn_limit" : 10,
2777+ "author" : null,
2778+ "respawn" : 1,
2779+ "nice" : -21,
2780+ "limits" : [
2781+ {
2782+ "rlim_cur" : 0,
2783+ "rlim_max" : 0
2784+ },
2785+ {
2786+ "rlim_cur" : 0,
2787+ "rlim_max" : 0
2788+ },
2789+ {
2790+ "rlim_cur" : 0,
2791+ "rlim_max" : 0
2792+ },
2793+ {
2794+ "rlim_cur" : 0,
2795+ "rlim_max" : 0
2796+ },
2797+ {
2798+ "rlim_cur" : 0,
2799+ "rlim_max" : 0
2800+ },
2801+ {
2802+ "rlim_cur" : 0,
2803+ "rlim_max" : 0
2804+ },
2805+ {
2806+ "rlim_cur" : 0,
2807+ "rlim_max" : 0
2808+ },
2809+ {
2810+ "rlim_cur" : 0,
2811+ "rlim_max" : 0
2812+ },
2813+ {
2814+ "rlim_cur" : 0,
2815+ "rlim_max" : 0
2816+ },
2817+ {
2818+ "rlim_cur" : 0,
2819+ "rlim_max" : 0
2820+ },
2821+ {
2822+ "rlim_cur" : 0,
2823+ "rlim_max" : 0
2824+ },
2825+ {
2826+ "rlim_cur" : 0,
2827+ "rlim_max" : 0
2828+ },
2829+ {
2830+ "rlim_cur" : 0,
2831+ "rlim_max" : 0
2832+ },
2833+ {
2834+ "rlim_cur" : 0,
2835+ "rlim_max" : 0
2836+ },
2837+ {
2838+ "rlim_cur" : 0,
2839+ "rlim_max" : 0
2840+ },
2841+ {
2842+ "rlim_cur" : 0,
2843+ "rlim_max" : 0
2844+ }
2845+ ],
2846+ "oom_score_adj" : 0,
2847+ "normalexit" : [],
2848+ "kill_timeout" : 5,
2849+ "usage" : null,
2850+ "env" : [],
2851+ "version" : null,
2852+ "deleted" : 0,
2853+ "task" : 0,
2854+ "path" : "/com/ubuntu/Upstart/jobs/tty4",
2855+ "chdir" : null,
2856+ "start_on" : [
2857+ {
2858+ "env" : [
2859+ "[23]"
2860+ ],
2861+ "value" : 0,
2862+ "name" : "runlevel",
2863+ "type" : "EVENT_MATCH"
2864+ },
2865+ {
2866+ "value" : 0,
2867+ "name" : "not-container",
2868+ "type" : "EVENT_MATCH"
2869+ },
2870+ {
2871+ "env" : [
2872+ "CONTAINER=lxc"
2873+ ],
2874+ "value" : 0,
2875+ "name" : "container",
2876+ "type" : "EVENT_MATCH"
2877+ },
2878+ {
2879+ "value" : 0,
2880+ "type" : "EVENT_OR"
2881+ },
2882+ {
2883+ "env" : [
2884+ "CONTAINER=lxc-libvirt"
2885+ ],
2886+ "value" : 0,
2887+ "name" : "container",
2888+ "type" : "EVENT_MATCH"
2889+ },
2890+ {
2891+ "value" : 0,
2892+ "type" : "EVENT_OR"
2893+ },
2894+ {
2895+ "value" : 0,
2896+ "type" : "EVENT_AND"
2897+ }
2898+ ],
2899+ "umask" : 18,
2900+ "setgid" : null
2901+ },
2902+ {
2903+ "setuid" : null,
2904+ "jobs" : [
2905+ {
2906+ "trace_state" : "TRACE_NONE",
2907+ "failed" : 0,
2908+ "state" : "JOB_RUNNING",
2909+ "failed_process" : "PROCESS_INVALID",
2910+ "pid" : [
2911+ 446,
2912+ 0,
2913+ 0,
2914+ 0,
2915+ 0,
2916+ 0
2917+ ],
2918+ "start_env" : [],
2919+ "trace_forks" : 1,
2920+ "respawn_time" : 0,
2921+ "log" : [
2922+ {
2923+ "path" : null
2924+ },
2925+ {
2926+ "path" : null
2927+ },
2928+ {
2929+ "path" : null
2930+ },
2931+ {
2932+ "path" : null
2933+ },
2934+ {
2935+ "path" : null
2936+ },
2937+ {
2938+ "path" : null
2939+ }
2940+ ],
2941+ "respawn_count" : 0,
2942+ "kill_process" : "PROCESS_INVALID",
2943+ "stop_on" : [
2944+ {
2945+ "env" : [
2946+ "[06]"
2947+ ],
2948+ "value" : 0,
2949+ "name" : "runlevel",
2950+ "type" : "EVENT_MATCH"
2951+ }
2952+ ],
2953+ "env" : [
2954+ "PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/sbin:/bin",
2955+ "TERM=linux",
2956+ "UPSTART_EVENTS=virtual-filesystems"
2957+ ],
2958+ "name" : "",
2959+ "path" : "/com/ubuntu/Upstart/jobs/udev/_",
2960+ "exit_status" : 0,
2961+ "goal" : "JOB_START",
2962+ "stop_env" : [],
2963+ "fds" : []
2964+ }
2965+ ],
2966+ "emits" : [],
2967+ "session" : 0,
2968+ "debug" : 0,
2969+ "export" : [],
2970+ "reload_signal" : 1,
2971+ "expect" : "EXPECT_FORK",
2972+ "stop_on" : [
2973+ {
2974+ "env" : [
2975+ "[06]"
2976+ ],
2977+ "value" : 0,
2978+ "name" : "runlevel",
2979+ "type" : "EVENT_MATCH"
2980+ }
2981+ ],
2982+ "chroot" : null,
2983+ "console" : "CONSOLE_LOG",
2984+ "kill_signal" : 15,
2985+ "name" : "udev",
2986+ "instance" : "",
2987+ "description" : "device node and kernel event manager",
2988+ "respawn_interval" : 5,
2989+ "process" : [
2990+ {
2991+ "script" : 0,
2992+ "command" : "/lib/systemd/systemd-udevd --daemon"
2993+ },
2994+ {
2995+ "script" : 0,
2996+ "command" : null
2997+ },
2998+ {
2999+ "script" : 0,
3000+ "command" : null
3001+ },
3002+ {
3003+ "script" : 0,
3004+ "command" : null
3005+ },
3006+ {
3007+ "script" : 0,
3008+ "command" : null
3009+ },
3010+ {
3011+ "script" : 0,
3012+ "command" : null
3013+ }
3014+ ],
3015+ "apparmor_switch" : null,
3016+ "respawn_limit" : 10,
3017+ "author" : null,
3018+ "respawn" : 1,
3019+ "nice" : -21,
3020+ "limits" : [
3021+ {
3022+ "rlim_cur" : 0,
3023+ "rlim_max" : 0
3024+ },
3025+ {
3026+ "rlim_cur" : 0,
3027+ "rlim_max" : 0
3028+ },
3029+ {
3030+ "rlim_cur" : 0,
3031+ "rlim_max" : 0
3032+ },
3033+ {
3034+ "rlim_cur" : 0,
3035+ "rlim_max" : 0
3036+ },
3037+ {
3038+ "rlim_cur" : 0,
3039+ "rlim_max" : 0
3040+ },
3041+ {
3042+ "rlim_cur" : 0,
3043+ "rlim_max" : 0
3044+ },
3045+ {
3046+ "rlim_cur" : 0,
3047+ "rlim_max" : 0
3048+ },
3049+ {
3050+ "rlim_cur" : 0,
3051+ "rlim_max" : 0
3052+ },
3053+ {
3054+ "rlim_cur" : 0,
3055+ "rlim_max" : 0
3056+ },
3057+ {
3058+ "rlim_cur" : 0,
3059+ "rlim_max" : 0
3060+ },
3061+ {
3062+ "rlim_cur" : 0,
3063+ "rlim_max" : 0
3064+ },
3065+ {
3066+ "rlim_cur" : 0,
3067+ "rlim_max" : 0
3068+ },
3069+ {
3070+ "rlim_cur" : 0,
3071+ "rlim_max" : 0
3072+ },
3073+ {
3074+ "rlim_cur" : 0,
3075+ "rlim_max" : 0
3076+ },
3077+ {
3078+ "rlim_cur" : 0,
3079+ "rlim_max" : 0
3080+ },
3081+ {
3082+ "rlim_cur" : 0,
3083+ "rlim_max" : 0
3084+ }
3085+ ],
3086+ "oom_score_adj" : 0,
3087+ "normalexit" : [],
3088+ "kill_timeout" : 5,
3089+ "usage" : null,
3090+ "env" : [],
3091+ "version" : null,
3092+ "deleted" : 0,
3093+ "task" : 0,
3094+ "path" : "/com/ubuntu/Upstart/jobs/udev",
3095+ "chdir" : null,
3096+ "start_on" : [
3097+ {
3098+ "value" : 0,
3099+ "name" : "virtual-filesystems",
3100+ "type" : "EVENT_MATCH"
3101+ }
3102+ ],
3103+ "umask" : 18,
3104+ "setgid" : null
3105+ },
3106+ {
3107+ "setuid" : null,
3108+ "jobs" : [
3109+ {
3110+ "trace_state" : "TRACE_NONE",
3111+ "failed" : 0,
3112+ "state" : "JOB_RUNNING",
3113+ "failed_process" : "PROCESS_INVALID",
3114+ "pid" : [
3115+ 440,
3116+ 0,
3117+ 0,
3118+ 0,
3119+ 0,
3120+ 0
3121+ ],
3122+ "start_env" : [],
3123+ "trace_forks" : 2,
3124+ "respawn_time" : 0,
3125+ "log" : [
3126+ {
3127+ "path" : null
3128+ },
3129+ {
3130+ "path" : null
3131+ },
3132+ {
3133+ "path" : null
3134+ },
3135+ {
3136+ "path" : null
3137+ },
3138+ {
3139+ "path" : null
3140+ },
3141+ {
3142+ "path" : null
3143+ }
3144+ ],
3145+ "respawn_count" : 0,
3146+ "kill_process" : "PROCESS_INVALID",
3147+ "stop_on" : [
3148+ {
3149+ "env" : [
3150+ "udev"
3151+ ],
3152+ "value" : 0,
3153+ "name" : "stopped",
3154+ "type" : "EVENT_MATCH"
3155+ }
3156+ ],
3157+ "env" : [
3158+ "PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/sbin:/bin",
3159+ "TERM=linux",
3160+ "JOB=udev",
3161+ "INSTANCE=",
3162+ "UPSTART_EVENTS=starting"
3163+ ],
3164+ "name" : "",
3165+ "path" : "/com/ubuntu/Upstart/jobs/upstart_2dudev_2dbridge/_",
3166+ "exit_status" : 0,
3167+ "goal" : "JOB_START",
3168+ "stop_env" : [],
3169+ "fds" : []
3170+ }
3171+ ],
3172+ "emits" : [
3173+ "*-device-added",
3174+ "*-device-removed",
3175+ "*-device-changed",
3176+ "*-device-online",
3177+ "*-device-offline"
3178+ ],
3179+ "session" : 0,
3180+ "debug" : 0,
3181+ "export" : [],
3182+ "reload_signal" : 1,
3183+ "expect" : "EXPECT_DAEMON",
3184+ "stop_on" : [
3185+ {
3186+ "env" : [
3187+ "udev"
3188+ ],
3189+ "value" : 0,
3190+ "name" : "stopped",
3191+ "type" : "EVENT_MATCH"
3192+ }
3193+ ],
3194+ "chroot" : null,
3195+ "console" : "CONSOLE_LOG",
3196+ "kill_signal" : 15,
3197+ "name" : "upstart-udev-bridge",
3198+ "instance" : "",
3199+ "description" : "Bridge udev events into upstart",
3200+ "respawn_interval" : 5,
3201+ "process" : [
3202+ {
3203+ "script" : 0,
3204+ "command" : "upstart-udev-bridge --daemon"
3205+ },
3206+ {
3207+ "script" : 0,
3208+ "command" : null
3209+ },
3210+ {
3211+ "script" : 0,
3212+ "command" : null
3213+ },
3214+ {
3215+ "script" : 0,
3216+ "command" : null
3217+ },
3218+ {
3219+ "script" : 0,
3220+ "command" : null
3221+ },
3222+ {
3223+ "script" : 0,
3224+ "command" : null
3225+ }
3226+ ],
3227+ "apparmor_switch" : null,
3228+ "respawn_limit" : 10,
3229+ "author" : null,
3230+ "respawn" : 1,
3231+ "nice" : -21,
3232+ "limits" : [
3233+ {
3234+ "rlim_cur" : 0,
3235+ "rlim_max" : 0
3236+ },
3237+ {
3238+ "rlim_cur" : 0,
3239+ "rlim_max" : 0
3240+ },
3241+ {
3242+ "rlim_cur" : 0,
3243+ "rlim_max" : 0
3244+ },
3245+ {
3246+ "rlim_cur" : 0,
3247+ "rlim_max" : 0
3248+ },
3249+ {
3250+ "rlim_cur" : 0,
3251+ "rlim_max" : 0
3252+ },
3253+ {
3254+ "rlim_cur" : 0,
3255+ "rlim_max" : 0
3256+ },
3257+ {
3258+ "rlim_cur" : 0,
3259+ "rlim_max" : 0
3260+ },
3261+ {
3262+ "rlim_cur" : 0,
3263+ "rlim_max" : 0
3264+ },
3265+ {
3266+ "rlim_cur" : 0,
3267+ "rlim_max" : 0
3268+ },
3269+ {
3270+ "rlim_cur" : 0,
3271+ "rlim_max" : 0
3272+ },
3273+ {
3274+ "rlim_cur" : 0,
3275+ "rlim_max" : 0
3276+ },
3277+ {
3278+ "rlim_cur" : 0,
3279+ "rlim_max" : 0
3280+ },
3281+ {
3282+ "rlim_cur" : 0,
3283+ "rlim_max" : 0
3284+ },
3285+ {
3286+ "rlim_cur" : 0,
3287+ "rlim_max" : 0
3288+ },
3289+ {
3290+ "rlim_cur" : 0,
3291+ "rlim_max" : 0
3292+ },
3293+ {
3294+ "rlim_cur" : 0,
3295+ "rlim_max" : 0
3296+ }
3297+ ],
3298+ "oom_score_adj" : 0,
3299+ "normalexit" : [],
3300+ "kill_timeout" : 5,
3301+ "usage" : null,
3302+ "env" : [],
3303+ "version" : null,
3304+ "deleted" : 0,
3305+ "task" : 0,
3306+ "path" : "/com/ubuntu/Upstart/jobs/upstart_2dudev_2dbridge",
3307+ "chdir" : null,
3308+ "start_on" : [
3309+ {
3310+ "env" : [
3311+ "udev"
3312+ ],
3313+ "value" : 0,
3314+ "name" : "starting",
3315+ "type" : "EVENT_MATCH"
3316+ }
3317+ ],
3318+ "umask" : 18,
3319+ "setgid" : null
3320+ },
3321+ {
3322+ "setuid" : null,
3323+ "jobs" : [],
3324+ "emits" : [],
3325+ "session" : 0,
3326+ "debug" : 0,
3327+ "export" : [],
3328+ "reload_signal" : 1,
3329+ "expect" : "EXPECT_FORK",
3330+ "chroot" : null,
3331+ "console" : "CONSOLE_LOG",
3332+ "kill_signal" : 15,
3333+ "name" : "ureadahead-other",
3334+ "instance" : "",
3335+ "description" : "Read required files in advance (for other mountpoints)",
3336+ "respawn_interval" : 5,
3337+ "process" : [
3338+ {
3339+ "script" : 0,
3340+ "command" : "/sbin/ureadahead --daemon $MOUNTPOINT"
3341+ },
3342+ {
3343+ "script" : 0,
3344+ "command" : null
3345+ },
3346+ {
3347+ "script" : 0,
3348+ "command" : null
3349+ },
3350+ {
3351+ "script" : 0,
3352+ "command" : null
3353+ },
3354+ {
3355+ "script" : 0,
3356+ "command" : null
3357+ },
3358+ {
3359+ "script" : 0,
3360+ "command" : null
3361+ }
3362+ ],
3363+ "apparmor_switch" : null,
3364+ "respawn_limit" : 10,
3365+ "author" : null,
3366+ "respawn" : 0,
3367+ "nice" : -21,
3368+ "limits" : [
3369+ {
3370+ "rlim_cur" : 0,
3371+ "rlim_max" : 0
3372+ },
3373+ {
3374+ "rlim_cur" : 0,
3375+ "rlim_max" : 0
3376+ },
3377+ {
3378+ "rlim_cur" : 0,
3379+ "rlim_max" : 0
3380+ },
3381+ {
3382+ "rlim_cur" : 0,
3383+ "rlim_max" : 0
3384+ },
3385+ {
3386+ "rlim_cur" : 0,
3387+ "rlim_max" : 0
3388+ },
3389+ {
3390+ "rlim_cur" : 0,
3391+ "rlim_max" : 0
3392+ },
3393+ {
3394+ "rlim_cur" : 0,
3395+ "rlim_max" : 0
3396+ },
3397+ {
3398+ "rlim_cur" : 0,
3399+ "rlim_max" : 0
3400+ },
3401+ {
3402+ "rlim_cur" : 0,
3403+ "rlim_max" : 0
3404+ },
3405+ {
3406+ "rlim_cur" : 0,
3407+ "rlim_max" : 0
3408+ },
3409+ {
3410+ "rlim_cur" : 0,
3411+ "rlim_max" : 0
3412+ },
3413+ {
3414+ "rlim_cur" : 0,
3415+ "rlim_max" : 0
3416+ },
3417+ {
3418+ "rlim_cur" : 0,
3419+ "rlim_max" : 0
3420+ },
3421+ {
3422+ "rlim_cur" : 0,
3423+ "rlim_max" : 0
3424+ },
3425+ {
3426+ "rlim_cur" : 0,
3427+ "rlim_max" : 0
3428+ },
3429+ {
3430+ "rlim_cur" : 0,
3431+ "rlim_max" : 0
3432+ }
3433+ ],
3434+ "oom_score_adj" : 0,
3435+ "normalexit" : [
3436+ 0,
3437+ 4
3438+ ],
3439+ "kill_timeout" : 5,
3440+ "usage" : null,
3441+ "env" : [],
3442+ "version" : null,
3443+ "task" : 0,
3444+ "path" : "/com/ubuntu/Upstart/jobs/ureadahead_2dother",
3445+ "deleted" : 0,
3446+ "chdir" : null,
3447+ "start_on" : [
3448+ {
3449+ "env" : [
3450+ "DEVICE=[/UL]*",
3451+ "MOUNTPOINT=/?*"
3452+ ],
3453+ "value" : 0,
3454+ "name" : "mounted",
3455+ "type" : "EVENT_MATCH"
3456+ }
3457+ ],
3458+ "umask" : 18,
3459+ "setgid" : null
3460+ },
3461+ {
3462+ "setuid" : null,
3463+ "jobs" : [
3464+ {
3465+ "trace_state" : "TRACE_NONE",
3466+ "failed" : 0,
3467+ "state" : "JOB_RUNNING",
3468+ "failed_process" : "PROCESS_INVALID",
3469+ "pid" : [
3470+ 1057,
3471+ 0,
3472+ 0,
3473+ 0,
3474+ 0,
3475+ 0
3476+ ],
3477+ "start_env" : [],
3478+ "trace_forks" : 1,
3479+ "respawn_time" : 0,
3480+ "log" : [
3481+ {
3482+ "path" : null
3483+ },
3484+ {
3485+ "path" : null
3486+ },
3487+ {
3488+ "path" : null
3489+ },
3490+ {
3491+ "path" : null
3492+ },
3493+ {
3494+ "path" : null
3495+ },
3496+ {
3497+ "path" : null
3498+ }
3499+ ],
3500+ "respawn_count" : 0,
3501+ "kill_process" : "PROCESS_INVALID",
3502+ "stop_on" : [
3503+ {
3504+ "env" : [
3505+ "[!2345]"
3506+ ],
3507+ "value" : 0,
3508+ "name" : "runlevel",
3509+ "type" : "EVENT_MATCH"
3510+ }
3511+ ],
3512+ "env" : [
3513+ "PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/sbin:/bin",
3514+ "TERM=linux",
3515+ "CRASH_DB_URL=https://daisy.ubuntu.com",
3516+ "RUNLEVEL=2",
3517+ "PREVLEVEL=N",
3518+ "UPSTART_EVENTS=runlevel"
3519+ ],
3520+ "name" : "",
3521+ "path" : "/com/ubuntu/Upstart/jobs/whoopsie/_",
3522+ "exit_status" : 0,
3523+ "goal" : "JOB_START",
3524+ "stop_env" : [],
3525+ "fds" : []
3526+ }
3527+ ],
3528+ "emits" : [],
3529+ "session" : 0,
3530+ "debug" : 0,
3531+ "export" : [],
3532+ "reload_signal" : 1,
3533+ "expect" : "EXPECT_FORK",
3534+ "stop_on" : [
3535+ {
3536+ "env" : [
3537+ "[!2345]"
3538+ ],
3539+ "value" : 0,
3540+ "name" : "runlevel",
3541+ "type" : "EVENT_MATCH"
3542+ }
3543+ ],
3544+ "chroot" : null,
3545+ "console" : "CONSOLE_LOG",
3546+ "kill_signal" : 15,
3547+ "name" : "whoopsie",
3548+ "instance" : "",
3549+ "description" : "crash report submission daemon",
3550+ "respawn_interval" : 5,
3551+ "process" : [
3552+ {
3553+ "script" : 0,
3554+ "command" : "whoopsie"
3555+ },
3556+ {
3557+ "script" : 1,
3558+ "command" : " [ -x /usr/bin/ubiquity-dm ] && { stop; exit 0; }\n\n if ! grep report_crashes=true /etc/default/whoopsie -sqi; then\n stop; exit 0\n fi\n"
3559+ },
3560+ {
3561+ "script" : 0,
3562+ "command" : null
3563+ },
3564+ {
3565+ "script" : 0,
3566+ "command" : null
3567+ },
3568+ {
3569+ "script" : 0,
3570+ "command" : null
3571+ },
3572+ {
3573+ "script" : 0,
3574+ "command" : null
3575+ }
3576+ ],
3577+ "apparmor_switch" : null,
3578+ "respawn_limit" : 10,
3579+ "author" : null,
3580+ "respawn" : 1,
3581+ "nice" : -21,
3582+ "limits" : [
3583+ {
3584+ "rlim_cur" : 0,
3585+ "rlim_max" : 0
3586+ },
3587+ {
3588+ "rlim_cur" : 0,
3589+ "rlim_max" : 0
3590+ },
3591+ {
3592+ "rlim_cur" : 0,
3593+ "rlim_max" : 0
3594+ },
3595+ {
3596+ "rlim_cur" : 0,
3597+ "rlim_max" : 0
3598+ },
3599+ {
3600+ "rlim_cur" : 0,
3601+ "rlim_max" : 0
3602+ },
3603+ {
3604+ "rlim_cur" : 0,
3605+ "rlim_max" : 0
3606+ },
3607+ {
3608+ "rlim_cur" : 0,
3609+ "rlim_max" : 0
3610+ },
3611+ {
3612+ "rlim_cur" : 0,
3613+ "rlim_max" : 0
3614+ },
3615+ {
3616+ "rlim_cur" : 0,
3617+ "rlim_max" : 0
3618+ },
3619+ {
3620+ "rlim_cur" : 0,
3621+ "rlim_max" : 0
3622+ },
3623+ {
3624+ "rlim_cur" : 0,
3625+ "rlim_max" : 0
3626+ },
3627+ {
3628+ "rlim_cur" : 0,
3629+ "rlim_max" : 0
3630+ },
3631+ {
3632+ "rlim_cur" : 0,
3633+ "rlim_max" : 0
3634+ },
3635+ {
3636+ "rlim_cur" : 0,
3637+ "rlim_max" : 0
3638+ },
3639+ {
3640+ "rlim_cur" : 0,
3641+ "rlim_max" : 0
3642+ },
3643+ {
3644+ "rlim_cur" : 0,
3645+ "rlim_max" : 0
3646+ }
3647+ ],
3648+ "oom_score_adj" : 0,
3649+ "normalexit" : [],
3650+ "kill_timeout" : 5,
3651+ "usage" : null,
3652+ "env" : [
3653+ "CRASH_DB_URL=https://daisy.ubuntu.com"
3654+ ],
3655+ "version" : null,
3656+ "deleted" : 0,
3657+ "task" : 0,
3658+ "path" : "/com/ubuntu/Upstart/jobs/whoopsie",
3659+ "chdir" : null,
3660+ "start_on" : [
3661+ {
3662+ "env" : [
3663+ "[2345]"
3664+ ],
3665+ "value" : 0,
3666+ "name" : "runlevel",
3667+ "type" : "EVENT_MATCH"
3668+ }
3669+ ],
3670+ "umask" : 18,
3671+ "setgid" : null
3672+ },
3673+ {
3674+ "setuid" : null,
3675+ "jobs" : [
3676+ {
3677+ "trace_state" : "TRACE_NONE",
3678+ "failed" : 0,
3679+ "state" : "JOB_RUNNING",
3680+ "failed_process" : "PROCESS_INVALID",
3681+ "pid" : [
3682+ 0,
3683+ 0,
3684+ 0,
3685+ 0,
3686+ 0,
3687+ 0
3688+ ],
3689+ "start_env" : [],
3690+ "trace_forks" : 0,
3691+ "respawn_time" : 0,
3692+ "log" : [
3693+ {
3694+ "path" : null
3695+ },
3696+ {
3697+ "path" : null
3698+ },
3699+ {
3700+ "path" : null
3701+ },
3702+ {
3703+ "path" : null
3704+ },
3705+ {
3706+ "path" : null
3707+ },
3708+ {
3709+ "path" : null
3710+ }
3711+ ],
3712+ "respawn_count" : 0,
3713+ "kill_process" : "PROCESS_INVALID",
3714+ "stop_on" : [
3715+ {
3716+ "env" : [
3717+ "[!2345]"
3718+ ],
3719+ "value" : 0,
3720+ "name" : "runlevel",
3721+ "type" : "EVENT_MATCH"
3722+ }
3723+ ],
3724+ "env" : [
3725+ "PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/sbin:/bin",
3726+ "TERM=linux",
3727+ "enabled=1",
3728+ "RUNLEVEL=2",
3729+ "PREVLEVEL=N",
3730+ "UPSTART_EVENTS=runlevel"
3731+ ],
3732+ "name" : "",
3733+ "path" : "/com/ubuntu/Upstart/jobs/apport/_",
3734+ "exit_status" : 0,
3735+ "goal" : "JOB_START",
3736+ "stop_env" : [],
3737+ "fds" : []
3738+ }
3739+ ],
3740+ "emits" : [],
3741+ "session" : 0,
3742+ "debug" : 0,
3743+ "export" : [],
3744+ "reload_signal" : 1,
3745+ "expect" : "EXPECT_NONE",
3746+ "stop_on" : [
3747+ {
3748+ "env" : [
3749+ "[!2345]"
3750+ ],
3751+ "value" : 0,
3752+ "name" : "runlevel",
3753+ "type" : "EVENT_MATCH"
3754+ }
3755+ ],
3756+ "chroot" : null,
3757+ "console" : "CONSOLE_LOG",
3758+ "kill_signal" : 15,
3759+ "name" : "apport",
3760+ "instance" : "",
3761+ "description" : "automatic crash report generation",
3762+ "respawn_interval" : 5,
3763+ "process" : [
3764+ {
3765+ "script" : 0,
3766+ "command" : null
3767+ },
3768+ {
3769+ "script" : 1,
3770+ "command" : " . /etc/default/apport\n [ \"$enabled\" = \"1\" ] || [ \"$force_start\" = \"1\" ] || exit 0\n\n mkdir -p -m 1777 /var/crash\n\n # check for kernel crash dump, convert it to apport report\n if [ -e /var/crash/vmcore ] || [ -n \"`ls /var/crash | egrep ^[0-9]{12}$`\" ]\n then\n\t/usr/share/apport/kernel_crashdump || true\n fi\n\n # check for incomplete suspend/resume or hibernate\n if [ -e /var/lib/pm-utils/status ]\n then\n /usr/share/apport/apportcheckresume || true\n rm -f /var/lib/pm-utils/status\n rm -f /var/lib/pm-utils/resume-hang.log\n fi\n\n echo \"|/usr/share/apport/apport %p %s %c\" > /proc/sys/kernel/core_pattern\n echo 2 > /proc/sys/fs/suid_dumpable\n"
3771+ },
3772+ {
3773+ "script" : 0,
3774+ "command" : null
3775+ },
3776+ {
3777+ "script" : 0,
3778+ "command" : null
3779+ },
3780+ {
3781+ "script" : 1,
3782+ "command" : " # Check for a hung resume. If we find one try and grab everything\n # we can to aid in its discovery\n if [ -e /var/lib/pm-utils/status ]\n then\n\tps -wwef > /var/lib/pm-utils/resume-hang.log\n fi\n\n if [ \"`dd if=/proc/sys/kernel/core_pattern count=1 bs=1 2>/dev/null`\" != \"|\" ]\n then\n\texit 1\n else\n\techo 0 > /proc/sys/fs/suid_dumpable\n\techo \"core\" > /proc/sys/kernel/core_pattern\n fi\n"
3783+ },
3784+ {
3785+ "script" : 0,
3786+ "command" : null
3787+ }
3788+ ],
3789+ "apparmor_switch" : null,
3790+ "respawn_limit" : 10,
3791+ "author" : null,
3792+ "respawn" : 0,
3793+ "nice" : -21,
3794+ "limits" : [
3795+ {
3796+ "rlim_cur" : 0,
3797+ "rlim_max" : 0
3798+ },
3799+ {
3800+ "rlim_cur" : 0,
3801+ "rlim_max" : 0
3802+ },
3803+ {
3804+ "rlim_cur" : 0,
3805+ "rlim_max" : 0
3806+ },
3807+ {
3808+ "rlim_cur" : 0,
3809+ "rlim_max" : 0
3810+ },
3811+ {
3812+ "rlim_cur" : 0,
3813+ "rlim_max" : 0
3814+ },
3815+ {
3816+ "rlim_cur" : 0,
3817+ "rlim_max" : 0
3818+ },
3819+ {
3820+ "rlim_cur" : 0,
3821+ "rlim_max" : 0
3822+ },
3823+ {
3824+ "rlim_cur" : 0,
3825+ "rlim_max" : 0
3826+ },
3827+ {
3828+ "rlim_cur" : 0,
3829+ "rlim_max" : 0
3830+ },
3831+ {
3832+ "rlim_cur" : 0,
3833+ "rlim_max" : 0
3834+ },
3835+ {
3836+ "rlim_cur" : 0,
3837+ "rlim_max" : 0
3838+ },
3839+ {
3840+ "rlim_cur" : 0,
3841+ "rlim_max" : 0
3842+ },
3843+ {
3844+ "rlim_cur" : 0,
3845+ "rlim_max" : 0
3846+ },
3847+ {
3848+ "rlim_cur" : 0,
3849+ "rlim_max" : 0
3850+ },
3851+ {
3852+ "rlim_cur" : 0,
3853+ "rlim_max" : 0
3854+ },
3855+ {
3856+ "rlim_cur" : 0,
3857+ "rlim_max" : 0
3858+ }
3859+ ],
3860+ "oom_score_adj" : 0,
3861+ "normalexit" : [],
3862+ "kill_timeout" : 5,
3863+ "usage" : null,
3864+ "env" : [
3865+ "enabled=1"
3866+ ],
3867+ "version" : null,
3868+ "deleted" : 0,
3869+ "task" : 0,
3870+ "path" : "/com/ubuntu/Upstart/jobs/apport",
3871+ "chdir" : null,
3872+ "start_on" : [
3873+ {
3874+ "env" : [
3875+ "[2345]"
3876+ ],
3877+ "value" : 0,
3878+ "name" : "runlevel",
3879+ "type" : "EVENT_MATCH"
3880+ }
3881+ ],
3882+ "umask" : 18,
3883+ "setgid" : null
3884+ },
3885+ {
3886+ "setuid" : null,
3887+ "jobs" : [],
3888+ "emits" : [],
3889+ "session" : 0,
3890+ "debug" : 0,
3891+ "export" : [],
3892+ "reload_signal" : 1,
3893+ "expect" : "EXPECT_NONE",
3894+ "chroot" : null,
3895+ "console" : "CONSOLE_LOG",
3896+ "kill_signal" : 15,
3897+ "name" : "console-setup",
3898+ "instance" : "",
3899+ "description" : "set console keymap",
3900+ "respawn_interval" : 5,
3901+ "process" : [
3902+ {
3903+ "script" : 0,
3904+ "command" : "loadkeys /etc/console-setup/cached.kmap.gz"
3905+ },
3906+ {
3907+ "script" : 0,
3908+ "command" : null
3909+ },
3910+ {
3911+ "script" : 0,
3912+ "command" : null
3913+ },
3914+ {
3915+ "script" : 0,
3916+ "command" : null
3917+ },
3918+ {
3919+ "script" : 0,
3920+ "command" : null
3921+ },
3922+ {
3923+ "script" : 0,
3924+ "command" : null
3925+ }
3926+ ],
3927+ "apparmor_switch" : null,
3928+ "respawn_limit" : 10,
3929+ "author" : null,
3930+ "respawn" : 0,
3931+ "nice" : -21,
3932+ "limits" : [
3933+ {
3934+ "rlim_cur" : 0,
3935+ "rlim_max" : 0
3936+ },
3937+ {
3938+ "rlim_cur" : 0,
3939+ "rlim_max" : 0
3940+ },
3941+ {
3942+ "rlim_cur" : 0,
3943+ "rlim_max" : 0
3944+ },
3945+ {
3946+ "rlim_cur" : 0,
3947+ "rlim_max" : 0
3948+ },
3949+ {
3950+ "rlim_cur" : 0,
3951+ "rlim_max" : 0
3952+ },
3953+ {
3954+ "rlim_cur" : 0,
3955+ "rlim_max" : 0
3956+ },
3957+ {
3958+ "rlim_cur" : 0,
3959+ "rlim_max" : 0
3960+ },
3961+ {
3962+ "rlim_cur" : 0,
3963+ "rlim_max" : 0
3964+ },
3965+ {
3966+ "rlim_cur" : 0,
3967+ "rlim_max" : 0
3968+ },
3969+ {
3970+ "rlim_cur" : 0,
3971+ "rlim_max" : 0
3972+ },
3973+ {
3974+ "rlim_cur" : 0,
3975+ "rlim_max" : 0
3976+ },
3977+ {
3978+ "rlim_cur" : 0,
3979+ "rlim_max" : 0
3980+ },
3981+ {
3982+ "rlim_cur" : 0,
3983+ "rlim_max" : 0
3984+ },
3985+ {
3986+ "rlim_cur" : 0,
3987+ "rlim_max" : 0
3988+ },
3989+ {
3990+ "rlim_cur" : 0,
3991+ "rlim_max" : 0
3992+ },
3993+ {
3994+ "rlim_cur" : 0,
3995+ "rlim_max" : 0
3996+ }
3997+ ],
3998+ "oom_score_adj" : 0,
3999+ "normalexit" : [],
4000+ "kill_timeout" : 5,
4001+ "usage" : null,
4002+ "env" : [],
4003+ "version" : null,
4004+ "task" : 1,
4005+ "path" : "/com/ubuntu/Upstart/jobs/console_2dsetup",
4006+ "deleted" : 0,
4007+ "chdir" : null,
4008+ "start_on" : [
4009+ {
4010+ "value" : 0,
4011+ "name" : "virtual-filesystems",
4012+ "type" : "EVENT_MATCH"
4013+ },
4014+ {
4015+ "env" : [
4016+ "rcS"
4017+ ],
4018+ "value" : 0,
4019+ "name" : "starting",
4020+ "type" : "EVENT_MATCH"
4021+ },
4022+ {
4023+ "value" : 0,
4024+ "type" : "EVENT_OR"
4025+ },
4026+ {
4027+ "env" : [
4028+ "mountall-shell"
4029+ ],
4030+ "value" : 0,
4031+ "name" : "starting",
4032+ "type" : "EVENT_MATCH"
4033+ },
4034+ {
4035+ "value" : 0,
4036+ "type" : "EVENT_OR"
4037+ }
4038+ ],
4039+ "umask" : 18,
4040+ "setgid" : null
4041+ },
4042+ {
4043+ "setuid" : null,
4044+ "jobs" : [],
4045+ "emits" : [],
4046+ "session" : 0,
4047+ "debug" : 0,
4048+ "export" : [],
4049+ "reload_signal" : 1,
4050+ "expect" : "EXPECT_NONE",
4051+ "chroot" : null,
4052+ "console" : "CONSOLE_LOG",
4053+ "kill_signal" : 15,
4054+ "name" : "hwclock-save",
4055+ "instance" : "",
4056+ "description" : "save system clock to hardware clock",
4057+ "respawn_interval" : 5,
4058+ "process" : [
4059+ {
4060+ "script" : 1,
4061+ "command" : ". /etc/default/rcS\n[ \"$UTC\" = \"yes\" ] && tz=\"--utc\" || tz=\"--localtime\"\n[ \"$BADYEAR\" = \"yes\" ] && badyear=\"--badyear\"\nexec hwclock --rtc=/dev/rtc0 --systohc $tz --noadjfile $badyear\n"
4062+ },
4063+ {
4064+ "script" : 0,
4065+ "command" : null
4066+ },
4067+ {
4068+ "script" : 0,
4069+ "command" : null
4070+ },
4071+ {
4072+ "script" : 0,
4073+ "command" : null
4074+ },
4075+ {
4076+ "script" : 0,
4077+ "command" : null
4078+ },
4079+ {
4080+ "script" : 0,
4081+ "command" : null
4082+ }
4083+ ],
4084+ "apparmor_switch" : null,
4085+ "respawn_limit" : 10,
4086+ "author" : null,
4087+ "respawn" : 0,
4088+ "nice" : -21,
4089+ "limits" : [
4090+ {
4091+ "rlim_cur" : 0,
4092+ "rlim_max" : 0
4093+ },
4094+ {
4095+ "rlim_cur" : 0,
4096+ "rlim_max" : 0
4097+ },
4098+ {
4099+ "rlim_cur" : 0,
4100+ "rlim_max" : 0
4101+ },
4102+ {
4103+ "rlim_cur" : 0,
4104+ "rlim_max" : 0
4105+ },
4106+ {
4107+ "rlim_cur" : 0,
4108+ "rlim_max" : 0
4109+ },
4110+ {
4111+ "rlim_cur" : 0,
4112+ "rlim_max" : 0
4113+ },
4114+ {
4115+ "rlim_cur" : 0,
4116+ "rlim_max" : 0
4117+ },
4118+ {
4119+ "rlim_cur" : 0,
4120+ "rlim_max" : 0
4121+ },
4122+ {
4123+ "rlim_cur" : 0,
4124+ "rlim_max" : 0
4125+ },
4126+ {
4127+ "rlim_cur" : 0,
4128+ "rlim_max" : 0
4129+ },
4130+ {
4131+ "rlim_cur" : 0,
4132+ "rlim_max" : 0
4133+ },
4134+ {
4135+ "rlim_cur" : 0,
4136+ "rlim_max" : 0
4137+ },
4138+ {
4139+ "rlim_cur" : 0,
4140+ "rlim_max" : 0
4141+ },
4142+ {
4143+ "rlim_cur" : 0,
4144+ "rlim_max" : 0
4145+ },
4146+ {
4147+ "rlim_cur" : 0,
4148+ "rlim_max" : 0
4149+ },
4150+ {
4151+ "rlim_cur" : 0,
4152+ "rlim_max" : 0
4153+ }
4154+ ],
4155+ "oom_score_adj" : 0,
4156+ "normalexit" : [],
4157+ "kill_timeout" : 5,
4158+ "usage" : null,
4159+ "env" : [],
4160+ "version" : null,
4161+ "task" : 1,
4162+ "path" : "/com/ubuntu/Upstart/jobs/hwclock_2dsave",
4163+ "deleted" : 0,
4164+ "chdir" : null,
4165+ "start_on" : [
4166+ {
4167+ "env" : [
4168+ "[06]"
4169+ ],
4170+ "value" : 0,
4171+ "name" : "runlevel",
4172+ "type" : "EVENT_MATCH"
4173+ }
4174+ ],
4175+ "umask" : 18,
4176+ "setgid" : null
4177+ },
4178+ {
4179+ "setuid" : null,
4180+ "jobs" : [],
4181+ "emits" : [],
4182+ "session" : 0,
4183+ "debug" : 0,
4184+ "export" : [],
4185+ "reload_signal" : 1,
4186+ "expect" : "EXPECT_FORK",
4187+ "stop_on" : [
4188+ {
4189+ "env" : [
4190+ "[!2345]"
4191+ ],
4192+ "value" : 0,
4193+ "name" : "runlevel",
4194+ "type" : "EVENT_MATCH"
4195+ }
4196+ ],
4197+ "chroot" : null,
4198+ "console" : "CONSOLE_LOG",
4199+ "kill_signal" : 15,
4200+ "name" : "irqbalance",
4201+ "instance" : "",
4202+ "description" : "CPU interrupts balancing daemon",
4203+ "respawn_interval" : 5,
4204+ "process" : [
4205+ {
4206+ "script" : 1,
4207+ "command" : "\ttest -f /etc/default/irqbalance && . /etc/default/irqbalance\n\n\ttest \"$ENABLED\" != \"0\" || exit 0\n\n\tif test \"$ONESHOT\" != \"0\"; then\n\t\tDOPTIONS=\"--oneshot\"\n\tfi\n\n\texec /usr/sbin/irqbalance $DOPTIONS\n\n"
4208+ },
4209+ {
4210+ "script" : 0,
4211+ "command" : null
4212+ },
4213+ {
4214+ "script" : 0,
4215+ "command" : null
4216+ },
4217+ {
4218+ "script" : 0,
4219+ "command" : null
4220+ },
4221+ {
4222+ "script" : 0,
4223+ "command" : null
4224+ },
4225+ {
4226+ "script" : 0,
4227+ "command" : null
4228+ }
4229+ ],
4230+ "apparmor_switch" : null,
4231+ "respawn_limit" : 10,
4232+ "author" : "Chuck Short <zulcss@ubuntu.com>",
4233+ "respawn" : 0,
4234+ "nice" : -21,
4235+ "limits" : [
4236+ {
4237+ "rlim_cur" : 0,
4238+ "rlim_max" : 0
4239+ },
4240+ {
4241+ "rlim_cur" : 0,
4242+ "rlim_max" : 0
4243+ },
4244+ {
4245+ "rlim_cur" : 0,
4246+ "rlim_max" : 0
4247+ },
4248+ {
4249+ "rlim_cur" : 0,
4250+ "rlim_max" : 0
4251+ },
4252+ {
4253+ "rlim_cur" : 0,
4254+ "rlim_max" : 0
4255+ },
4256+ {
4257+ "rlim_cur" : 0,
4258+ "rlim_max" : 0
4259+ },
4260+ {
4261+ "rlim_cur" : 0,
4262+ "rlim_max" : 0
4263+ },
4264+ {
4265+ "rlim_cur" : 0,
4266+ "rlim_max" : 0
4267+ },
4268+ {
4269+ "rlim_cur" : 0,
4270+ "rlim_max" : 0
4271+ },
4272+ {
4273+ "rlim_cur" : 0,
4274+ "rlim_max" : 0
4275+ },
4276+ {
4277+ "rlim_cur" : 0,
4278+ "rlim_max" : 0
4279+ },
4280+ {
4281+ "rlim_cur" : 0,
4282+ "rlim_max" : 0
4283+ },
4284+ {
4285+ "rlim_cur" : 0,
4286+ "rlim_max" : 0
4287+ },
4288+ {
4289+ "rlim_cur" : 0,
4290+ "rlim_max" : 0
4291+ },
4292+ {
4293+ "rlim_cur" : 0,
4294+ "rlim_max" : 0
4295+ },
4296+ {
4297+ "rlim_cur" : 0,
4298+ "rlim_max" : 0
4299+ }
4300+ ],
4301+ "oom_score_adj" : 0,
4302+ "normalexit" : [],
4303+ "kill_timeout" : 5,
4304+ "usage" : null,
4305+ "env" : [],
4306+ "version" : null,
4307+ "deleted" : 0,
4308+ "task" : 0,
4309+ "path" : "/com/ubuntu/Upstart/jobs/irqbalance",
4310+ "chdir" : null,
4311+ "start_on" : [
4312+ {
4313+ "env" : [
4314+ "[2345]"
4315+ ],
4316+ "value" : 0,
4317+ "name" : "runlevel",
4318+ "type" : "EVENT_MATCH"
4319+ }
4320+ ],
4321+ "umask" : 18,
4322+ "setgid" : null
4323+ },
4324+ {
4325+ "setuid" : null,
4326+ "jobs" : [],
4327+ "emits" : [],
4328+ "session" : 0,
4329+ "debug" : 0,
4330+ "export" : [],
4331+ "reload_signal" : 1,
4332+ "expect" : "EXPECT_NONE",
4333+ "chroot" : null,
4334+ "console" : "CONSOLE_LOG",
4335+ "kill_signal" : 15,
4336+ "name" : "plymouth-log",
4337+ "instance" : "",
4338+ "description" : "Flush boot log to disk",
4339+ "respawn_interval" : 5,
4340+ "process" : [
4341+ {
4342+ "script" : 0,
4343+ "command" : "/bin/plymouth update-root-fs --read-write"
4344+ },
4345+ {
4346+ "script" : 0,
4347+ "command" : null
4348+ },
4349+ {
4350+ "script" : 0,
4351+ "command" : null
4352+ },
4353+ {
4354+ "script" : 0,
4355+ "command" : null
4356+ },
4357+ {
4358+ "script" : 0,
4359+ "command" : null
4360+ },
4361+ {
4362+ "script" : 0,
4363+ "command" : null
4364+ }
4365+ ],
4366+ "apparmor_switch" : null,
4367+ "respawn_limit" : 10,
4368+ "author" : null,
4369+ "respawn" : 0,
4370+ "nice" : -21,
4371+ "limits" : [
4372+ {
4373+ "rlim_cur" : 0,
4374+ "rlim_max" : 0
4375+ },
4376+ {
4377+ "rlim_cur" : 0,
4378+ "rlim_max" : 0
4379+ },
4380+ {
4381+ "rlim_cur" : 0,
4382+ "rlim_max" : 0
4383+ },
4384+ {
4385+ "rlim_cur" : 0,
4386+ "rlim_max" : 0
4387+ },
4388+ {
4389+ "rlim_cur" : 0,
4390+ "rlim_max" : 0
4391+ },
4392+ {
4393+ "rlim_cur" : 0,
4394+ "rlim_max" : 0
4395+ },
4396+ {
4397+ "rlim_cur" : 0,
4398+ "rlim_max" : 0
4399+ },
4400+ {
4401+ "rlim_cur" : 0,
4402+ "rlim_max" : 0
4403+ },
4404+ {
4405+ "rlim_cur" : 0,
4406+ "rlim_max" : 0
4407+ },
4408+ {
4409+ "rlim_cur" : 0,
4410+ "rlim_max" : 0
4411+ },
4412+ {
4413+ "rlim_cur" : 0,
4414+ "rlim_max" : 0
4415+ },
4416+ {
4417+ "rlim_cur" : 0,
4418+ "rlim_max" : 0
4419+ },
4420+ {
4421+ "rlim_cur" : 0,
4422+ "rlim_max" : 0
4423+ },
4424+ {
4425+ "rlim_cur" : 0,
4426+ "rlim_max" : 0
4427+ },
4428+ {
4429+ "rlim_cur" : 0,
4430+ "rlim_max" : 0
4431+ },
4432+ {
4433+ "rlim_cur" : 0,
4434+ "rlim_max" : 0
4435+ }
4436+ ],
4437+ "oom_score_adj" : 0,
4438+ "normalexit" : [],
4439+ "kill_timeout" : 5,
4440+ "usage" : null,
4441+ "env" : [],
4442+ "version" : null,
4443+ "task" : 1,
4444+ "path" : "/com/ubuntu/Upstart/jobs/plymouth_2dlog",
4445+ "deleted" : 0,
4446+ "chdir" : null,
4447+ "start_on" : [
4448+ {
4449+ "value" : 0,
4450+ "name" : "filesystem",
4451+ "type" : "EVENT_MATCH"
4452+ }
4453+ ],
4454+ "umask" : 18,
4455+ "setgid" : null
4456+ },
4457+ {
4458+ "setuid" : null,
4459+ "jobs" : [
4460+ {
4461+ "trace_state" : "TRACE_NONE",
4462+ "failed" : 0,
4463+ "state" : "JOB_RUNNING",
4464+ "failed_process" : "PROCESS_INVALID",
4465+ "pid" : [
4466+ 520,
4467+ 0,
4468+ 0,
4469+ 0,
4470+ 0,
4471+ 0
4472+ ],
4473+ "start_env" : [],
4474+ "trace_forks" : 0,
4475+ "respawn_time" : 0,
4476+ "log" : [
4477+ {
4478+ "remote_closed" : 0,
4479+ "detached" : 0,
4480+ "uid" : 0,
4481+ "open_errno" : 9,
4482+ "path" : "/var/log/upstart/systemd-logind.log",
4483+ "io_watch_fd" : 19,
4484+ "fd" : 11
4485+ },
4486+ {
4487+ "path" : null
4488+ },
4489+ {
4490+ "path" : null
4491+ },
4492+ {
4493+ "path" : null
4494+ },
4495+ {
4496+ "path" : null
4497+ },
4498+ {
4499+ "path" : null
4500+ }
4501+ ],
4502+ "respawn_count" : 0,
4503+ "kill_process" : "PROCESS_INVALID",
4504+ "stop_on" : [
4505+ {
4506+ "env" : [
4507+ "dbus"
4508+ ],
4509+ "value" : 0,
4510+ "name" : "stopping",
4511+ "type" : "EVENT_MATCH"
4512+ }
4513+ ],
4514+ "env" : [
4515+ "PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/sbin:/bin",
4516+ "TERM=linux",
4517+ "SYSTEMD_LOG_TARGET=syslog",
4518+ "JOB=dbus",
4519+ "INSTANCE=",
4520+ "UPSTART_EVENTS=started"
4521+ ],
4522+ "name" : "",
4523+ "path" : "/com/ubuntu/Upstart/jobs/systemd_2dlogind/_",
4524+ "exit_status" : 0,
4525+ "goal" : "JOB_START",
4526+ "stop_env" : [],
4527+ "fds" : []
4528+ }
4529+ ],
4530+ "emits" : [],
4531+ "session" : 0,
4532+ "debug" : 0,
4533+ "export" : [],
4534+ "reload_signal" : 1,
4535+ "expect" : "EXPECT_NONE",
4536+ "stop_on" : [
4537+ {
4538+ "env" : [
4539+ "dbus"
4540+ ],
4541+ "value" : 0,
4542+ "name" : "stopping",
4543+ "type" : "EVENT_MATCH"
4544+ }
4545+ ],
4546+ "chroot" : null,
4547+ "console" : "CONSOLE_LOG",
4548+ "kill_signal" : 15,
4549+ "name" : "systemd-logind",
4550+ "instance" : "",
4551+ "description" : "SystemD login management service",
4552+ "respawn_interval" : 5,
4553+ "process" : [
4554+ {
4555+ "script" : 0,
4556+ "command" : "/lib/systemd/systemd-logind"
4557+ },
4558+ {
4559+ "script" : 1,
4560+ "command" : " # only start if PAM module is actually available, not if libpam-systemd is\n # removed but not purged\n [ -e /lib/*/security/pam_systemd.so ] || { stop; exit 0; }\n\n # this is being done by systemd or mountall usually, but not during\n # upgrades from earlier distro releases\n if ! mountpoint -q /sys/fs/cgroup; then\n mount -t tmpfs -o uid=0,gid=0,mode=0755,size=1024 none /sys/fs/cgroup\n fi\n mkdir -p /run/systemd\n if ! mountpoint -q /sys/fs/cgroup/systemd; then\n mkdir -p /sys/fs/cgroup/systemd\n mount -t cgroup -o nosuid,noexec,nodev,none,name=systemd systemd /sys/fs/cgroup/systemd\n fi\n"
4561+ },
4562+ {
4563+ "script" : 0,
4564+ "command" : null
4565+ },
4566+ {
4567+ "script" : 0,
4568+ "command" : null
4569+ },
4570+ {
4571+ "script" : 0,
4572+ "command" : null
4573+ },
4574+ {
4575+ "script" : 0,
4576+ "command" : null
4577+ }
4578+ ],
4579+ "apparmor_switch" : null,
4580+ "respawn_limit" : 10,
4581+ "author" : null,
4582+ "respawn" : 1,
4583+ "nice" : -21,
4584+ "limits" : [
4585+ {
4586+ "rlim_cur" : 0,
4587+ "rlim_max" : 0
4588+ },
4589+ {
4590+ "rlim_cur" : 0,
4591+ "rlim_max" : 0
4592+ },
4593+ {
4594+ "rlim_cur" : 0,
4595+ "rlim_max" : 0
4596+ },
4597+ {
4598+ "rlim_cur" : 0,
4599+ "rlim_max" : 0
4600+ },
4601+ {
4602+ "rlim_cur" : 0,
4603+ "rlim_max" : 0
4604+ },
4605+ {
4606+ "rlim_cur" : 0,
4607+ "rlim_max" : 0
4608+ },
4609+ {
4610+ "rlim_cur" : 0,
4611+ "rlim_max" : 0
4612+ },
4613+ {
4614+ "rlim_cur" : 16384,
4615+ "rlim_max" : 16384
4616+ },
4617+ {
4618+ "rlim_cur" : 0,
4619+ "rlim_max" : 0
4620+ },
4621+ {
4622+ "rlim_cur" : 0,
4623+ "rlim_max" : 0
4624+ },
4625+ {
4626+ "rlim_cur" : 0,
4627+ "rlim_max" : 0
4628+ },
4629+ {
4630+ "rlim_cur" : 0,
4631+ "rlim_max" : 0
4632+ },
4633+ {
4634+ "rlim_cur" : 0,
4635+ "rlim_max" : 0
4636+ },
4637+ {
4638+ "rlim_cur" : 0,
4639+ "rlim_max" : 0
4640+ },
4641+ {
4642+ "rlim_cur" : 0,
4643+ "rlim_max" : 0
4644+ },
4645+ {
4646+ "rlim_cur" : 0,
4647+ "rlim_max" : 0
4648+ }
4649+ ],
4650+ "oom_score_adj" : 0,
4651+ "normalexit" : [],
4652+ "kill_timeout" : 5,
4653+ "usage" : null,
4654+ "env" : [
4655+ "SYSTEMD_LOG_TARGET=syslog"
4656+ ],
4657+ "version" : null,
4658+ "deleted" : 0,
4659+ "task" : 0,
4660+ "path" : "/com/ubuntu/Upstart/jobs/systemd_2dlogind",
4661+ "chdir" : null,
4662+ "start_on" : [
4663+ {
4664+ "env" : [
4665+ "dbus"
4666+ ],
4667+ "value" : 0,
4668+ "name" : "started",
4669+ "type" : "EVENT_MATCH"
4670+ }
4671+ ],
4672+ "umask" : 18,
4673+ "setgid" : null
4674+ },
4675+ {
4676+ "setuid" : null,
4677+ "jobs" : [
4678+ {
4679+ "trace_state" : "TRACE_NONE",
4680+ "failed" : 0,
4681+ "state" : "JOB_RUNNING",
4682+ "failed_process" : "PROCESS_INVALID",
4683+ "pid" : [
4684+ 941,
4685+ 0,
4686+ 0,
4687+ 0,
4688+ 0,
4689+ 0
4690+ ],
4691+ "start_env" : [],
4692+ "trace_forks" : 0,
4693+ "respawn_time" : 0,
4694+ "log" : [
4695+ {
4696+ "path" : null
4697+ },
4698+ {
4699+ "path" : null
4700+ },
4701+ {
4702+ "path" : null
4703+ },
4704+ {
4705+ "path" : null
4706+ },
4707+ {
4708+ "path" : null
4709+ },
4710+ {
4711+ "path" : null
4712+ }
4713+ ],
4714+ "respawn_count" : 0,
4715+ "kill_process" : "PROCESS_INVALID",
4716+ "stop_on" : [
4717+ {
4718+ "env" : [
4719+ "[!23]"
4720+ ],
4721+ "value" : 0,
4722+ "name" : "runlevel",
4723+ "type" : "EVENT_MATCH"
4724+ }
4725+ ],
4726+ "env" : [
4727+ "PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/sbin:/bin",
4728+ "TERM=linux",
4729+ "RUNLEVEL=2",
4730+ "PREVLEVEL=N",
4731+ "UPSTART_EVENTS=runlevel not-container"
4732+ ],
4733+ "name" : "",
4734+ "path" : "/com/ubuntu/Upstart/jobs/tty5/_",
4735+ "exit_status" : 0,
4736+ "goal" : "JOB_START",
4737+ "stop_env" : [],
4738+ "fds" : []
4739+ }
4740+ ],
4741+ "emits" : [],
4742+ "session" : 0,
4743+ "debug" : 0,
4744+ "export" : [],
4745+ "reload_signal" : 1,
4746+ "expect" : "EXPECT_NONE",
4747+ "stop_on" : [
4748+ {
4749+ "env" : [
4750+ "[!23]"
4751+ ],
4752+ "value" : 0,
4753+ "name" : "runlevel",
4754+ "type" : "EVENT_MATCH"
4755+ }
4756+ ],
4757+ "chroot" : null,
4758+ "console" : "CONSOLE_LOG",
4759+ "kill_signal" : 15,
4760+ "name" : "tty5",
4761+ "instance" : "",
4762+ "description" : null,
4763+ "respawn_interval" : 5,
4764+ "process" : [
4765+ {
4766+ "script" : 0,
4767+ "command" : "/sbin/getty -8 38400 tty5"
4768+ },
4769+ {
4770+ "script" : 0,
4771+ "command" : null
4772+ },
4773+ {
4774+ "script" : 0,
4775+ "command" : null
4776+ },
4777+ {
4778+ "script" : 0,
4779+ "command" : null
4780+ },
4781+ {
4782+ "script" : 0,
4783+ "command" : null
4784+ },
4785+ {
4786+ "script" : 0,
4787+ "command" : null
4788+ }
4789+ ],
4790+ "apparmor_switch" : null,
4791+ "respawn_limit" : 10,
4792+ "author" : null,
4793+ "respawn" : 1,
4794+ "nice" : -21,
4795+ "limits" : [
4796+ {
4797+ "rlim_cur" : 0,
4798+ "rlim_max" : 0
4799+ },
4800+ {
4801+ "rlim_cur" : 0,
4802+ "rlim_max" : 0
4803+ },
4804+ {
4805+ "rlim_cur" : 0,
4806+ "rlim_max" : 0
4807+ },
4808+ {
4809+ "rlim_cur" : 0,
4810+ "rlim_max" : 0
4811+ },
4812+ {
4813+ "rlim_cur" : 0,
4814+ "rlim_max" : 0
4815+ },
4816+ {
4817+ "rlim_cur" : 0,
4818+ "rlim_max" : 0
4819+ },
4820+ {
4821+ "rlim_cur" : 0,
4822+ "rlim_max" : 0
4823+ },
4824+ {
4825+ "rlim_cur" : 0,
4826+ "rlim_max" : 0
4827+ },
4828+ {
4829+ "rlim_cur" : 0,
4830+ "rlim_max" : 0
4831+ },
4832+ {
4833+ "rlim_cur" : 0,
4834+ "rlim_max" : 0
4835+ },
4836+ {
4837+ "rlim_cur" : 0,
4838+ "rlim_max" : 0
4839+ },
4840+ {
4841+ "rlim_cur" : 0,
4842+ "rlim_max" : 0
4843+ },
4844+ {
4845+ "rlim_cur" : 0,
4846+ "rlim_max" : 0
4847+ },
4848+ {
4849+ "rlim_cur" : 0,
4850+ "rlim_max" : 0
4851+ },
4852+ {
4853+ "rlim_cur" : 0,
4854+ "rlim_max" : 0
4855+ },
4856+ {
4857+ "rlim_cur" : 0,
4858+ "rlim_max" : 0
4859+ }
4860+ ],
4861+ "oom_score_adj" : 0,
4862+ "normalexit" : [],
4863+ "kill_timeout" : 5,
4864+ "usage" : null,
4865+ "env" : [],
4866+ "version" : null,
4867+ "deleted" : 0,
4868+ "task" : 0,
4869+ "path" : "/com/ubuntu/Upstart/jobs/tty5",
4870+ "chdir" : null,
4871+ "start_on" : [
4872+ {
4873+ "env" : [
4874+ "[23]"
4875+ ],
4876+ "value" : 0,
4877+ "name" : "runlevel",
4878+ "type" : "EVENT_MATCH"
4879+ },
4880+ {
4881+ "value" : 0,
4882+ "name" : "not-container",
4883+ "type" : "EVENT_MATCH"
4884+ },
4885+ {
4886+ "value" : 0,
4887+ "type" : "EVENT_AND"
4888+ }
4889+ ],
4890+ "umask" : 18,
4891+ "setgid" : null
4892+ },
4893+ {
4894+ "setuid" : null,
4895+ "jobs" : [],
4896+ "emits" : [
4897+ "failsafe-boot"
4898+ ],
4899+ "session" : 0,
4900+ "debug" : 0,
4901+ "export" : [],
4902+ "reload_signal" : 1,
4903+ "expect" : "EXPECT_NONE",
4904+ "stop_on" : [
4905+ {
4906+ "value" : 0,
4907+ "name" : "static-network-up",
4908+ "type" : "EVENT_MATCH"
4909+ },
4910+ {
4911+ "env" : [
4912+ "rc-sysinit"
4913+ ],
4914+ "value" : 0,
4915+ "name" : "starting",
4916+ "type" : "EVENT_MATCH"
4917+ },
4918+ {
4919+ "value" : 0,
4920+ "type" : "EVENT_OR"
4921+ }
4922+ ],
4923+ "chroot" : null,
4924+ "console" : "CONSOLE_OUTPUT",
4925+ "kill_signal" : 15,
4926+ "name" : "failsafe",
4927+ "instance" : "",
4928+ "description" : "Failsafe Boot Delay",
4929+ "respawn_interval" : 5,
4930+ "process" : [
4931+ {
4932+ "script" : 1,
4933+ "command" : "\t# Determine if plymouth is available\n\tif [ -x /bin/plymouth ] && /bin/plymouth --ping ; then\n\t\tPLYMOUTH=/bin/plymouth\n\telse\n\t\tPLYMOUTH=\":\"\n\tfi\n\n # The point here is to wait for 2 minutes before forcibly booting \n # the system. Anything that is in an \"or\" condition with 'started \n # failsafe' in rc-sysinit deserves consideration for mentioning in\n # these messages. currently only static-network-up counts for that.\n\n\tsleep 20\n\n # Plymouth errors should not stop the script because we *must* reach\n # the end of this script to avoid letting the system spin forever\n # waiting on it to start.\n\t$PLYMOUTH message --text=\"Waiting for network configuration...\" || :\n\tsleep 40\n\n\t$PLYMOUTH message --text=\"Waiting up to 60 more seconds for network configuration...\" || :\n\tsleep 59\n\t$PLYMOUTH message --text=\"Booting system without full network configuration...\" || :\n\n # give user 1 second to see this message since plymouth will go\n # away as soon as failsafe starts.\n\tsleep 1\n exec initctl emit --no-wait failsafe-boot\n"
4934+ },
4935+ {
4936+ "script" : 0,
4937+ "command" : null
4938+ },
4939+ {
4940+ "script" : 0,
4941+ "command" : "logger -t 'failsafe' -p daemon.warning \"Failsafe of 120 seconds reached.\""
4942+ },
4943+ {
4944+ "script" : 0,
4945+ "command" : null
4946+ },
4947+ {
4948+ "script" : 0,
4949+ "command" : null
4950+ },
4951+ {
4952+ "script" : 0,
4953+ "command" : null
4954+ }
4955+ ],
4956+ "apparmor_switch" : null,
4957+ "respawn_limit" : 10,
4958+ "author" : "Clint Byrum <clint@ubuntu.com>",
4959+ "respawn" : 0,
4960+ "nice" : -21,
4961+ "limits" : [
4962+ {
4963+ "rlim_cur" : 0,
4964+ "rlim_max" : 0
4965+ },
4966+ {
4967+ "rlim_cur" : 0,
4968+ "rlim_max" : 0
4969+ },
4970+ {
4971+ "rlim_cur" : 0,
4972+ "rlim_max" : 0
4973+ },
4974+ {
4975+ "rlim_cur" : 0,
4976+ "rlim_max" : 0
4977+ },
4978+ {
4979+ "rlim_cur" : 0,
4980+ "rlim_max" : 0
4981+ },
4982+ {
4983+ "rlim_cur" : 0,
4984+ "rlim_max" : 0
4985+ },
4986+ {
4987+ "rlim_cur" : 0,
4988+ "rlim_max" : 0
4989+ },
4990+ {
4991+ "rlim_cur" : 0,
4992+ "rlim_max" : 0
4993+ },
4994+ {
4995+ "rlim_cur" : 0,
4996+ "rlim_max" : 0
4997+ },
4998+ {
4999+ "rlim_cur" : 0,
5000+ "rlim_max" : 0
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches