NetDrive on Linux — 「Permission Denied」マウントエラーの直し方

読了目安 6 分 troubleshooting linux
Steve
SteveSenior Engineer
NetDriveのLinuxサポートは実験的機能です。マウントできない「Permission denied」エラーの対処法を解説します。

あるDevOpsエンジニアが、CIランナーにS3バケット内のフィクスチャへの読み取りアクセスを与えるため、Ubuntu 16.04のテストマシンにNetDriveをセットアップし、マウントコマンドを実行したところ、返ってきたのは「Permission denied」だけだった。同じ設定は1時間前、Windowsノートで問題なくマウントできていた。LinuxはNetDriveのマウント動作がWindowsやmacOSと最も異なるプラットフォームであり、そこでマウントがアタッチを拒否する原因として最も多いのが権限エラーだ。

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

NetDriveはWindowsとmacOSでも動作します

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

  • Windows 8〜11およびmacOS 14+で安定した本番運用向けサポート
  • 同じプロバイダー一覧 — Google Drive、S3、SFTP、WebDAVなど
  • これらのプラットフォームならLinuxのFUSE権限デバッグは不要
WindowsmacOS
Download NetDrive →

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

Linuxでマウントが異なる形で失敗する理由

NetDriveのLinux版は、他のプラットフォームで使われるDMGやEXEのインストーラーとは別に、NetDrive/installer GitHubリポジトリを通じて配布されており、本番運用向けではなく実験的機能として位置づけられている。WindowsやmacOS版と同等の安定性は保証されておらず、NetDrive自身の比較ページでもWindowsまたはmacOSを主要プラットフォームとして推奨している。それでもLinuxを使う理由があるなら — ヘッドレスのビルドサーバー、テストリグ、個人のUbuntuデスクトップなど — 権限エラーはたいていホスト側のFUSE設定の問題であり、インストールが壊れているわけではない。

LinuxターミナルセッションからNetDriveのマウント状態を確認する

FUSE権限チェーンを確認する

Linux上のFUSEベースのマウントは、NetDrive自体の設定とは無関係な権限チェーンに依存している。マウントが「Permission denied」で失敗したときに最初に確認すべき場所だ。

  • グループメンバーシップ。 NetDriveを実行するユーザーは通常、そのディストリビューションのfuseグループに所属している必要がある。groups $USERを実行して確認し、fuseが含まれていなければそのユーザーを追加し、一度ログアウトして再度ログインすること — グループの変更は既に開いているセッションには反映されない。
  • /dev/fuseデバイスの権限。 このデバイスノードは、そのユーザーまたはグループから読み書き可能である必要がある。システムアップデートやカスタムudevルールによって権限がリセットされた場合、グループメンバーシップが正しくてもマウントは失敗する。
  • /etc/fuse.confuser_allow_other 同じマシン上の他のユーザーも読み取る必要のあるドライブをマウントする場合 — 例えば共有のCIランナーアカウントなど — この行のコメントを外す必要がある。

これらはいずれもNetDrive固有の設定ではなく、Linux上のFUSEベースのツールが共通して依存している権限モデルであり、そのため正確な修正方法はディストリビューションやカーネルバージョンによって多少異なる。

Permission Deniedエラーを修正する

  1. ターミナルを開きgroups $USERを実行して、NetDriveを起動するアカウントがfuseグループに含まれているか確認する。含まれていなければ、ディストリビューションのユーザー管理ツールで追加し、ログアウトして再度ログインする。
  2. /dev/fuseの権限を確認する — デバイスノードがそのユーザーまたはグループからアクセス可能か確認し、最近のシステム変更でリセットされていれば修正する。
  3. マウントを複数のローカルユーザーに見える状態にする必要がある場合は、/etc/fuse.confで**user_allow_otherのコメントを外す**。
  4. 権限チェーンに問題がないことを確認できたら、NetDriveからマウントを再試行し、ドライブがアタッチされることを確認する。
  5. エラーが解消しない場合は、**NetDriveサポートフォーラム**でディストリビューション固有の情報がないか確認する — 実験的サポートである以上、あまり一般的でないカーネルバージョンでのエッジケースは必ずしも文書化されていない。

NetDriveのドライブ一覧から接続済みドライブをマウントする

まとめ

Linuxでの権限エラーは、ほとんどの場合NetDrive内部の問題ではなく、FUSEデバイスとグループ設定に起因しており、上記のチェーンをたどれば大半は解決する。本番ワークフローにとってLinuxの実験的ステータスが障害になるなら、NetDrive on Ubuntu Linuxでプラットフォーム全体として何が期待できるかを確認し、マウントが動いた後はMount Amazon S3 on Linux with NetDriveでS3のフルセットアップ手順を確認してほしい。macOSで同様の壁にぶつかったユーザーは、代わりにFix macOS FUSE Permission Errors with NetDriveを参照してほしい — 両プラットフォームはFUSEという概念を共有しているが、修正方法は同じではない。

— Steve, NetDrive