From Fedora Project Wiki

Revision as of 01:47, 19 March 2019 by Hiwkby (talk | contribs) (Updated the Japanese contents)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

fedorapeople.org

本稿は Fedora の貢献者が世界中でファイル共有のためにアップロードできる fedorapeople.org で、あなたの個人スペースを作成して使用する方法の詳細を説明します。それは spec ファイル、SRPM、パッチ、個人リポジトリ等をアップロードするために最適です。

アップロード不許可なコンテンツ

  • 法的な理由により配布できないものはfedorapeople.org 上から配布してはいけません。禁止項目 に掲載されているものは表示してはいけません。それらは、Fedoraによって配布不可とされています。
  • あなたのSSH秘密鍵をアップロードしてはいけません。Fedoraインフラチームはサーバを一生懸命にサーバを安全に保守管理していますが、邪魔することになるでしょう。アップロードされた秘密鍵は、ダウンロードされ、 簡単に総当たり攻撃される可能性があります。監査中に.sshの秘密鍵が見つかった場合は、削除されます。

fedorapeople.org スペースへアクセスする

  1. Fedora アカウントを有効にする必要があります。
  2. 何かのグループを支援するために参加しなければなりません(CLA グループ以外)。
  1. ssh キーを生成する必要があります(ssh-keygen -t rsa)。
  2. Fedora アカウントへ ssh キーをアップロードします。アップロードするために このリンクを訪問して 'Public RSA SSH key フィールドにあなたのパブリックキーを選択してください。通常はホームディレクトリの .ssh/id_rsa.pub にあります。アップロード後 ssh キーが有効になるのに1時間かかります。
  3. 接続するために、Fedora アカウントにアップロードした ssh キーを使用してください。
ssh -i ~/.ssh/id_rsa <your_fedora_id>@fedorapeople.org
SSH公開鍵の更新
もしfedorapeople.orgのSSH公開鍵を更新したくなったら、手でssh/authorized_keysファイルを編集してはいけません。いつものFedoraアカウント管理の編集ページ を通じて更新し、公開鍵が更新されるのを待ちましょう。そうしないと、アカウントからロックアウトされます。

一般的な回答

  • 各 Fedora 貢献者は quota 制御で 2000000 KiB (およそ 1954 MiB)のスペースを持てます。
  • あなたのスペースを使い切ったら、必要ない領域をクリーンアップすべきです。もし、それ以上クリーンアップできないなら quota 制限を上げるために fedora インフラ担当者へ連絡するようにしてください。
  • ウェブ上に公開されたスペースを作成するために public_html ディレクトリを作成してください。
  • fedorapeopleは、開発用途またはレポジトリ作成用途では使われません。レポジトリは他の場所に作成される必要があります。scpもしくはrsyncでアップロードされます。
  • あなたの必要とするパッケージをsudoでインストールしないでください。自分がインフラグループでなく、また、sysadmin-mainから承認をもらっていないのなら、追加のパッケージはインストールされません。
  • scp, sftp 又は rsync を使用してファイルをアップロードしてください。
Nautilus の使用
GNOME を使用しているなら fedorapeople.org スペースへ接続する簡単な方法について このページを訪問してください。
Dolphin 又は Konqueror の使用
KDE を使用しているなら fedorapeople.org スペースへ接続する簡単な方法として、ファイルマネージャに sftp://your_username@fedorapeople.org を入力してください。
Thunarの使用
もし XFCEを使っているなら, ctrl+lとタイプして、Open Location Dialogue を表示し、sftp://your_username@fedorapeople.org/home/fedora/your_username をローケーションに記入するのが自分のfedorapeople.orgのスペースに接続する簡単な方法です。PCManFMも機能します。

コマンドラインからファイルをコピーするために scp コマンドを使用することができます。

scp /path/to/file your_fedora_username@fedorapeople.org:/home/fedora/your_fedora_username/public_html
  • ユーザの public_html ディレクトリへファイルをアップロードすると、そのファイルが http://your_username.fedorapeople.org/ 経由で利用できます。
  • 拡張 ACL を使用して read/write/etc のアクセス権をファイルへ与えてください。ディレクトリ/ファイルへアクセス権を追加するために setfacl と getfacl の man ページを確認してください。このサンプルは jkeating というユーザに読み込みと書き込みのアクセス権を file へ与えます。
setfacl -m u:jkeating:rw file

fedora people git ホスティングサポート

現在 fedorapeople.org はgitレポジトリをホスティングしており、cgit webインターフェースとともに、匿名ダウンロード用の git:// プロトコル経由でのアクセス手段が提供されています。

次に fedorapeople.org で git を使い始める方法を簡単に紹介します。これはあなたが既に git に少し慣れていることを前提としています。慣れていないなら Git クイックリファレンスで調べる方が良いかもしれません。

fedorapeople.org で ~/public_git ディレクトリを作成する

ssh your_username@fedorapeople.org "mkdir ~/public_git; /sbin/restorecon -Rv ~/public_git"

