Как я установил бы psensor-сервер как услуга на Ubuntu 16.04 LTS

Я ищу способность создать сервис, чтобы выполнить psensor-сервер на запуске и смочь перезапустить его с помощью systemctl если возможный?

0
задан 18 August 2018 в 23:00

1 ответ

Я попытался найти, что место на самом деле отправляет учебное руководство на этом, Wiki не загрузилась бы, чтобы я добавил страницу, и я действительно не знаю, куда это идет. Но я записал учебное руководство для этого, и я ни в коем случае не эксперт, но это было то, как мне удалось получить эту работу над моим сервером, не имея необходимость открывать терминал и выполняться, запуск управляют каждый раз. Если кто-либо может думать о лучшем месте для помещения этого или знает, где это должно быть, сообщите мне...

Я знаю, что некоторые сказали, что ppa не необходим, можно пропустить этот шаг, при необходимости поскольку это уже находится в репозитории вселенной, однако добавляя, что PPA гарантирует получение последних стабильных обновлений при продвижении psensor командой.

Это руководство покажет Вам, как установить Psensor-сервер на ubuntu 16.04 Server и затем создать сервис для запуска, это на данном порте в системе запускается

Первая вещь, которую мы должны сделать, быть уверенной, что система является актуальным мудрым пакетом, не уверенный, что это имеет значение, но это всегда - хорошая практика.

sudo apt update
sudo apt upgrade

Следующая вещь состоит в том, чтобы установить предпосылки для Psensor

sudo apt install lm-sensors

Запустите обнаружение своих аппаратных датчиков

sudo sensors-detect 

Это спросит серию вопросов, ответит на да на все, если Вы не будете знать то, в чем Вы нуждаетесь.

Проверьте, что это работает путем выполнения следующего:

sensors

Вывод должен выглядеть примерно так, однако обратите внимание, что Ваш будет варьироваться на основе того, сколько датчиков Вы имеете в своем ПК, таким образом, Ваше чтение не будет точно.

coretemp-isa-0000
Адаптер: адаптер ISA
Базовый 0: +46.0C (высоко = +76.0C, критика = +100.0C)

coretemp-isa-0001
Адаптер: адаптер ISA
Базовый 1: +44.0C (высоко = +76.0C, критика = +100.0C)

После этого мы установим psensor и psensor-сервер, Мы будем использовать репозиторий, чтобы быть уверенными, что у нас есть последняя стабильная версия. Установите предпосылки для, добавляют - склонный, если их не уже представляют на Вашей машине.

sudo apt install software-properties-common python-software-properties

Следующий шаг добавляет репозитории

sudo add-apt-repository ppa:jfi/psensor

Обновите Репозитории sudo способная Установка обновления Psensor и Psensor-сервер

sudo apt update && sudo apt install psensor psensor-server

Теперь, когда нам установили Psensor-сервер, мы должны записать пару сценариев, чтобы запустить и остановить сервис.
При предупреждении сценарий остановки просто использует pkill, который я был проинформирован, который, вероятно, не наилучший вариант, но в моих целях это не было проблемой, Вы, возможно, должны адаптировать сценарий к своим потребностям соответственно.

первый сценарий создается следующим образом

Я использую нано, можно использовать любого редактора, которого Вы предпочитаете. Если у Вас нет нано, можно получить его следующим.

sudo apt install nano

затем

sudo nano /home/someuser/startps.sh

замените someuser своим именем пользователя

когда это открывается, вводят следующее

#!/bin/bash
sudo psensor-server --port=8085

Можно использовать любой порт, которого Вы желаете, просто удостоверяетесь, что он не конфликтует с портами, уже открываются в системе.

CTRL + X и ответ да для сохранения

затем проблема

sudo nano /home/someuser/stopps.sh

Снова замените someuser своей учетной записью пользователя.

введите следующее

#!/bin/bash
sudo pkill psensor-server

CTRL + X и ответ да для сохранения.

Для создания сервиса дают следующую команду

sudo nano /etc/systemd/system/startps.service

Введите следующее

[Unit]

Description=psensor service



[Service]

ExecStart=/home/someuser/startps.sh
ExecStop=/home/someuser/stopps.sh



[Install]

WantedBy=multi-user.target

Замените someuser в путях к тому же имени пользователя, которое Вы использовали при создании .sh сценариев.
CTRL + X и да для сохранения.
Затем введите следующее на своем терминале

sudo chmod u+x /home/someuser/startps.sh && sudo chmod u+x /home/someuser/stopps.sh

Снова не забудьте заменять someuser своим именем пользователя.

Теперь для запуска нашего сервиса мы вводим

sudo systemctl start startps

