Монтирование OneDrive в Linux — сборка NetDrive для Ubuntu

4 мин чтения provider-guide onedrive linux
Alex
AlexPrincipal Engineer
Монтируйте личный OneDrive или OneDrive для бизнеса в Ubuntu как обычную точку монтирования Linux с помощью экспериментальной сборки NetDrive.

Серверу сборки на Ubuntu нужно читать несколько документов спецификаций из общей библиотеки OneDrive для бизнеса перед каждым релизом, а установка официального клиента синхронизации Microsoft на headless-машину — не самый удачный вариант. Сборка NetDrive для Linux решает эту проблему: она монтирует учётную запись OneDrive в обычную точку монтирования, так что скрипт, выполняющий cat /mnt/onedrive/specs/release-notes.md, читает актуальный файл с серверов Microsoft, а не устаревшую локальную копию, которую кто-то забыл синхронизировать.

NetDrive drive manager showing Google Drive, S3 and pCloud mounted as drive lettersMounted clouds appearing as native drives in Windows File Explorer

Монтирование OneDrive в Ubuntu

NetDrive показывает Google Drive, OneDrive, S3, SFTP, WebDAV и другие хранилища как обычные диски в Windows и macOS — без синхронизации и полной загрузки файлов.

  • Работает на Ubuntu 16.04 и новее
  • Личный OneDrive и OneDrive для бизнеса — одновременно
  • Файлы передаются по требованию — ничего не скачивается заранее
WindowsmacOS
Скачать NetDrive для Linux →

Бесплатный пробный период. Доступны бессрочная лицензия и подписка.

Почему точка монтирования лучше папки синхронизации

Клиент синхронизации OneDrive от Microsoft построен вокруг постоянного обновления локальной копии — он скачивает файлы прежде, чем к ним можно будет обратиться. На ноутбуке это разумный компромисс, но на Linux-сервере сборки, которому нужно читать всего три файла из общей библиотеки объёмом в десятки гигабайт, это неудобно. Монтирование пропускает шаг скачивания всего подряд. NetDrive обрабатывает каждое чтение и запись напрямую через учётную запись OneDrive, так что вызов open() в скрипте получает актуальный удалённый файл без предварительной синхронизации.

NetDrive поддерживает OneDrive с самого первого релиза и рассматривает OneDrive for Business как отдельный тип подключения от личного OneDrive — он использует современный API Microsoft и хранится в собственной конфигурации, поэтому рабочую и личную учётные записи можно смонтировать одновременно, и они не будут мешать друг другу.

NetDrive монтирует облачное хранилище как локальный диск — то же базовое взаимодействие обеспечивает сборка для Linux в точке монтирования

Установка NetDrive на Ubuntu

Сборка NetDrive для Linux не распространяется через репозитории пакетов Ubuntu, поэтому установка идёт через GitHub, а не через apt:

  1. Перейдите на github.com/NetDrive/installer и скачайте релиз, соответствующий вашей версии Ubuntu.
  2. Следуйте примечаниям к релизу в репозитории установщика — перед тем как NetDrive сможет что-либо монтировать, нужно установить драйвер.
  3. Установите сам пакет NetDrive.
  4. Запустите NetDrive. При первом запуске загружается компонент драйвера, для чего может потребоваться sudo, в зависимости от настроек вашей системы.

Минимально поддерживаемая версия — Ubuntu 16.04. Обновления выходят как релизы GitHub, а не через apt upgrade, и Linux остаётся под собственной меткой NetDrive — экспериментально: основное тестирование приходится на Windows и macOS, поэтому эта сборка больше подходит для сервера сборки или машины разработчика, чем для чего-то критичного в продакшене без предварительного тестирования.

Пошагово: подключение OneDrive в Ubuntu

  1. Откройте Drive Manager NetDrive и нажмите + Add Drive.
  2. Выберите OneDrive для личной учётной записи Microsoft или OneDrive for Business для рабочей учётной записи Microsoft 365.

Логотип провайдера OneDrive в списке подключений NetDrive

  1. Войдите через OAuth-поток, который откроется в браузере по умолчанию. На headless-машине без браузера выполните одноразовую авторизацию с другого устройства, вошедшего в ту же учётную запись, либо используйте сессию с X-forwarding.
  2. Задайте точку монтирования — например, /mnt/onedrive, или любую пустую директорию, в которую у вас есть право записи.
  3. Нажмите Connect. NetDrive аутентифицируется в Microsoft и монтирует учётную запись по указанному пути.

Списки каталогов при первом просмотре папки приходят из API OneDrive; отдельные файлы не скачиваются, пока их что-то не откроет.

Проверка монтирования из терминала

Прежде чем направлять скрипт на этот путь, убедитесь, что монтирование действительно сработало, а не полагайтесь только на GUI:

# Confirm the mount is listed
mount | grep onedrive

# Or just try listing it
ls /mnt/onedrive

Проверка успешного подключения облачного диска после монтирования

Если список пуст, сначала вернитесь к шагу OAuth — прерванный поток авторизации в браузере на headless-машине является самой частой причиной незавершённого подключения OneDrive, куда более вероятной, чем что-либо связанное с точкой монтирования. Для OneDrive for Business отдельно проверьте, что вы выбрали именно тип подключения Business, а не личный OneDrive — у них разные потоки входа, и они не аутентифицируются друг против друга.

Что учитывать в сборке для Linux

  • Отдельный график релизов — компонент драйвера для Linux выходит по собственному расписанию, поэтому исправление, вышедшее для Windows или macOS, не обязательно появится в Linux в ту же неделю.
  • Нет интеграции с apt — установки и обновления приходят из релизов GitHub, а не из стандартных репозиториев Ubuntu.
  • Windows и macOS — основные, наиболее протестированные платформы — сам NetDrive описывает Linux как экспериментальный. CI-раннер или личная машина разработчика, читающие данные из OneDrive несколько раз в день, — разумный сценарий использования; необслуживаемый продакшен-конвейер стоит тщательно протестировать, прежде чем на него полагаться.

Итоги

Монтирование OneDrive в Ubuntu даёт headless- или десктопной машине с Linux тот же доступ через точку монтирования, что NetDrive предоставляет в Windows и macOS, через установщик, который находится на GitHub, а не в apt. Про тот же провайдер на более протестированной платформе см. Mount OneDrive on Windows; про другой тип подключения в сборке для Linux — Mount Google Drive on Linux; а про более широкую картину по Linux — NetDrive on Ubuntu Linux.

— Alex, NetDrive