Cosmos VFS †
Cosmos VFS(旧webifi)は、オンラインストレージサービスの抽象化レイヤです.
Cosmos VFSを利用することで、各種のオンラインストレージサービスを単一のファイルツリーにマウントして、HTTPやFTPから利用することが出来ます.
また、CosmosVFSのサブシステムであるAsteroidをマウントすることで、無料で10GBのストレージを利用することができます.
URL †
https://www.cosmos-vfs.com/tomcat/cosmos/fileservice/googlelogin/GoogleLoginTop
動作イメージ †

主な特長 †
・複数のオンラインストレージサービスを単一のファイルツリー構造に集約します.
・GoogleDrive?やOneDrive?、AmazonS3をFTP/9P2000で操作できます。
・GoogleDrive?やOneDrive?上の静的コンテンツをHTTPで配信できます.
・CosmosVFSのサブシステムであるAsteroidをマウントすることで、無料で10GBのオンラインストレージを提供します.
マニュアル †
Cosmos-VFS.pdf
webifiの基本的な操作方法が載っているマニュアルです.
デモ †
筆者のGoogleDrive?に置いたファイルを以下のURLで公開しています.
wordで作ったhtmファイル
net2ftp2cosmos †
net2ftp2cosmosは、ブラウザ上で動作するCosmosVFSのFTPエンドポイント専用のFTPクライアントです。
net2ftp2cosmosを用いることで、FTPクライアントを用意しなくても、CosmosVFSのFTPエンドポイントに対して、ファイルのアップロードやダウンロードができます.
net2ftp2cosmosは、net2ftpをベースに実装しました.

Cosmos FTP Client †

Cosmos FTP Clientは大容量ファイルのアップロードとダウンロードに対応した、CosmosVFSのFTPエンドポイント専用クライアントです.
net2FTP2Cosomosでは10MB程度のファイルのアップロード/ダウンロードにしか対応していませんが、CosmosFTPClientを用いることで100MB越えのファイルをアップロード/ダウンロードすることができます.
また、汎用のFTPクライアントでは、大容量のファイルのアップロード/ダウンロード時にタイムアウトが発生することがありますが、CosmosFTPClientはタイムアウト制限を解除してあります.
CosmosFTPClient-20200502-002.zip
Cosmos 9P2K Client †
Cosmos9P2KClientは、CosmosVFSの9P2000エンドポイントに対応した、GUIの9P2000クライアントです.
BLOB Storage †
Cosmos VFSのルートファイルシステムは、BLOBStorage(Microsoft AzureのBLOB Storageではない)という、DB上に構築した仮想のファイルシステムを利用します.
このBLOB Storageは、RDBのBLOB型を利用してファイルを格納する、階層構造のファイルシステムです.
Cosmos VFSではルートファイルシステムにBLOB Storageを採用することで、サーバー上の実ファイルシステムにユーザーのファイル空間をマウントしない方式を採用しています.
これにより、ユーザーごとのファイル空間の分離性を高め、RDBの検索性を利用してスケーラブルな管理を実現しています.

サブシステム †
Cosmos VFSのサブシステムは、バックエンドのストレージとして利用可能な独自のファイルシステムを提供します.
Cosmos VFSとサブシステムの間の通信は、管理用APIにRest形式のWebAPIを使用し、ファイル転送に9P2000を使用します.
したがって、各サブシステムは独立した9P2000サーバーとして機能します.
ファイル転送に9P2000を採用したのは、将来的にブロック型のストレージをマウントするケースを想定したからです.
サブシステムを利用するには、CosmosVFS上で各サブシステムを有効化してから、マウントしてください.

サブシステムの実装の一つであるAsteroidサブシステムは、バックエンドにS3互換のオブジェクトストレージを採用しています.
ユーザーはAsteroidをマウントすることで、無料で10GBのストレージを利用することが出来ます.
その他 †
現在ベータ版として公開しています.そのため、エンドポイントのURLを今後の実装で変更する可能性があります.
Q&A †
・HTTPエンドポイントで配信したhtmlファイルが文字化けする.
htmlファイルをUTF-8で記述してください.
制限事項 †
・HTTPエンドポイントでホストできるファイルサイズの上限は20MBです.
・Cosmos VFSのWebUIの操作は一定時間操作がない場合にセッションが切れるように設計しています.
リンク †
Qiitaの紹介記事
オンラインストレージサービスの抽象化レイヤCosmosVFSの紹介
FreeBSDでCosmos VFSのFTPエンドポイントをマウントした際の記事
CosmosVFSを使ってFreeBSDからGoogleDriveをマウントした