[[PageNavi(NavigationList)]]
= ファイルストレージガイド
OSDNのファイルストレージは、rsync, scp, sftpでアップロードと管理が可能なファイル公開用の機能です。
== 使い方
0. 最初にユーザー設定からSSH公開鍵を登録しておきましょう。
1. プロジェクトの管理ページにてファイルストレージ機能をオンにしましょう。
2. 後はファイルストレージ機能のページのヘルプ領域に記載されているコマンド例を参考にしてアップロードとファイル管理を行ってください。
以下にもコマンドを例示しておきます(プロジェクトの名前は project1 だとします)
rsync over ssh
{{{
rsync -a /your/files/dir/ username@storage.osdn.net:/storage/groups/p/pr/project1/
}}}
scp
{{{
scp -r srcfiles... username@storage.osdn.net:/storage/groups/p/pr/project1/
}}}
sftp
{{{
sftp username@storage.osdn.net:/storage/groups/p/pr/project1/
}}}
'''※ ストレージサーバ上ではシェルは提供されませんのでsshやsloginコマンドでのアクセスはできません(常にエラーになります)'''
== リリースノート
READMEファイルをtxt, html, Markdawnの形式でアップロードすると、READMEファイルが置いてあるディレクトリを表示するURL上で下部にファイルの内容が表示されます。リリースノートなどにご使用ください。
== 注意点
* ファイルのアップロードおよび管理はrsync, scp, sftp以外の方法ではできません。シェルは提供されていませんので'''ストレージサーバに対して ssh や slogin コマンドは使用できません。'''
* アップロードされたファイルは、システム側で自動的に適切なパーミッションが付与されます。
* ディレクトリは任意に作成できます。
* ドットファイル(ディレクトリ含む)もアップロードできますが、Web上では表示されません。一覧に表示されないだけでURLを知っていれば直接アクセスすることは可能なので、(ファイルリリースの限定公開ファイルと同様に)一般に公開されていないURLを知っているユーザのみがダウンロードできる隠しファイルとして利用することもできます(逆にいいますとURLを知っていればダウンロードできてしまいますので、機密性の高いファイルの配布などには利用できません)
* アップロード直後からファイルが公開状態となり、ダウンロードが可能になります(ファイルリリース機能のようにリリース期日を指定することはできません)
== 直接ダウンロード
現在、wget、curl、libwww-perl、!PowerShellなどの一部クライアントからファイルのURLへのダウンロードアクセスがあった場合、ダウンロード案内のhtmlページを経由することなく直接ファイルのダウンロードが開始されます。直接ダウンロードを許可するクライアントを追加したい場合は、その旨を書いた[/ticket/newticket.php?group_id=10743&type=27985 サポートリクエストのチケットを作成]してください(具体的なクライアント名とどういったクライアントなのかの説明、また そのクライアントの User-Agent をお知らせください)
== ファイルのURLの簡略化
ファイルストレージ機能で公開されたファイルを指すURLは通常下記のようになります。
* ファイルURL:!https://osdn.net/projects/(プロジェクト名)/storage/(ディレクトリ名)/(ファイル名)
ファイルストレージ機能は一般的なUNIXファイルシステムのように扱えますので、ディレクトリは何段も作成することもできます。しかし、ディレクトリ階層を複雑にすると、ユーザーがダウンロードすべきファイルが見つかりにくくなるという欠点も出てきます。そこで、ストレージ機能にはファイル名だけでダウンロードが可能になる下記のような簡略化したURLが用意されています。
* 簡略化ファイルURL:!https://osdn.net/dl/(プロジェクト名)/(ファイル名)
一つのプロジェクト内に同一の名前のファイルが存在することがありますが、そのような場合はファイルのタイムスタンプが新しい方のファイルを指すURLとなります。なお、この形式のURLは旧来のファイルリリース機能と同一の形式であり、新しいファイルを指すURLとなるという原則は、ファイルリリース機能も含まれて適用されます。
[[PageNavi(NavigationList)]]