LinuxでBoxをマウント — NetDriveの実験的Ubuntuビルド

読了目安 7 分 provider-guide box linux
Kai
KaiJunior Engineer
NetDriveの実験的なLinuxビルドを使い、チームのBoxアカウントをUbuntu上のマウントポイントとしてマウントする方法。セットアップ手順とトラブルシューティングも解説。

ある小規模なプラットフォームチームは、数年前から社内のランブックやアーキテクチャ図をBoxで標準化しており、チームの半数は現在ワークステーションでUbuntuを使っている。シェルスクリプトから図を確認したり、Linuxネイティブのツールで開いたりする必要があるたびに、これまではBoxのWeb UI経由でファイルを引っ張り出し、編集後は手動で再アップロードしていた。NetDriveのLinuxビルドは、同じBoxアカウントを通常のマウントポイントとしてマウントするので、/mnt/box/runbooks/incident-response.mdを読むスクリプトは、Boxから直接最新のファイルを取得できる。

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

UbuntuでBoxをマウント

NetDrive を使えば Google Drive、OneDrive、S3、SFTP、WebDAV などが Windows と macOS でネイティブドライブとして表示されます — 同期も、まるごとダウンロードも不要です。

  • Ubuntu 16.04以降で動作
  • BoxアカウントをLinuxのマウントポイントにマウント — 別途同期フォルダは不要
  • 同じBoxアカウントがWindows、macOS、Linuxで動作
WindowsmacOS
Linux版NetDriveをダウンロード →

無料トライアル。永久ライセンスとサブスクリプションプランあり。

NetDriveのLinuxビルドにおけるBox

Boxは、2017年9月の最初期の3.xリリース以来、Google Drive、OneDrive、Dropboxと並んでNetDriveがサポートしてきたプロバイダーの一つだ。Windows版とmacOS版ではこのサポートはプロダクション品質として扱われているが、Linux版ではNetDrive独自の**実験的(experimental)**というラベルが付いている — これはLinuxビルド全体に対する位置づけであり、特定のプロバイダーだけに付くものではない。WindowsとmacOSは引き続き、より安定していてテストも厚い対象だ。

NetDrive for Linuxはディストリビューションのパッケージマネージャー経由では配布されていない。github.com/NetDrive/installerでGitHubリリースとして提供されており、Ubuntu 16.04がサポートする最小バージョンとなる。

Box provider logo, one of NetDrive's supported cloud storage connections

Ubuntuへのインストール

  1. github.com/NetDrive/installerにアクセスし、使用しているUbuntuのバージョンに合ったリリースをダウンロードする。
  2. そのビルドに同梱されているリリースノートに従う — NetDriveが何かをマウントできるようになる前にドライバーコンポーネントをインストールする必要があり、その過程でsudoを求められることがある。
  3. NetDriveパッケージをインストールする。
  4. ターミナルからか、デスクトップ環境のアプリケーションメニューからNetDriveを起動する。

アップデートがapt upgrade経由ではなくGitHubリリースとして配布されるため、Linuxビルドは独自のリリーススケジュールで管理されている — 今週WindowsやmacOSに配信される修正が、同じ週にLinuxにも届くとは限らない。そのマシンを扱うランブックには、この点を書き留めておく価値がある。

ステップバイステップ: Boxアカウントを接続する

  1. NetDriveのDrive Managerを開き+ Add Driveをクリックする。
  2. 接続タイプの一覧からBoxを選択する
  3. 認証画面が表示されたらBoxの認証情報でサインインし、NetDriveのアクセス要求を承認する。
  4. マウントポイントを設定する/mnt/boxのようなパス、またはユーザーアカウントが書き込める任意の空ディレクトリ。
  5. Connectをクリックする。 NetDriveがBoxに対して認証を行い、そのパスにアカウントをマウントする。

NetDrive mounting a cloud storage account as a local drive — the same interaction the Linux build provides at a mount point

組織がBoxをエンタープライズアカウントやマネージドユーザーアカウントで管理している場合は、認証ステップの前にBox管理者へ、サードパーティアプリのアクセスが許可されているか確認しておくこと — 一部のマネージドBoxテナントでは、接続できるアプリが制限されている。

マウントの確認とよくある問題

ファイルマネージャーだけに頼らず、特に実験的ビルドではターミナルからもマウントを確認しよう。

# Confirm the mount is listed
mount | grep box

# Or just try listing it
ls /mnt/box

Confirming that a cloud drive connected successfully after mounting

認証画面が読み込まれない — たいていはBox側の問題ではなく、Ubuntuホスト側のネットワークやファイアウォールの問題だ。再試行する前に、そのマシンから送信HTTPSに到達できることを確認する。

Connect後にマウントポイントが空のまま — ディレクトリが存在し、NetDriveを実行しているユーザーに書き込み権限があるか確認する。書き込み不可、または存在しないマウントポイントは、Linuxでサイレント障害が起きる最も一般的な原因だ。

ファイルは表示されるが編集が保存されない — これはたいていBox側の制限ではなく、ローカルのマウントポイントにおける権限の不一致を示している。ディレクトリの所有権を再確認しよう。

まとめ

UbuntuでBoxをマウントすることで、NetDriveがWindowsとmacOSで提供しているのと同じドライブ形式のアクセスが、パッケージリポジトリではなくGitHubで配布されるインストーラーを通じて、Linuxワークステーションでも得られる。Linux全般についてはNetDrive on Ubuntu Linuxを、より安定したプラットフォームでの同じプロバイダーについてはMount Box on Windowsを、Linuxビルドでの別の接続タイプについてはMount a WebDAV Server on Linuxを参照してほしい。

— Kai, NetDrive