~/public_git で新たな git リポジトリを作成する

サンプルとして ローカルシステム上 に空のリポジトリを作成して、その空リポジトリをアップロードする方法を紹介します。

git init --bare repo.git
scp -r repo.git/ your_username@fedorapeople.org:~/public_git/

このサンプルは bare リポジトリ(例えば、ワーキングディレクトリを持たないリポジトリ)を作成します。それは (大半のユーザは見慣れている) non-bare リポジトリの .git ディレクトリの一部であるファイルのみを含みます。

リポジトリ名は .git 終わらなければなりません
cgit は .git で終わっていないrepos を表示しません。

加えて、もしあなたがcgit webインターフェースにあなたのレポジトリを表示させたいなら、次のようにしなければなりません:

touch ~/public_git/yourgitrepo.git/git-daemon-export-ok

デフォルトでは、表示したいどのレポジトリに対しても同様です。

~/public_gitに既存のレポジトリをアップロードする

fedorapeople 上に使用したい既存のリポジトリを持っているなら、もっと簡単にできます。

git clone --bare /path/to/local/repo repo.git
scp -r repo.git/ your_fedora_username@fedorapeople.org:public_git/

ここでも前のセクションで説明した警告が同様に適用されます。

リポジトリに対して push する

ローカルリポジトリの変更を push するためには次のようにします。

cd /path/to/local/repo
git remote add fedorapeople your_username@fedorapeople.org:public_git/repo.git
git push --mirror fedorapeople

これはローカルリポジトリのミラーを作成します。ローカルリポジトリの全てのブランチとタグは fedorapeople リポジトリへ push されます。

選択したブランチへ push したいだけなら git push のサンプルを修正してください。例えば、ローカルのマスタブランチへのみ push するには次のようにします。

git push fedorapeople master
他のユーザにも push を許可する
他の fedorapeople.org ユーザに、拡張 ACL を使用して(詳細は setfacl(1) を参照)リポジトリへ push することを許可することができます。しかし、あなたのプロジェクトで作業するユーザがたくさんいるなら Fedora Hosted を使用することを強く推奨します。

リポジトリをクローンする

リポジトリをクローンするために次のコマンドを使用してください。

git clone git://fedorapeople.org/~your_fedora_username/repo.git

http:// プロトコル経由でプロジェクトをクローンすることもできます。この作業のためにリポジトリを更新するときはいつも git-update-server-info を実行するように調整しなければなりません。通常、これは post-update フックスクリプトで行われます。しかし、fedorapeople.org 上のユーザのホームディレクトリは、そのフックスクリプトの実行が行えない noexec オプションでマウントされています。その代わり、リポジトリのフックディレクトリにある git-update-server-info へのシンボリックリンクを作成します。

ssh your_username@fedorapeople.org
cd ~/public_git/repo.git/hooks
ln -svbf $(git --exec-path)/git-update-server-info post-update
git update-server-info

また ~/public_html/git から ~/public_git へシンボリックリンクを作成することも必要です。

cd ~/public_html
ln -svbf ../public_git git

次のコマンドで http:// 経由でリポジトリをクローンすることもできます。

git clone http://your_username.fedorapeople.org/git/repo.git/
git:// 対 http://
もしファイアウォールのために git:// プロトコルが使えないなら http:// プロトコルのみでクローンしてください。git:// の方が http:// プロトコルよりも速くて効率的です。

cgit 経由でプロジェクトをブラウズする

プロジェクトリストが更新されるとcgitであなたのプロジェクトが表示されます。このリストは1時間毎に更新されます。 gitweb URL は変更されるかもしれないので注意してください。

リポジトリの説明
リポジトリにある description ファイルを編集することで cgit に表示されるリポジトリの説明を設定することができます。

共有レポジトリShared repository

もし他のユーザに自分のレポジトリへのアクセスさせたい場合、ACL をかけられます。

 setfacl -R -m u:<user>:rwX <repo.git>
 find <repo.git> -type d | xargs setfacl -R -m d:u:<user>:rwX


レポジトリごとのアップロードアーカイブを有効にする

git archive --remote を使って、レポジトリにアクセスを許したい場合、レポジトリの設定ファイルに以下をセットする必要があります:

  [daemon]
  uploadarch = true

ポリシー

ウイルス

fedorapeople.orgのサーバは、定期的にウイルススキャンを行なっています。個人のホームディレクトリも含みます。Fedoraのドメイン名の上にある、ユーザがアップロードしたファイルがダウンロードされるという性質をもっているためです。

ウイルススキャナがウイルスを報告したらすぐ、別のウイルス検知器でもう一度スキャンされます。これは、ウイルスが本物であることを確認するためです(ただ過剰にスキャンするだけではありません)

二つ目のスキャナもファイルがウイルスであることを報告したならば、そのファイルは非公開のディレクトリに移動され、オーナーに通知されます。

一週間後にそのユーザーから応答がなかったならば、そのファイルは削除されます。