Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 как из java приложения перезагрузить комп  [new]
Ilya007
Member

Откуда:
Сообщений: 137
Не стандартная задача - хочется уметь перезапускать тачку (debian).
Что имеем - Spring-boot приложение - стоит хрен пойми где - вот "великолепные" и "очень умные" пользователи захотели перезапустить тачку целиком (отправляем например get запрос на рест контроллер) и все ребутается. Есть у кого опыт такого "чудеснейшего" задания?
Прошу научить плохому.
20 июл 21, 13:37    [22348983]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 8651
Ilya007,
Ты не поверишь,
shutdown -r now
20 июл 21, 13:45    [22348986]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 18911
PetroNotC Sharp,

кодом java
как вариант - запустить bash из кода java
20 июл 21, 13:49    [22348989]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
Ilya007
Member

Откуда:
Сообщений: 137
PetroNotC Sharp
Ilya007,
Ты не поверишь,
shutdown -r now


а прав хватит?
или надо наше приложение под супер юзером запукать?
20 июл 21, 14:26    [22349017]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 8651
Ilya007,
Запусти и проверь. Че спрашивать.
20 июл 21, 14:39    [22349022]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
mayton
Member

Откуда: loopback
Сообщений: 51690
Если прав не хватит - можно сделать cron-tab задание от имени root-пользователя которое будет
периодически поглядывать в определенную точку в файловой системе и ждать там появления
команды на ребут.

P.S. Подозреваю что реальная проблема автора в другом. У него что-то зависает или переполняется в java-app,
и нужно лечить это "там". А не делать удалённые ребуты из GET-метода...
20 июл 21, 15:20    [22349040]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
Garrick
Member

Откуда: Москва
Сообщений: 3113
Ilya007,

Покажи им SSH с командной строкой и скажи что это и есть то самое волшебное web-приложение.
20 июл 21, 16:18    [22349061]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
Basil A. Sidorov
Member

Откуда:
Сообщений: 11113
plink, вообще-то ...
20 июл 21, 16:47    [22349069]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
Sergunka
Member

Откуда: Bay Area, CA
Сообщений: 2540
Garrick
Ilya007,

Покажи им SSH с командной строкой и скажи что это и есть то самое волшебное web-приложение.


+1 Я за SSH

ssh <user>@<ip> sudo -c "shutdown -rf now"
20 июл 21, 20:47    [22349127]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
Ilya007
Member

Откуда:
Сообщений: 137
Garrick
Ilya007,

Покажи им SSH с командной строкой и скажи что это и есть то самое волшебное web-приложение.


да показал уже - но люди хотят странного.
21 июл 21, 10:42    [22349230]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
mayton
Member

Откуда: loopback
Сообщений: 51690
С мобильного приложения иногда хотят управлять своим бизнесом. Тоже странное....
21 июл 21, 10:58    [22349239]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 8651
Ilya007,
Админа наймите. Они хотят экономить на этой должности. Беднота.
21 июл 21, 10:59    [22349240]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
Ilya007
Member

Откуда:
Сообщений: 137
mayton
Если прав не хватит - можно сделать cron-tab задание от имени root-пользователя которое будет
периодически поглядывать в определенную точку в файловой системе и ждать там появления
команды на ребут.


админы уже что-то подобное сделали и если что-то "падает" то автоматом "подымается". но людям с не техническим образованием хочется иметь красную кнопу которая прям все перезагружает ))) стараюсь сделать не сильно позорно.
21 июл 21, 11:01    [22349243]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 8651
Ilya007,
Дак ты расскажи не технарям что будет если перегрузить в момент перевода зарплаты например.
21 июл 21, 11:12    [22349246]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
mayton
Member

Откуда: loopback
Сообщений: 51690
Перезагрузка - это жостко.

Надо делать gracefull. Сначала сделать в приложении хендлер shutdownHook. Сделать в хуке стоп всех тред-пулов.
И вообще закрытия всех ресурсов которые могут быть в недописанном состоянии. Из ОС вызывать kill -SIGINT <pid>.
И только потом через таймаут если не помогло уже ребутать все остальное.
21 июл 21, 11:20    [22349254]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 18911
тут задача - запустить bash , или что-то подобное из кода java.
21 июл 21, 12:16    [22349297]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 18911
16899726
21 июл 21, 12:23    [22349301]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
mayton
Member

Откуда: loopback
Сообщений: 51690
Вот еще проект на смежную тему http://www.jcraft.com/jsch/examples/Exec.java.html
21 июл 21, 13:38    [22349357]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
Garrick
Member

Откуда: Москва
Сообщений: 3113
вадя
тут задача - запустить bash , или что-то подобное из кода java.

Мне кажется тут должны быть какие-то проблемы с доступом. Если бы это было легко и просто, у нас бы пол Интернета в лёжку лежало бы.
21 июл 21, 13:55    [22349366]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 18911
Garrick,

автор
Мне кажется тут должны быть какие-то проблемы с доступом.
это само собой, но это следующий этап задачи.
21 июл 21, 13:57    [22349367]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
mayton
Member

Откуда: loopback
Сообщений: 51690
Garrick
вадя
тут задача - запустить bash , или что-то подобное из кода java.

Мне кажется тут должны быть какие-то проблемы с доступом. Если бы это было легко и просто, у нас бы пол Интернета в лёжку лежало бы.

А проблемы с ssh?
21 июл 21, 13:59    [22349368]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 8651
Garrick
вадя
тут задача - запустить bash , или что-то подобное из кода java.

Мне кажется тут должны быть какие-то проблемы с доступом. Если бы это было легко и просто, у нас бы пол Интернета в лёжку лежало бы.
весь интернет защищается чтобы никто не выполнил код операционке сервера. Изнутри.
Это первая линия обороны.
21 июл 21, 14:13    [22349375]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
mayton
Member

Откуда: loopback
Сообщений: 51690
PetroNotC Sharp
Garrick
пропущено...

Мне кажется тут должны быть какие-то проблемы с доступом. Если бы это было легко и просто, у нас бы пол Интернета в лёжку лежало бы.
весь интернет защищается чтобы никто не выполнил код операционке сервера. Изнутри.
Это первая линия обороны.

Для этого заводится отдельный пользоватеть. Reboot-user. Прописываются атрибуты на скрипты так чтобы он делал
только 1 разрешенное действие. Ребутал приложение или хост.
21 июл 21, 15:33    [22349425]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 8651
mayton,

Да там тысячи вариантов. Линий обороны несколько.
21 июл 21, 15:55    [22349441]     Ответить | Цитировать Сообщить модератору
 Re: как из java приложения перезагрузить комп  [new]
mayton
Member

Откуда: loopback
Сообщений: 51690
Я думаю что мы ломимся в открытую дверь. Утилит для удалённого мониторинга и управления - тысячи.

Просто зашли с позиции - нам бы подешевле и побыстрее на коленке.
21 июл 21, 22:47    [22349600]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Java Ответить