Linux: Проверяем статус сервиса.

  • Linux
Иногда требуется следить за работой сервиса и в случае его падения перезапускать его.
Поможет следующий скрипт-костылёк:

#!/bin/sh
TIMEDATE=$(date +%T)
STATUS=$(/etc/init.d/apache2 status | grep "Active" | awk '{print $2 $3}')
test "$STATUS" = "active(running)" || /etc/init.d/apache2 restart
echo $TIMEDATE - Start apache2-check > /etc/cron.hourly/log
В данном случае смотрим за апачем, в log пишем время последнего выполнения.

x11vnc: Автозапуск при старте системы.

  • Linux
Настройка автозапуска с паролем.

Установка:
apt-get install x11vnc
Устанавливаем пароль:
x11vnc -storepasswd

Enter VNC password: *********
Verify password: *********  
Write password to /root/.vnc/passwd?  [y]/n y
Password written to: /root/.vnc/passwd
Тест:

x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /root/.vnc/passwd -rfbport 5900 -shared
Создаем файл сервиса:
nano /etc/systemd/system/x11vnc.service

[Unit]
Description=x11vnc remote desktop server
After=multi-user.target

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /root/.vnc/passwd -rfbport 5900 -shared

Restart=on-failure

[Install]
WantedBy=multi-user.target
Запускаем:

systemctl daemon-reload
systemctl start x11vnc
systemctl status x11vnc
-------------
if active (running)
systemctl enable x11vnc.service