Как запустить приложение Java при загрузке?

Привет всем, я совершенно новый для всего этого, поэтому, пожалуйста, несите меня. Я создал этот файл bash следующим образом:

rm /home/ubuntu/test.jar
wget http://mywebsite.com/test.jar
java -jar test.jar

Теперь я разместил этот файл во многих разных местах, запустил некоторое обновление, а также даже сделал задание cron с функцией @reboot.

Независимо от того, что java-программа никогда не запускается.

Теперь это автономный сервер Ubuntu для веб-служб Amazon без GUI, только SSH-доступ, поэтому я должен сделать это через командной строки и запустить его как какой-то демон. Я ценю любую помощь!

0
задан 1 June 2012 в 23:13

8 ответов

Помещение этих строк в /etc/rc.local будет еще одним вариантом. (В более новых версиях Ubuntu /etc/rc.local по умолчанию не существует, поэтому вы должны его создать. Он по-прежнему используется при загрузке, если он существует.)

Вы также должны попробовать дать полный путь к исполняемые файлы не расположены непосредственно в /bin, т. е. java и wget.

Однако, если вы пытаетесь запустить это как ограниченный пользователь (ubuntu?), а не , то использование /etc/rc.local может быть не лучшим способом, так как команды в /etc/rc.local выполняются как root.

Вы можете получить /etc/rc.local для запуска скрипта как - root пользователь, хотя (предполагая, что у вас есть административный доступ и, следовательно, можно создавать / редактировать /etc/rc.local). Если скрипт, который вы хотите запустить, /home/ubuntu/runtest, вы хотите запустить его как пользователь ubuntu, и вы настаиваете на его запуске с bash, то вы можете добавить эту строку в конец /etc/rc.local:

/usr/bin/sudo -u ubuntu bash /home/ubuntu/runtest > /dev/null
2
ответ дан 25 May 2018 в 10:43
  • 1
    Спасибо, что добавили эти комментарии. Я не знал, что Ubuntu 12.04 больше не имеет /etc/rc.local. – Samik 1 June 2012 в 23:52

Помещение этих строк в /etc/rc.local будет другой опцией. (В новых версиях Ubuntu /etc/rc.local по умолчанию не существует, поэтому вы должны его создать. Он по-прежнему используется при загрузке, если он существует.)

Вы также должны попробовать дать полный путь к исполняемые файлы не расположены непосредственно в /bin, т. е. java и wget.

Однако, если вы пытаетесь запустить это как ограниченный пользователь (ubuntu?), а не root, то использование /etc/rc.local может быть не лучшим способом сделать это, поскольку команды в /etc/rc.local выполняются как root.

Вы можете получить /etc/rc.local для запуска скрипта как - root пользователь, хотя (предполагая, что у вас есть административный доступ и, следовательно, можно создавать / редактировать /etc/rc.local). Если скрипт, который вы хотите запустить, /home/ubuntu/runtest, вы хотите запустить его как пользователь ubuntu, и вы настаиваете на его запуске с bash, то вы можете добавить эту строку в конец /etc/rc.local:

/usr/bin/sudo -u ubuntu bash /home/ubuntu/runtest > /dev/null
2
ответ дан 25 July 2018 в 18:41

Помещение этих строк в /etc/rc.local будет другой опцией. (В новых версиях Ubuntu /etc/rc.local по умолчанию не существует, поэтому вы должны его создать. Он по-прежнему используется при загрузке, если он существует.)

Вы также должны попробовать дать полный путь к исполняемые файлы не расположены непосредственно в /bin, т. е. java и wget.

Однако, если вы пытаетесь запустить это как ограниченный пользователь (ubuntu?), а не root, то использование /etc/rc.local может быть не лучшим способом сделать это, поскольку команды в /etc/rc.local выполняются как root.

Вы можете получить /etc/rc.local для запуска скрипта как - root пользователь, хотя (предполагая, что у вас есть административный доступ и, следовательно, можно создавать / редактировать /etc/rc.local). Если скрипт, который вы хотите запустить, /home/ubuntu/runtest, вы хотите запустить его как пользователь ubuntu, и вы настаиваете на его запуске с bash, то вы можете добавить эту строку в конец /etc/rc.local:

/usr/bin/sudo -u ubuntu bash /home/ubuntu/runtest > /dev/null
2
ответ дан 2 August 2018 в 00:50

Помещение этих строк в /etc/rc.local будет другой опцией. (В новых версиях Ubuntu /etc/rc.local по умолчанию не существует, поэтому вы должны его создать. Он по-прежнему используется при загрузке, если он существует.)

Вы также должны попробовать дать полный путь к исполняемые файлы не расположены непосредственно в /bin, т. е. java и wget.

Однако, если вы пытаетесь запустить это как ограниченный пользователь (ubuntu?), а не root, то использование /etc/rc.local может быть не лучшим способом сделать это, поскольку команды в /etc/rc.local выполняются как root.

Вы можете получить /etc/rc.local для запуска скрипта как - root пользователь, хотя (предполагая, что у вас есть административный доступ и, следовательно, можно создавать / редактировать /etc/rc.local). Если скрипт, который вы хотите запустить, /home/ubuntu/runtest, вы хотите запустить его как пользователь ubuntu, и вы настаиваете на его запуске с bash, то вы можете добавить эту строку в конец /etc/rc.local:

/usr/bin/sudo -u ubuntu bash /home/ubuntu/runtest > /dev/null
2
ответ дан 4 August 2018 в 16:21

Помещение этих строк в /etc/rc.local будет другой опцией. (В новых версиях Ubuntu /etc/rc.local по умолчанию не существует, поэтому вы должны его создать. Он по-прежнему используется при загрузке, если он существует.)

Вы также должны попробовать дать полный путь к исполняемые файлы не расположены непосредственно в /bin, т. е. java и wget.

Однако, если вы пытаетесь запустить это как ограниченный пользователь (ubuntu?), а не root, то использование /etc/rc.local может быть не лучшим способом сделать это, поскольку команды в /etc/rc.local выполняются как root.

Вы можете получить /etc/rc.local для запуска скрипта как - root пользователь, хотя (предполагая, что у вас есть административный доступ и, следовательно, можно создавать / редактировать /etc/rc.local). Если скрипт, который вы хотите запустить, /home/ubuntu/runtest, вы хотите запустить его как пользователь ubuntu, и вы настаиваете на его запуске с bash, то вы можете добавить эту строку в конец /etc/rc.local:

/usr/bin/sudo -u ubuntu bash /home/ubuntu/runtest > /dev/null
2
ответ дан 6 August 2018 в 00:59

Помещение этих строк в /etc/rc.local будет другой опцией. (В новых версиях Ubuntu /etc/rc.local по умолчанию не существует, поэтому вы должны его создать. Он по-прежнему используется при загрузке, если он существует.)

Вы также должны попробовать дать полный путь к исполняемые файлы не расположены непосредственно в /bin, т. е. java и wget.

Однако, если вы пытаетесь запустить это как ограниченный пользователь (ubuntu?), а не root, то использование /etc/rc.local может быть не лучшим способом сделать это, поскольку команды в /etc/rc.local выполняются как root.

Вы можете получить /etc/rc.local для запуска скрипта как - root пользователь, хотя (предполагая, что у вас есть административный доступ и, следовательно, можно создавать / редактировать /etc/rc.local). Если скрипт, который вы хотите запустить, /home/ubuntu/runtest, вы хотите запустить его как пользователь ubuntu, и вы настаиваете на его запуске с bash, то вы можете добавить эту строку в конец /etc/rc.local:

/usr/bin/sudo -u ubuntu bash /home/ubuntu/runtest > /dev/null
2
ответ дан 7 August 2018 в 18:25

Помещение этих строк в /etc/rc.local будет другой опцией. (В новых версиях Ubuntu /etc/rc.local по умолчанию не существует, поэтому вы должны его создать. Он по-прежнему используется при загрузке, если он существует.)

Вы также должны попробовать дать полный путь к исполняемые файлы не расположены непосредственно в /bin, т. е. java и wget.

Однако, если вы пытаетесь запустить это как ограниченный пользователь (ubuntu?), а не root, то использование /etc/rc.local может быть не лучшим способом сделать это, поскольку команды в /etc/rc.local выполняются как root.

Вы можете получить /etc/rc.local для запуска скрипта как - root пользователь, хотя (предполагая, что у вас есть административный доступ и, следовательно, можно создавать / редактировать /etc/rc.local). Если скрипт, который вы хотите запустить, /home/ubuntu/runtest, вы хотите запустить его как пользователь ubuntu, и вы настаиваете на его запуске с bash, то вы можете добавить эту строку в конец /etc/rc.local:

/usr/bin/sudo -u ubuntu bash /home/ubuntu/runtest > /dev/null
2
ответ дан 10 August 2018 в 07:08

Помещение этих строк в /etc/rc.local будет другой опцией. (В новых версиях Ubuntu /etc/rc.local по умолчанию не существует, поэтому вы должны его создать. Он по-прежнему используется при загрузке, если он существует.)

Вы также должны попробовать дать полный путь к исполняемые файлы не расположены непосредственно в /bin, т. е. java и wget.

Однако, если вы пытаетесь запустить это как ограниченный пользователь (ubuntu?), а не root, то использование /etc/rc.local может быть не лучшим способом сделать это, поскольку команды в /etc/rc.local выполняются как root.

Вы можете получить /etc/rc.local для запуска скрипта как - root пользователь, хотя (предполагая, что у вас есть административный доступ и, следовательно, можно создавать / редактировать /etc/rc.local). Если скрипт, который вы хотите запустить, /home/ubuntu/runtest, вы хотите запустить его как пользователь ubuntu, и вы настаиваете на его запуске с bash, то вы можете добавить эту строку в конец /etc/rc.local:

/usr/bin/sudo -u ubuntu bash /home/ubuntu/runtest > /dev/null
2
ответ дан 15 August 2018 в 19:07
  • 1
    Спасибо, что добавили эти комментарии. Я не знал, что Ubuntu 12.04 больше не имеет /etc/rc.local. – Samik 1 June 2012 в 23:52

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

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