понедельник, 24 октября 2022 г.

Syncthing как служба в Windows 7/10

Возникла необходимость иметь небольшую и самую простую виртуальную машину Windows 7, в силу чего была установлена версия "Домашняя". Однако при организации обмена файлами с данным компьютером в локальной сети появился ряд неразрешимых проблем: 

1) с установленным сервером ftp невозможно было соединиться, несмотря на внесение необходимых записей в настройки сетевого экрана Windows (и даже при его отключении);

2) общие папки доступа на основной машине Linux не отображались даже при необходимых произведенных изменениях в параметрах сетевого обнаружения и доступа.

Способ подключения папок общего доступа в Virtualbox было решено не использовать по причине необходимости обмена файлами с ещё одним компьютером домашней локальной сети.

Проблема с обменом файлами (папками) решилась установкой Syncthing.  Описанное выше работает и в Windows 10.

На сайте Syncthing для Windows рекомендована установка SyncTrazor. Но держать лишнее приложение в системной трее было воспринято как не совсем хорошая идея и было принято решение поискать возможность запуска обычного экземпляра Syncthing без графического интерфейса, тем более что всё равно управление Syncthing производится через браузер.

Скачайте syncthing необходимой разрядности (32 или 64).

Для установки Syncthing как системной службы используйте ПО nssm нужной разрядности (скачать архив). Дальнейшие действия производились в соответствии с найденными рекомендациями.

Поскольку создание отдельных папок для nssm и syncthing показалось мне "расточительством", то оба этих файла были помещены в одну и ту же папка apps.



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

c:\apps\nssm.exe install Syncthing c:\apps\syncthing.exe

c:\apps\nssm.exe set Syncthing AppDirectory c:\apps

c:\apps\nssm.exe set Syncthing start SERVICE_DELAYED_AUTO_START

В некоторых версиях Windows это может не получиться. Касается ситуации автоматического перехода командной строки в папку system32. В таком случае следует ввести команду перехода в папку c:\apps ( cd c:\apps ) и далее выполнить команды:

 nssm.exe install Syncthing c:\apps\syncthing.exe

nssm.exe set Syncthing AppDirectory c:\apps

nssm.exe set Syncthing start SERVICE_DELAYED_AUTO_START

Поясняющий рисунок ниже:



В результате в системе будет создана служба Syncthing, выполняемая при старте системы с некоторой задержкой (отложенный запуск).



Syncthing должен запускаться от имени пользователя системы. Поэтому изменяю параметры запуска службы с системной учётной записи на учётную запись пользователя.



Если имя учётной записи пользователя системы "забыто", то его можно найти, найти на кнопку "Обзор..." справа (рис. выше).



Нажать на кнопку "Дополнительно" и убедиться в том, что в верхней строке среди объектов поиска присутствует "Пользователи". После чего снова нажать на кнопку "Поиск".




Перезагрузить Windows и проверить доступ к панели управления Syncthing, указав в адресной строке браузера  http://127.0.0.1:8384  Результатом должно быть отображение панели управления Syncthing.

Комментариев нет:

Отправить комментарий