- Автоматичне підключення віддаленого сховища в Windows Server через rclone, WinFsp та службу NSSM.
rclone + WinFsp + NSSM
Автозапуск під час завантаження
Вимоги
Стандартні засоби Windows підключають як мережні диски SMB та WebDAV, але не FTP, FTPS або SFTP. rclone виконує підключення, WinFsp надає файлову систему, а NSSM запускає rclone як Windows.
Перевірте rclone:
rclone version
Перевірте службу WinFsp:
Get-Service WinFsp.Launcher
Очікуваний результат:
Результат
Status Name DisplayName ------ ---- ----------- Running WinFsp.Launcher WinFsp.Launcher
Крок 1
Створення підключення rclone
Відкрийте PowerShell і запустіть майстер:
rclone config
Створити remote з ім'ям storage. Приклад для SFTP:
Параметри майстра
Name: storage Storage: SFTP Host: storage.example.com User: username Password: ******** Port: 22
Для FTP/FTPS виберіть тип FTP, а потім виберіть хост, користувача, пароль, порт і режим TLS. Параметр explicit_tls зазвичай використовують для явного FTPS, а tls – для неявного FTPS. Значення повинні відповідати серверу.
Перевірте доступ до каталогів:
rclone lsd storage:
Відображається список каталогів віддаленого сховища.
Розташування конфігурації
Для служби зручно зберігати конфігурацію у спільній системній папці:
Шлях
C:\ProgramData\rclone\rclone.conf
Дізнайтесь поточний шлях:
rclone config file
У всіх подальших командах файл задається явно:
Параметр rclone
--config "C:\ProgramData\rclone\rclone.conf""
Обліковий запис служби повинен мати право читання конфігурації та запису до каталогів кешу та журналів.
Створення робочих каталогів
Запустіть PowerShell від імені адміністратора:
New-Item -ItemType Directory -Force -Path ` "C:\ProgramData\rclone", ` "C:\ProgramData\rclone\Logs", ` "C:\ProgramData\rclone\RcloneCache""
У результаті маємо існувати:
Каталоги
C:\ProgramData\rclone\ C:\ProgramData\rclone\Logs\ C:\ProgramData\rclone\RcloneCache\
Перевірка ручного підключення
Перед створенням служби встановіть вручну. Вікно залишиться зайнятим процесом rclone - це нормально.
rclone mount storage: X: ` --config "C:\ProgramData\rclone\rclone.conf" ` --network-mode ` --vfs-cache-mode full ` --dir-cache-time 24h ` --vfs-cache-max-size 2G ` --cache-dir "C:\ProgramData\r "C:\ProgramData\rclone\Logs\rclone.log" ` --log-level INFO
В іншому вікні перевірте диск:
Get-ChildItem X:\
Диск X: з'явився команда виводить вміст сховища.
Зупиніть ручний процес поєднанням Ctrl+C та переконайтеся, що літера X: звільнилася.
Пояснення параметрів
| Параметр | Призначення |
|---|---|
| -network-mode | Підключає як мережевий диск Windows. |
| –vfs-cache-mode full | Повний VFS-кеш для програм, які потребують довільного доступу до файлів. |
| -dir-cache-time 24h | Кешує метадані та списки каталогів до 24 годин. |
| -vfs-cache-max-size 2G | Обмежує максимальний розмір локального VFS-кешу 2 ГБ. |
| -cache-dir | Задає каталог зберігання локального кешу. |
| -log-file | Записує повідомлення rclone у вказаний файл. |
| -log-level INFO | Включає інформаційний рівень журналу. |
Якщо вміст часто змінюють інші користувачі або процеси, зменшіть –dir-cache-time, наприклад, до 10m або 1h.
Встановлення NSSM
Розпакуйте NSSM, наприклад, в:
Шлях
C:\Program Files\nssm\
В інструкції використовується файл, що виконується:
Виконуваний файл
C:\Program Files\nssm\win64\nssm.exe
Створення служби Windows
Запустіть PowerShell від імені адміністратора:
& "C:\Program Files\nssm\win64\nssm.exe" install RcloneStorage
Вкладка Application
| Поле | Значення |
|---|---|
| Path | C:\Program Files\rclone\rclone.exe |
| Startup directory | C:\Program Files\rclone |
| Arguments | Рядок нижче, починаючи зі слова mount. |
Arguments · один рядок
mount storage: X: --config "C:\ProgramData\rclone\rclone.conf" --network-mode --vfs-cache-mode full --dir-cache-time 24h --vfs-cache-max-size 2G --cache-dir "C:\ProgramData\rclone\RcloneCache" "C:\ProgramData\rclone\Logs\rclone.log" --log-level INFO
Вкладка Details
| Поле | Значення |
|---|---|
| Display name | Rclone Storage Mount |
| Description | Mount FTP/FTPS/SFTP storage as drive X: |
Вкладка Log on
Виберіть Local System account або вкажіть окремий службовий обліковий запис, якщо цього вимагають політики інфраструктури.
Служби працюють у окремому сеансі Windows. Диск, створений від імені LocalSystem, може не відображатися у Провіднику користувача, хоча служба працює. Якщо користувачеві потрібен видимий диск X:, запускайте службу під відповідним обліковим записом та перевірте правила вашої версії Windows/WinFsp.
Вкладка Exit actions
Щоб завершити програму, виберіть Restart, щоб NSSM перезапускав rclone. Потім натисніть Install service.
Автоматичний запуск
Встановіть тип автоматичного запуску. У PowerShell використовуйте саме sc.exe:
CMD/PowerShell
sc.exe config RcloneStorage start=auto
Запустіть службу:
Start-Service RcloneStorage
Перевірте стан:
Get-Service RcloneStorage
Очікуваний статус: Running.
Перевірка результату
Перевірте диск та доступ до даних:
Get-PSDrive X Get-ChildItem X:\
Перегляньте останні рядки журналу:
Get-Content "C:\ProgramData\rclone\Logs\rclone.log" -Tail 50
Контрольний перелік
- Служба RcloneStorage має статус Running.
- Процес rclone.exe запущено.
- Диск X: доступний у потрібному сеансі.
- Читання тестового файлу відбувається успішно.
- Запис та видалення тестового файлу працюють, якщо ресурс не призначений лише для читання.
- Після перезавантаження сервера служба запускається автоматично.
Управління службою
Запустити
Start-Service RcloneStorage
Зупинити
Stop-Service RcloneStorage
Перезапустити
Restart-Service RcloneStorage
Відкрити налаштування NSSM
PowerShell
& "C:\Program Files\nssm\win64\nssm.exe" edit RcloneStorage
Показати конфігурацію служби
& "C:\Program Files\nssm\win64\nssm.exe" dump RcloneStorage
Видалити службу
& "C:\Program Files\nssm\win64\nssm.exe" remove RcloneStorage confirm
Спочатку зупиніть службу. Видалення реєстрації служби не видаляє конфігурацію rclone, кеш та журнали.
Рекомендована підсумкова команда запуску служби
Вставте рядок у полі Arguments на вкладці Application у NSSM:
NSSM · Arguments · один рядок
mount storage: X: --config "C:\ProgramData\rclone\rclone.conf" --network-mode --vfs-cache-mode full --dir-cache-time 24h --vfs-cache-max-size 2G --cache-dir "C:\ProgramData\rclone\RcloneCache" "C:\ProgramData\rclone\Logs\rclone.log" --log-level INFO
Конфігурація монтує remote storage: як мережевий диск X: використовує повний VFS-кеш, веде журнал і запускається разом з Windows через службу RcloneStorage.
Замініть ім'я remote, літеру диска, шляхи та параметри кешу, якщо вони відрізняються у вашому середовищі. Перевірте підключення вручну та перевірте автозапуск після перезавантаження.
Просто зв'яжіться з нами, і ми допоможемо вибрати найкраще рішення для вас.

