Я ищу способность создать сервис, чтобы выполнить psensor-сервер на запуске и смочь перезапустить его с помощью systemctl если возможный?
Я попытался найти, что место на самом деле отправляет учебное руководство на этом, 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 и/или окне терминала. Если у кого-либо есть более легкий путь, не стесняются отмечать это как ответ, и я обновлю, поскольку я получаю время.