Как написать скрипт запуска

Я хочу написать файл сценария запуска, который запускает мою среду kafka.

Я попытался сделать следующее:

#!/bin/bash
/usr/local/zookeeper-3.4.11/bin/zkServer.sh start
/usr/local/kafka_2.12-1.0.0/bin/kafka-server-start.sh -daemon /usr/local/kafka_2.12-1.0.0/config/server.properties

Проблема в том, что он запускает только zookeeper, но не сервер kafka.
Что я делаю не так?

0
задан 28 November 2017 в 13:45

2 ответа

Предполагая, что этот скрипт не нуждается в привилегиях sudo.

Одним из способов автоматического запуска скрипта является использование метода автоматического запуска рабочего стола.

В Ubuntu вы можете сделать это следующим образом:

  • Создать файл в .config / autostart из вашего домашнего каталога с расширением .desktop

Скажем, вы создали zookeeper.desktop, затем откройте и включите этот формат.

Для Zookeeper Entry

[Desktop Entry]

Type=Application

Name=Zookeeper

Exec=/usr/local/zookeeper-3.4.11/bin/zkServer.sh start

Затем создайте отдельный для:

Для Kafra Entry

[Desktop Entry]

Type=Application

Name=kafra

Exec=/usr/local/kafka_2.12-1.0.0/bin/kafka-server-start.sh -daemon /usr/local/kafka_2.12-1.0.0/config/server.properties

или просто сценарий, который вы сделали

Для вашей записи в сценарии

[Desktop Entry]

Type=Application

Name=/name/of/your/script

Exec=/path/to/your/script

Тогда вы можете сделать это следующим образом (sudo)

добавить путь вашего скрипта к /etc/rc.local(open и отредактируйте rc.local)

/ path / to / your / script & amp;

выход 0

если он не существует, но в вашей системе есть /etc/rc.d1 to 6, просто добавьте ваш скрипт в эту папку и он будет выполнен с правами sudo.

1
ответ дан 28 November 2017 в 13:45

Вариант подхода, описанного выше, заключается в изменении команды Exec в файле .desktop следующим образом:

    Exec=gnome-terminal -- /path/to/your/script.sh start

Это имеет два преимущества

  1. Вы можете сохранить свои Сценарий где угодно, без необходимости что-либо изменять в rc.local или / etc
  2. Вы запускаете сценарий в новом окне терминала, которое позволяет увидеть подсказку сценария и, например, введите необходимый пароль sudo, если ваш скрипт содержит команду sudo.
0
ответ дан 28 November 2017 в 13:45

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

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