Как запустить задачу перед началом работы?

У меня была та же проблема. Сначала я использовал supergrup cd для запуска ubuntu. когда вы находитесь в ubuntu, вы можете загрузить программу загрузки. Теперь вам нужно использовать расширенные настройки, я проверил разные способы изменения mbr. Не изменяйте настройки, просто запустите boot-repair в расширенных настройках.

Это сработало. Удачи.

2
задан 5 June 2012 в 18:32

18 ответов

start on starting network-interface
instance $INTERFACE
task
exec mything

и

start on starting networking
task
exec mything

ifup запускается одним из двух методов либо заданием network-interface, либо заданием networking, которое используется для настройки любых интерфейсов, не охваченных by udev.

Строка instance выше гарантирует, что ваша работа будет запущена для каждого из двух случаев, поскольку способ выскочки работает, одно условие or не будет блокировать другое.

(это ошибка btw: https://bugs.launchpad.net/upstart/+bug/568860 )

Если ваша работа не может выполняться одновременно или дважды , вам нужно разбить его на три задания. Один из них называется «mything-waiter»:

start on starting network-interface
instance $INTERFACE
task
exec start wait-for-state WAITER=mything-waiter-$UPSTART_JOB-$INTERFACE WAIT_FOR=mything

И еще один с аналогичной строкой exec для начала работы в сети:

start on starting networking
task
exec start wait-for-state WAITER=mything-waiter-networking WAIT_FOR=mything

И другой называется «mything», который просто

task
exec mything

Я думаю, что можно сделать аргумент, чтобы «начать с начала работы в сети», все это, но для этого потребуется перепроектировать создание сети в Ubuntu.

1
ответ дан 25 July 2018 в 18:38

Обнаружено обходное решение для меня.

Я удалил любую конфигурацию для eth0 из шаблона VM. Таким образом, он не воспитывается автоматически. Теперь мое конфигурационное задание начинается с starting networking, изменяет файл конфигурации и явно вызывает ifup eth0.

Хотя это решает мою проблему, это не соответствует общему случаю запуска службы / задачи в upstart перед сетью. Таким образом, я собираюсь оставить вопрос открытым.

1
ответ дан 25 July 2018 в 18:38
start on starting network-interface
instance $INTERFACE
task
exec mything

и

start on starting networking
task
exec mything

ifup запускается одним из двух методов либо заданием network-interface, либо заданием networking, которое используется для настройки любых интерфейсов, не охваченных by udev.

Строка instance выше гарантирует, что ваша работа будет запущена для каждого из двух случаев, поскольку способ выскочки работает, одно условие or не будет блокировать другое.

(это ошибка btw: https://bugs.launchpad.net/upstart/+bug/568860 )

Если ваша работа не может выполняться одновременно или дважды , вам нужно разбить его на три задания. Один из них называется «mything-waiter»:

start on starting network-interface
instance $INTERFACE
task
exec start wait-for-state WAITER=mything-waiter-$UPSTART_JOB-$INTERFACE WAIT_FOR=mything

И еще один с аналогичной строкой exec для начала работы в сети:

start on starting networking
task
exec start wait-for-state WAITER=mything-waiter-networking WAIT_FOR=mything

И другой называется «mything», который просто

task
exec mything

Я думаю, что можно сделать аргумент, чтобы «начать с начала работы в сети», все это, но для этого потребуется перепроектировать создание сети в Ubuntu.

1
ответ дан 2 August 2018 в 00:47

Не могли бы вы просто начать работу в start on startup? Есть ли какая-либо причина связать его с началом сетей, если вам просто нужно изменить конфигурацию до начала сети.

Изменить: ok, это не сработало.

Я не могу испортить свою систему init прямо сейчас, поэтому я должен дать некоторые рекомендации непроверенным:

Первый вариант: добавьте task stanza к своей работе. Это должно заставить Upstart ждать, пока он не выйдет до запуска заданий сетевого / сетевого интерфейса. Я уверен, что это не исправление проблемы с синхронизацией, поскольку в AskUbuntu было много вопросов о том, как вводить материал в обычный процесс загрузки.

Вторая опция: использовать переопределить файлы. Я думаю, что network-interface.conf - это тот, который вам нужно подделать. К сожалению, он уже использует секцию pre-start, поэтому вместо того, чтобы просто сделать это, мы должны скопировать его (и только его) в наш файл network-interface.override.

После того, как вы скопировали раздел pre-start просто измените контент в соответствии с вашими потребностями. Исходный файл остается как есть, но секция pre-start из вашего переопределения буквально переопределяет значение в исходном задании.

Надеюсь, что это помогает.

0
ответ дан 2 August 2018 в 00:47

Обнаружено обходное решение для меня.

Я удалил любую конфигурацию для eth0 из шаблона VM. Таким образом, он не воспитывается автоматически. Теперь мое конфигурационное задание начинается с starting networking, изменяет файл конфигурации и явно вызывает ifup eth0.

Хотя это решает мою проблему, это не соответствует общему случаю запуска службы / задачи в upstart перед сетью. Таким образом, я собираюсь оставить вопрос открытым.

1
ответ дан 2 August 2018 в 00:47
start on starting network-interface
instance $INTERFACE
task
exec mything

и

start on starting networking
task
exec mything

ifup запускается одним из двух методов либо заданием network-interface, либо заданием networking, которое используется для настройки любых интерфейсов, не охваченных by udev.

Строка instance выше гарантирует, что ваша работа будет запущена для каждого из двух случаев, поскольку способ выскочки работает, одно условие or не будет блокировать другое.

(это ошибка btw: https://bugs.launchpad.net/upstart/+bug/568860 )

Если ваша работа не может выполняться одновременно или дважды , вам нужно разбить его на три задания. Один из них называется «mything-waiter»:

start on starting network-interface
instance $INTERFACE
task
exec start wait-for-state WAITER=mything-waiter-$UPSTART_JOB-$INTERFACE WAIT_FOR=mything

И еще один с аналогичной строкой exec для начала работы в сети:

start on starting networking
task
exec start wait-for-state WAITER=mything-waiter-networking WAIT_FOR=mything

И другой называется «mything», который просто

task
exec mything

Я думаю, что можно сделать аргумент, чтобы «начать с начала работы в сети», все это, но для этого потребуется перепроектировать создание сети в Ubuntu.

1
ответ дан 4 August 2018 в 16:18

Не могли бы вы просто начать работу в start on startup? Есть ли какая-либо причина связать его с началом сетей, если вам просто нужно изменить конфигурацию до начала сети.

Изменить: ok, это не сработало.

Я не могу испортить свою систему init прямо сейчас, поэтому я должен дать некоторые рекомендации непроверенным:

Первый вариант: добавьте task stanza к своей работе. Это должно заставить Upstart ждать, пока он не выйдет до запуска заданий сетевого / сетевого интерфейса. Я уверен, что это не исправление проблемы с синхронизацией, поскольку в AskUbuntu было много вопросов о том, как вводить материал в обычный процесс загрузки.

Вторая опция: использовать переопределить файлы. Я думаю, что network-interface.conf - это тот, который вам нужно подделать. К сожалению, он уже использует секцию pre-start, поэтому вместо того, чтобы просто сделать это, мы должны скопировать его (и только его) в наш файл network-interface.override.

После того, как вы скопировали раздел pre-start просто измените контент в соответствии с вашими потребностями. Исходный файл остается как есть, но секция pre-start из вашего переопределения буквально переопределяет значение в исходном задании.

Надеюсь, что это помогает.

0
ответ дан 4 August 2018 в 16:18

Обнаружено обходное решение для меня.

Я удалил любую конфигурацию для eth0 из шаблона VM. Таким образом, он не воспитывается автоматически. Теперь мое конфигурационное задание начинается с starting networking, изменяет файл конфигурации и явно вызывает ifup eth0.

Хотя это решает мою проблему, это не соответствует общему случаю запуска службы / задачи в upstart перед сетью. Таким образом, я собираюсь оставить вопрос открытым.

1
ответ дан 4 August 2018 в 16:18
start on starting network-interface
instance $INTERFACE
task
exec mything

и

start on starting networking
task
exec mything

ifup запускается одним из двух методов либо заданием network-interface, либо заданием networking, которое используется для настройки любых интерфейсов, не охваченных by udev.

Строка instance выше гарантирует, что ваша работа будет запущена для каждого из двух случаев, поскольку способ выскочки работает, одно условие or не будет блокировать другое.

(это ошибка btw: https://bugs.launchpad.net/upstart/+bug/568860 )

Если ваша работа не может выполняться одновременно или дважды , вам нужно разбить его на три задания. Один из них называется «mything-waiter»:

start on starting network-interface
instance $INTERFACE
task
exec start wait-for-state WAITER=mything-waiter-$UPSTART_JOB-$INTERFACE WAIT_FOR=mything

И еще один с аналогичной строкой exec для начала работы в сети:

start on starting networking
task
exec start wait-for-state WAITER=mything-waiter-networking WAIT_FOR=mything

И другой называется «mything», который просто

task
exec mything

Я думаю, что можно сделать аргумент, чтобы «начать с начала работы в сети», все это, но для этого потребуется перепроектировать создание сети в Ubuntu.

1
ответ дан 6 August 2018 в 00:57

Не могли бы вы просто начать работу в start on startup? Есть ли какая-либо причина связать его с началом сетей, если вам просто нужно изменить конфигурацию до начала сети.

Изменить: ok, это не сработало.

Я не могу испортить свою систему init прямо сейчас, поэтому я должен дать некоторые рекомендации непроверенным:

Первый вариант: добавьте task stanza к своей работе. Это должно заставить Upstart ждать, пока он не выйдет до запуска заданий сетевого / сетевого интерфейса. Я уверен, что это не исправление проблемы с синхронизацией, поскольку в AskUbuntu было много вопросов о том, как вводить материал в обычный процесс загрузки.

Вторая опция: использовать переопределить файлы. Я думаю, что network-interface.conf - это тот, который вам нужно подделать. К сожалению, он уже использует секцию pre-start, поэтому вместо того, чтобы просто сделать это, мы должны скопировать его (и только его) в наш файл network-interface.override.

После того, как вы скопировали раздел pre-start просто измените контент в соответствии с вашими потребностями. Исходный файл остается как есть, но секция pre-start из вашего переопределения буквально переопределяет значение в исходном задании.

Надеюсь, что это помогает.

0
ответ дан 6 August 2018 в 00:57

Обнаружено обходное решение для меня.

Я удалил любую конфигурацию для eth0 из шаблона VM. Таким образом, он не воспитывается автоматически. Теперь мое конфигурационное задание начинается с starting networking, изменяет файл конфигурации и явно вызывает ifup eth0.

Хотя это решает мою проблему, это не соответствует общему случаю запуска службы / задачи в upstart перед сетью. Таким образом, я собираюсь оставить вопрос открытым.

1
ответ дан 6 August 2018 в 00:57
start on starting network-interface
instance $INTERFACE
task
exec mything

и

start on starting networking
task
exec mything

ifup запускается одним из двух методов либо заданием network-interface, либо заданием networking, которое используется для настройки любых интерфейсов, не охваченных by udev.

Строка instance выше гарантирует, что ваша работа будет запущена для каждого из двух случаев, поскольку способ выскочки работает, одно условие or не будет блокировать другое.

(это ошибка btw: https://bugs.launchpad.net/upstart/+bug/568860 )

Если ваша работа не может выполняться одновременно или дважды , вам нужно разбить его на три задания. Один из них называется «mything-waiter»:

start on starting network-interface
instance $INTERFACE
task
exec start wait-for-state WAITER=mything-waiter-$UPSTART_JOB-$INTERFACE WAIT_FOR=mything

И еще один с аналогичной строкой exec для начала работы в сети:

start on starting networking
task
exec start wait-for-state WAITER=mything-waiter-networking WAIT_FOR=mything

И другой называется «mything», который просто

task
exec mything

Я думаю, что можно сделать аргумент, чтобы «начать с начала работы в сети», все это, но для этого потребуется перепроектировать создание сети в Ubuntu.

1
ответ дан 7 August 2018 в 18:22

Не могли бы вы просто начать работу в start on startup? Есть ли какая-либо причина связать его с началом сетей, если вам просто нужно изменить конфигурацию до начала сети.

Изменить: ok, это не сработало.

Я не могу испортить свою систему init прямо сейчас, поэтому я должен дать некоторые рекомендации непроверенным:

Первый вариант: добавьте task stanza к своей работе. Это должно заставить Upstart ждать, пока он не выйдет до запуска заданий сетевого / сетевого интерфейса. Я уверен, что это не исправление проблемы с синхронизацией, поскольку в AskUbuntu было много вопросов о том, как вводить материал в обычный процесс загрузки.

Вторая опция: использовать переопределить файлы. Я думаю, что network-interface.conf - это тот, который вам нужно подделать. К сожалению, он уже использует секцию pre-start, поэтому вместо того, чтобы просто сделать это, мы должны скопировать его (и только его) в наш файл network-interface.override.

После того, как вы скопировали раздел pre-start просто измените контент в соответствии с вашими потребностями. Исходный файл остается как есть, но секция pre-start из вашего переопределения буквально переопределяет значение в исходном задании.

Надеюсь, что это помогает.

0
ответ дан 7 August 2018 в 18:22

Обнаружено обходное решение для меня.

Я удалил любую конфигурацию для eth0 из шаблона VM. Таким образом, он не воспитывается автоматически. Теперь мое конфигурационное задание начинается с starting networking, изменяет файл конфигурации и явно вызывает ifup eth0.

Хотя это решает мою проблему, это не соответствует общему случаю запуска службы / задачи в upstart перед сетью. Таким образом, я собираюсь оставить вопрос открытым.

1
ответ дан 7 August 2018 в 18:22
start on starting network-interface
instance $INTERFACE
task
exec mything

и

start on starting networking
task
exec mything

ifup запускается одним из двух методов либо заданием network-interface, либо заданием networking, которое используется для настройки любых интерфейсов, не охваченных by udev.

Строка instance выше гарантирует, что ваша работа будет запущена для каждого из двух случаев, поскольку способ выскочки работает, одно условие or не будет блокировать другое.

(это ошибка btw: https://bugs.launchpad.net/upstart/+bug/568860 )

Если ваша работа не может выполняться одновременно или дважды , вам нужно разбить его на три задания. Один из них называется «mything-waiter»:

start on starting network-interface
instance $INTERFACE
task
exec start wait-for-state WAITER=mything-waiter-$UPSTART_JOB-$INTERFACE WAIT_FOR=mything

И еще один с аналогичной строкой exec для начала работы в сети:

start on starting networking
task
exec start wait-for-state WAITER=mything-waiter-networking WAIT_FOR=mything

И другой называется «mything», который просто

task
exec mything

Я думаю, что можно сделать аргумент, чтобы «начать с начала работы в сети», все это, но для этого потребуется перепроектировать создание сети в Ubuntu.

1
ответ дан 10 August 2018 в 07:06

Не могли бы вы просто начать работу в start on startup? Есть ли какая-либо причина связать его с началом сетей, если вам просто нужно изменить конфигурацию до начала сети.

Изменить: ok, это не сработало.

Я не могу испортить свою систему init прямо сейчас, поэтому я должен дать некоторые рекомендации непроверенным:

Первый вариант: добавьте task stanza к своей работе. Это должно заставить Upstart ждать, пока он не выйдет до запуска заданий сетевого / сетевого интерфейса. Я уверен, что это не исправление проблемы с синхронизацией, поскольку в AskUbuntu было много вопросов о том, как вводить материал в обычный процесс загрузки.

Вторая опция: использовать переопределить файлы. Я думаю, что network-interface.conf - это тот, который вам нужно подделать. К сожалению, он уже использует секцию pre-start, поэтому вместо того, чтобы просто сделать это, мы должны скопировать его (и только его) в наш файл network-interface.override.

После того, как вы скопировали раздел pre-start просто измените контент в соответствии с вашими потребностями. Исходный файл остается как есть, но секция pre-start из вашего переопределения буквально переопределяет значение в исходном задании.

Надеюсь, что это помогает.

0
ответ дан 10 August 2018 в 07:06

Обнаружено обходное решение для меня.

Я удалил любую конфигурацию для eth0 из шаблона VM. Таким образом, он не воспитывается автоматически. Теперь мое конфигурационное задание начинается с starting networking, изменяет файл конфигурации и явно вызывает ifup eth0.

Хотя это решает мою проблему, это не соответствует общему случаю запуска службы / задачи в upstart перед сетью. Таким образом, я собираюсь оставить вопрос открытым.

1
ответ дан 10 August 2018 в 07:06

Обнаружено обходное решение для меня.

Я удалил любую конфигурацию для eth0 из шаблона VM. Таким образом, он не воспитывается автоматически. Теперь мое конфигурационное задание начинается с starting networking, изменяет файл конфигурации и явно вызывает ifup eth0.

Хотя это решает мою проблему, это не соответствует общему случаю запуска службы / задачи в upstart перед сетью. Таким образом, я собираюсь оставить вопрос открытым.

1
ответ дан 15 August 2018 в 19:04

Другие вопросы по тегам:

Похожие вопросы: