Тема: Pier — WebDAV/Nextcloud, SFTP і NFS як звичайна літера диска у Windows
Привіт! Я з невеликої компанії iMobile, ми робимо Pier — програму для Windows, яка підключає віддалене сховище як звичайний диск з власною літерою. Розповім, як вона влаштована, бо, можливо, комусь стане в пригоді або буде цікаво покритикувати підхід.
Що підтримується:
- WebDAV (Nextcloud, ownCloud, Synology, QNAP, Apache, IIS);
- SFTP (будь-який SSH-сервер, пароль або ключі OpenSSH);
- NFSv3.
Диск показується через відкритий драйвер Dokany (інсталятор ставить його сам), тому Провідник, Office, програми резервного копіювання та скрипти працюють з ним як з локальним диском.
Навіщо, якщо у Windows є «Підключити мережевий диск»? Вбудований клієнт WebDAV за замовчуванням дозволяє Basic-автентифікацію лише через HTTPS (BasicAuthLevel), обмежує розмір файлу приблизно 50 МБ (FileSizeLimitInBytes), повільно показує великі теки і втрачає диск, коли зв'язок обривається. Клієнти синхронізації, навпаки, тягнуть цілі теки, навіть якщо потрібні два файли.
Як це зроблено в Pier:
- файли читаються блоками в кеш на локальному диску, тому мережею йдуть лише ті частини, які програма справді відкриває, і нічого не завантажується двічі;
- перервані завантаження і вивантаження продовжуються з останнього блоку (для Nextcloud — через протокол chunked upload);
- при обриві Wi-Fi або перепідключенні VPN диск не зникає: Pier сам перепідключається і дописує відкладені зміни;
- диск можна перевести в офлайн-режим — робота йде з кешу, зміни журналюються і відправляються пізніше;
- перед першим підключенням Pier перевіряє, що вміє сервер (запис, перейменування, мітки часу, регістр імен, докачування), і налаштовує диск під нього;
- працює як служба Windows, тож диски бачать усі користувачі, і вони залишаються після перезавантаження. Є значок у треї та командний рядок для скриптів.
Безкоштовна версія — до 5 дисків без обмеження в часі; Pro — 19 USD на рік. Код закритий, кажу одразу.
Windows 10/11 (64 біт), Windows Server 2019+.
Сторінка: https://new-imobile.com/en/pier/
(Українського інтерфейсу поки немає — є англійська та ще 15 мов.)
Буду радий відгукам: з якими серверами WebDAV/SFTP ви працюєте з Windows і що вам заважає?