это должно запустить и забрать Вас к терминальной подсказке, при котором времени мы входим

sudo systemctl status startps

Вывод должен быть следующие

● startps.service - psensor service
   Loaded: loaded (/etc/systemd/system/startps.service; disabled; vendor preset: enabled)
   Active: active (running) since Fri 2018-08-10 16:42:43 CDT; 2s ago
  Process: 15300 ExecStop=/home/someuser/stopps.sh (code=exited, status=203/EXEC)
 Main PID: 15385 (startpf.sh)
    Tasks: 4
   Memory: 1.9M
      CPU: 21ms
   CGroup: /system.slice/startps.service
           ├─15385 /bin/bash /home/someuser/startpf.sh
           ├─15387 sudo psensor-server --port=8085
           └─15388 psensor-server --port=8085

Aug 10 16:42:43 [hostname] systemd[1]: Started psensor service.
Aug 10 16:42:43 [hostname] sudo[15387]:     root : TTY=unknown ; PWD=/ ; USER=root ; COMMAND=/usr/bin/psensor-server --port=8085
Aug 10 16:42:43 [hostname] sudo[15387]: pam_unix(sudo:session): session opened for user root by (uid=0)

Отметьте, где это говорит отключенный, это должно также сказать Вам, что процесс работает.
Теперь включить Ваш сервисный тип

sudo systemctl enable startps

если это возвращается к терминалу, можно выйти

sudo systemctl status startps

Необходимо теперь видеть этот ответ.

● startps.service - psensor service
   Loaded: loaded (/etc/systemd/system/startps.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2018-08-10 16:42:43 CDT; 45min ago<br>
 Main PID: 15385 (startpf.sh)
   CGroup: /system.slice/startps.service
           ├─15385 /bin/bash /home/someuser/startps/startps.sh
           ├─15387 sudo psensor-server --port=8085
           └─15388 psensor-server --port=8085

Aug 10 16:42:43 [hostname] systemd[1]: Started psensor service.
Aug 10 16:42:43 [hostname] sudo[15387]:     root : TTY=unknown ; PWD=/ ; USER=root ; COMMAND=/usr/bin/psensor-server --port=8085
Aug 10 16:42:43 [hostname] sudo[15387]: pam_unix(sudo:session): session opened for user root by (uid=0)

Главное, которое Вы ищете здесь, состоит в том, что, как это говорит, включил во второй строке.

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

Я чувствую, что необходимо знать, что psensor-сервер с он создается в сервере HTTP, не имеет никаких мер безопасности что так когда-либо. Таким образом, по существу при открытии его для внешнего мира, Вы делаете так на Ваш собственный риск, и я не принимаю на себя ответственности, должен хакер frag Ваш компьютер Именно поэтому, я конкретно включал следующую часть этого руководства, чтобы показать Вам, как открыть порт в iptables к одной клиентской машине, можно адаптировать это так много раз, как Вам нравится.

таким образом для открытия порта для клиентской машины Вы использовали бы следующее

sudo iptables -I INPUT -p tcp -s x.x.x.x --dport 8085 -j ACCEPT 

Следует иметь в виду, что x.x.x.x был бы IP Вашей клиентской машины, Вы хотите получить доступ к psensor-серверу http страница.

Также при установке другого порта после флага-dport, необходимо было бы адаптироваться 8085 к порту, который Вы выбрали в создании startps.sh на шагах выше.

Теперь необходимо смочь перейти к клиентской машине и ввести http://x.x.x.x:8085, где x.x.x.x является IP сервера, и 8085 порт, который Вы устанавливаете в создании startps.sh на шагах выше.

Следующие руководства использовались в создании этого руководства. Команды были адаптированы для удаления склонный - добираются, поскольку склонный теперь способ по умолчанию установить программное обеспечение в ubuntu 16.04 https://wpitchoune.net/psensor/
https://wpitchoune.net/psensor/README.html
http://lifeonubuntu.com/ubuntu-missing-add-apt-repository-command/
https://www.digitalocean.com/community/tutorials/understanding-systemd-units-and-unit-files
Как я выполняю единственную команду при запуске с помощью systemd?
https://www.garron.me/en/bits/iptables-open-port-for-specific-ip.html
А также #ubuntu-server irc канал.
Я надеюсь, что это помогает кому-то, кто хочет сделать то, что я сделал, но не имею знанием как. Обратите внимание, что это руководство было, очевидно, предназначено для пользователей как я, которые действительно не знают много о Ubuntu и/или окне терминала. Если у кого-либо есть более легкий путь, не стесняются отмечать это как ответ, и я обновлю, поскольку я получаю время.

0
ответ дан 28 October 2019 в 03:10

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

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