LinuxでTencent Cloud COSをマウント — NetDriveの実験的Ubuntuビルド
NetDriveの実験的Linuxビルドで、Tencent Cloud COSバケットをネイティブなUbuntuマウントポイントにマウント。SecretId設定、エンドポイント、確認手順。
あるショート動画プラットフォームのトランスコードパイプラインは、Tencent Cloud Object Storage(COS)から生のアップロードファイルを直接読み込む必要がある一群のUbuntuワーカー上で動いている——各ワーカースクリプトにSDKを組み込むのではなく、ffmpegジョブが開けるパスが一つあればいい。キューが1日に数千本のクリップを処理するようになると、各ジョブの前にソースファイルをコピーしてくるのはディスクと時間の無駄になる。NetDriveのLinuxビルドはCOSバケットを通常のUbuntuマウントポイントにマウントするので、ワーカーのファイル読み取りはバケットに直接届く——NetDriveがWindowsやmacOSユーザーにドライブレターで提供しているのと同じやり取りだ。

LinuxでTencent Cloud COSをマウント
NetDrive を使えば Google Drive、OneDrive、S3、SFTP、WebDAV などが Windows と macOS でネイティブドライブとして表示されます — 同期も、まるごとダウンロードも不要です。
- COSバケットが通常のUbuntuマウントポイントとして現れる
- ファイルはオンデマンドでストリーミングされる——ジョブ開始前にバケット全体をダウンロードする必要はない
- 同じマシン上でS3、Alibaba Cloud、その他20以上のプロバイダーと並行して動作
無料トライアル。永久ライセンスとサブスクリプションプランあり。
NetDriveのLinuxビルドにおけるTencent Cloud
NetDriveがTencent Cloudのサポートを追加したのはバージョン3.17.799(2022年11月)で、Alibaba Cloudが追加されたのと同じリリースだった。WindowsとmacOSではこのサポートは本番グレードとして扱われるが、Linuxでは特定のプロバイダーに対してではなく、Linuxビルド全体に付与されている**実験的(experimental)**ラベルの対象になる。現在の全デスクトッププラットフォーム共通のNetDriveリリースは3.19.7だ。
NetDrive for Linuxはaptやディストリビューションのパッケージマネージャーでは配布されておらず、github.com/NetDrive/installerのGitHubリリースとして提供され、対応する最小バージョンはUbuntu 16.04だ。
UbuntuへのNetDriveのインストール
- github.com/NetDrive/installerにアクセスし、自分のUbuntuバージョンに対応するリリースをダウンロードする。
- 同梱のリリースノートに従い、NetDriveがマウントを行う前に必要なドライバーコンポーネントをインストールする——この過程で
sudoの入力を求められることがある。 - NetDriveパッケージをインストールする。
- ターミナルまたはデスクトップ環境のアプリケーションメニューからNetDriveを起動する。
LinuxビルドはWindowsやmacOSの更新とは別に、独自のリリーススケジュールで提供される。あるプラットフォームで今週リリースされた修正が、同じ週にLinuxビルドにも届くとは限らない——無人稼働のワーカーノードが特定のNetDriveの挙動に依存している場合は、知っておく価値がある。
Tencent COSの認証情報を集める
NetDriveを開く前に、これらをTencent Cloudコンソールからすべて集めておく。
- SecretIdとSecretKey — CAM → API Keys(
console.cloud.tencent.com/cam/capi)から取得。 - バケット名 —
<BucketName>-<AppId>の形式で表示される。例:raw-uploads-1250000001。 - リージョンとエンドポイント — 例えば
ap-guangzhouなら、エンドポイントはcos.ap-guangzhou.myqcloud.comになる。
手順:UbuntuでTencent Cloudに接続する
- NetDriveのDrive Managerを開き、+ Add Driveをクリックする。
- 接続タイプの一覧からTencent Cloudを選択する。
- SecretIdとSecretKeyを入力し、エンドポイント(
cos.<region>.myqcloud.com)と、AppIdサフィックスを含むバケット名をフルで入力する。 - マウントポイントを設定する——
/mnt/cos-uploadsのようなパス、または自分のユーザーアカウントが書き込める空のディレクトリを指定する。 - Connectをクリックする。NetDriveがTencent COSに対して認証を行い、そのパスにバケットをマウントする。

依存する前にマウントを確認する
特に実験的ビルドでは、ファイルマネージャーだけを信用せず、ターミナルからマウントを確認する。
# Confirm the mount is listed
mount | grep cos
# Or just try listing it
ls /mnt/cos-uploads

Connect後もマウントポイントが空のまま — ディレクトリが存在し、NetDriveを実行しているユーザーが書き込めることを確認する。書き込み不可または存在しないマウントポイントは、Linuxでの静かな失敗の最も一般的な原因だ。
初回の認証が失敗する — バケット名にAppIdサフィックスが含まれているか(raw-uploadsではなくraw-uploads-1250000001)、そしてエンドポイントのリージョンがコンソール上のバケットの実際のリージョンと一致しているかを再確認する。SecretIdとSecretKeyが正しくても、リージョンのミスマッチが接続拒否の最も一般的な原因だ。
オブジェクト数が多いバケットは初回の一覧表示が遅い — LinuxビルドはWindowsやmacOSと同じ方式でディレクトリ一覧をストリーミングするため、数万オブジェクトを持つバケットは初回のブラウズ時に表示まで少し時間がかかる。
書き込みの多いジョブ向けのバックグラウンドアップロード
各ジョブの後に処理済み出力をバケットに書き戻すトランスコードパイプラインの場合、NetDriveはそれらの書き込みをトリガーしたプロセスをブロックすることなく、バックグラウンドでキューに入れる。

これは、出力ファイルを引き渡した直後にキューの次の項目へすぐ進む必要があるワーカースクリプトにとって重要だ——アップロードの完了を待ってから続行する必要がない。
Linuxビルドで想定しておくべきこと
- 別立てのリリースサイクル — Linuxドライバーは、WindowsやmacOSとは独立した独自のスケジュールで提供される。
- パッケージマネージャー統合なし — インストールと更新は
aptではなくGitHubリリースを通じて行う。 - WindowsとmacOSが引き続き堅牢化の主対象 — 実験的ラベルが示す通り、無人稼働の本番ワーカー群をLinux上で運用する前に、自身のハードウェアで十分にテストすべき対象として扱う。
まとめ
UbuntuでTencent Cloud COSをマウントすれば、aptではなくGitHubで配布されるインストーラーを通じて、Linuxワーカー群にもNetDriveがWindowsやmacOSで提供しているのと同じドライブ形式のアクセスがもたらされる。より広くテストされたプラットフォームでの同じプロバイダーについてはMount Tencent Cloud on Windows with NetDriveを、Linux全体像についてはNetDrive on Ubuntu Linuxを、そしてこの同じLinuxビルド上での別のリージョン特化プロバイダーについてはMount Alibaba Cloud on Linux with NetDriveを参照。
— Robin, NetDrive