Это продолжение темы про Syncthing. В предыдущей статье я рассказал как установить официальные репозитарии Syncthing чтобы обновления устанавливались по мере их выхода и содержали Syncthing в актуальном состоянии. В этой статье я коротенько расскажу как сделать, чтобы Syncthing запускался автоматически. Это точно работает на Ubuntu 14.04 LTS, я проверял :)
О вариантах автозапуска Syncthing
Есть несколько вариантов организации автозапуска Syncthing, это запуск вместе с графической оболочкой при запуске сеанса пользователем (подходит для не обременённого пользователя), запуск как сервис системы (фактически сервер для всех) и запуск под именем одного из пользователей, например хозяина компьютера (без варианта использования для других пользователей). И ясное дело, что я использую последний вариант.
Как настроить автозапуск
Требуется создать в системном каталоге файл (/etc/init/syncthing.conf) и перезапустить всю систему.
Делаем последовательно:
Открыть терминал комбинацией [CTRL+ALT+T]
Для Ubuntu 16.04 и старше
замените в командах ниже %USERNAME% на своё имя
systemctl enable syncthing@%USERNAME%.service systemctl start syncthing@%USERNAME%.service
всё как бы.
Для Ubuntu раннее, чем 16.04
Запустить команду редактора от имени root:
sudo nano /etc/init/syncthing.conf
Вставить содержание файла /etc/init/syncthing.conf:
description "Syncthing P2P sync service" start on (local-filesystems and net-device-up IFACE!=lo) stop on runlevel [!2345] env STNORESTART=yes env HOME=/home/%USERNAME% setuid "%USERNAME%" setgid "%USERNAME%" exec /usr/bin/syncthing respawn
Замените %USERNAME% на требуемое (например ваше) имя пользователя.
И сохранить файл /etc/init/syncthing.conf нажав в редакторе [CTRL+O] и для выхода [CTRL+X]
Продолжение для всех
В терминале пишем для перезагрузки:
sudo reboot
После перезапуска системы, запускаем браузер по адресу https://localhost:8384 и смотрим как оно работает.
Примечание
узнать на каком порту работает Syncthing можно посмотрев в файле /home/morikoff/.config/syncthing/config.xml строку (в нашем случае это 8384):
<gui enabled="true" tls="false"> <address>127.0.0.1:8384</address>
это говорит, что веб-интерфейс администрирования сервера откликается только локально, но изменив адрес на
0.0.0.0:8384
вы получаете доступ по сети с других IP-адресов. Войдите в этот веб-интерфейс и установите имя и пароль админа (я думаю это полезно).
Далее в конфиге есть указание общаться с серверами с любых адресов на порту 22000. Этот порт должен в вашей сети быть открыть в NAT, или если он блокируется.
<options> <listenAddress>0.0.0.0:22000</listenAddress>
В домашнем каталоге вашего пользователя как %USERNAME% появится каталог ~/Sync, который предназначен для создания в нём структуры каталогов синхронизаций. Но это ещё не всё. В следующей статье я расскажу о практическом применении Syncthing, если это будет интересно кому-то. Пишите в комменты.
Написал всё по мотивам документации.