SlideShare a Scribd company logo
RPMで行こう!!
                                                                        http://fedora.jp/




                RPMを使いたくなるといいなというお話




                                                  Fedora JP Project Tadashi Jokagi
                                                              <jokagi@fedora.jp>
                                                                  2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                                        1
これは何の話?
                                                             http://fedora.jp/



      ●   Fedora Coreで使用されているパッケージ管理
          システムRPMとそのメリット・デメリットと、RPM
          の作り方などのセミナーです。




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             2
セッションの流れ
                                                             http://fedora.jp/



      ●   RPMって何?
      ●   tarballから直接ビルド・インストールとの違い
          やメリット・デメリット
      ●   RPMフロントエンドについて(yum他)
      ●   自分でRPMを作ろう
      ●   自分でリポジトリを作ろう(yum)




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             3
このセッションで一番いいたいこと
                                                             http://fedora.jp/



      ●   tarballを直接ビルドしてインストールするな
      ●   RPMを作ってインストールしろ!!
           –   なので他が薄いですがあしからず;-)




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             4
RPMって何?
                                                             http://fedora.jp/



      ●   Red Hat, Inc.が開発したパッケージ管理システ
          ム
      ●   RPM Package Managerの略
      ●   昔はRedhat Package Managerの略
      ●   Red Hat, Inc. のjbjという人が現在のメンテ
          ナー
      ●   システムのパッケージ構成の管理とパッケー
          ジファイルのメンテナンスを行う


                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             5
RPMを使うとどうよくなる?
                                                             http://fedora.jp/



      ●   はじめにSPECファイルという形式でビルド手
          順を記述するので、二度目以降のビルドが楽
          になる
      ●   インストールされるファイルを把握できる
      ●   基本的に依存関係を正しく保ってくれる
           –   正しく処理できない場合、多くはユーザーが悪い
      ●   ファイルのインストールだけではなくシステム
          の制御も同時に行える
      ●   パッケージの正当性を調べることができる
                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             6
RPMみたいなのって他にあるの?
                                                             http://fedora.jp/



      ●   deb – Debian GNU/Linuxで用いられている形
          式
      ●   Portage – Gentoo GNU/Linuxで用いられる形
          式
      ●   Ports/Package – FreeBSDで用いられる形式
      ●   Fink – Mac OS Xで用いられる形式(Apple製で
          はない)
      ●   pkg - Solarisで用いられる形式


                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             7
RPMを使わないビルドとインストール
                                                             http://fedora.jp/



      ●   ありがちパターン
          $   gzip -dc foo-1.0.0.tar.gz | tar zxf -
          $   cd foo-1.0.0
          $   ./configure –prefix=/usr/local
          $   make
          $   su -
          #   cd .../foo-1.0.0
          #   make install




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             8
RPMを使ったビルドとインストール
                                                             http://fedora.jp/



      ●   そんなに難しくない
          $ rpmbuild --rebuild foo-1.0.0-1.src.rpm (case1)
          $ rpmbuild -ta foo-1.0.0-tar.gz          (case2)
          $ rpmbuild -ba foo.spec                  (case3)

          $ su -
          # rpm -ihv .../foo-1.0.0-1.i386.rpm




     ●そもそもバイナリが既にあればビルドすら要らない
                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             9
RPMのフロントエンド
                                                             http://fedora.jp/



      ●   RPMを便利に管理するためのアプリケーション
      ●   一度使い出すと、なくては困る人間が退化す
          るアプリケーション




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             10
フロントエンドって何?
                                                             http://fedora.jp/



      ●   リポジトリというRPMを集めたディレクトリから
          必要なRPMを入手できる
           –   リモートサーバーでもOK
           –   複数のリポジトリを同時に処理できる
      ●   依存関係もまとめて管理してくれる




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             11
フロントエンドって何?
                                                             http://fedora.jp/



      ●   リポジトリ上の更新されたRPMをうまくアップ
          デートしてくれる
      ●   自動実行しておくと勝手に最新になっていく
           –   サーバー用途ではまったくすすめないが




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             12
RPMにはなにがあるの?
                                                             http://fedora.jp/



      ●   Fedora Coreはyum・up2dateが標準パッケージ
          管理システム
           –   Up2dateは元々Red Hat Linux・Red Hat Enterprise
               Linux用
      ●   Fedora Core標準ではないがapt-rpmも有名
           –   ただし事実上標準ともいえる
      ●   その他のディストリビューション
           –   turbopkg(zabon) - Turbolinux
           –   YAST – SuSE

                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             13
yumって何?
                                                             http://fedora.jp/



      ●   Yellow dog Updater, Modifiedの略
      ●   公式サイトは
          http://linux.duke.edu/projects/yum/
      ●   元々Yellowdog Linuxのアプリケーション
      ●   pythonで記述されている
      ●   CentOSもyumが使える(らしい)




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             14
apt-rpmって何?
                                                             http://fedora.jp/



      ●   aptはAdvanced Package Toolの略
      ●   元々Debian GNU/Linuxのアプリケーション
           –   RPM管理なのでapt-rpmに名前が変わった
      ●   apt-rpmの公式サイトは
          http://apt4rpm.sourceforge.net/
      ●   Vine Linuxのパッケージ管理システム
      ●   私はかたくなに使っていない(苦笑)


                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             15
リポジトリって何?
                                                             http://fedora.jp/



      ●   下記の情報を持つもの
           –   RPMを集めたディレクトリ
           –   RPM毎の固有情報




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             16
GUIないの?
                                                             http://fedora.jp/



      ●   あります
      ●   yum
           –   gyumが有名
           –   私はそもそもLinuxでGUIを使わないのであまり知
               らない
      ●   apt-rpm
           –   Synapticが有名
           –   apt-rpmもGUIも使わないのでさらに知らない


                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             17
gyumを使う
                                                             http://fedora.jp/




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             18
yumとapt-rpmどっちがいいの?
                                                             http://fedora.jp/



      ●   yumのメリット
           –   標準でついてくる
           –   標準で基本的な設定がされている
      ●   yumのデメリット
           –   メモリを多く消費する
           –   若干重い
           –   最低限の機能しかない



                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             19
yumとapt-rpmどっちがいいの?
                                                             http://fedora.jp/



      ●   apt-rpmのメリット(yumと比較して)
           –   多機能。とにかく必要なことはおおむねできる。
           –   yumに比べ、少メモリの消費と高速である
      ●   apt-rpmのデメリット
           –   Vine Linux以外はapt-rpm自体の配布元が複数あ
               り、衝突の発生がしやすい
                 ●   問題が発生すると、「どのapt-rpm使ってるの?」から始
                     まる
           –   同じくディストリビューションに特化したリポジトリで
               ない場合が多く、ディストリビューションのRPMとの
               衝突が起こることがある
                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             20
さてさて少し難しくなります
                                                             http://fedora.jp/



      ●   そろそろRPMを作ってみましょう…




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             21
RPMってどうやって作るの?
                                                             http://fedora.jp/



      ●   必要なソースファイルなどを用意する
      ●   SPECファイルを用意する
      ●   rpmbuildコマンドでビルドを行う




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             22
SPECファイル
                                                             http://fedora.jp/



      ●   RPMのビルド手順を記述したファイル
      ●   内部でいくつかのセクションを持つ




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             23
セクションって何よ?
                                                             http://fedora.jp/



      ●   目的に応じた作業を記述する場所
           –   グローバル関連(ID・packageセクション)
           –   ビルド関連(prep・buildセクション)
           –   パッケージ構築関連(clean・installセクション)
           –   パッケージ構成関連(filesセクション)
           –   インストール関連(pre・post・preun・postunセクショ
               ン)
           –   変更履歴関連(changelogセクション)


                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             24
グローバル関連セクション
                                                             http://fedora.jp/



      ●   RPMについての全体的な情報を記述する
      ●   IDセクション
           –   パッケージ名(Name)グループ(Group)
           –   バージョン番号(Version)リリース番号(Release)
           –   ソースファイル(Sources)パッチファイル(Patch)
           –   依存関係(Requires)
           –   その他もろもろ
      ●   Description
           –   RPMの説明
                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             25
グローバル関連セクション
                                                             http://fedora.jp/



      ●   Packageセクション
           –   サブパッケージの情報
           –   IDセクションとdescriptionセクションをいくつか記述
               する




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             26
パッケージグループ
                                                                                   http://fedora.jp/



      ●   /usr/share/doc/rpm-<version>/GROUPSに
          記述されている
      ●


 Amusements/Games                  Applications/Multimedia     Documentation
 Amusements/Graphics               Applications/Productivity   System Environment/Base
 Applications/Archiving            Applications/Publishing     System Environment/Daemons
 Applications/Communications       Applications/System         System Environment/Kernel
 Applications/Databases            Applications/Text           System Environment/Libraries
 Applications/Editors              Development/Debuggers       System Environment/Shells
 Applications/Emulators            Development/Languages       User Interface/Desktops
 Applications/Engineering          Development/Libraries       User Interface/X
 Applications/File                 Development/System          User Interface/X Hardware Support
 Applications/Internet             Development/Tools




                                                                           2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                                                   27
ビルド関連セクション
                                                             http://fedora.jp/



      ●   prepセクション
           –   ビルドの準備を行う
           –   大体はtarballの展開とパッチ当て
      ●   buildセクション
           –   実際のビルドを行う
           –   大体は./configure && make




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             28
パッケージ構築関連セクション
                                                             http://fedora.jp/



      ●   installセクション
           –   環境変数RPM_BUILD_ROOTの下に仮想ディレクト
               リを構築する
           –   仮想ディレクトリはほぼ実際にインストールされる
               環境に近い状態を作る
           –   大体はmake install DESTDIR=$
               {RPM_BUILD_ROOT}
      ●   cleanセクション
           –   仮想ディレクトリを掃除
           –   大体はrm -rf ${RPM_BUILD_ROOT}
                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             29
パッケージ構成関連
                                                             http://fedora.jp/



      ●   filesセクション
           –   デフォルトとファイル・ディレクトリ毎にパーミッショ
               ンやオーナーを指定できる
           –   設定ファイルとしてマーキングできる
           –   サブパッケージが存在する場合、サブパッケージ
               毎にfilesセクションを記述する




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             30
インストール関連セクション
                                                             http://fedora.jp/



      ●   pre・post
           –   インストール・アップデート時に行う処理を記述す
               る
           –   preはファイルがインストール処理される前に実行
               する処理
           –   postはファイルがインストール処理された後に実
               行する処理




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             31
インストール関連セクション
                                                             http://fedora.jp/



      ●   preun・postun
           –   アンインストール・アップデート時に行う処理を記
               述する
           –   preはファイルがアンインストール処理される前に
               実行する処理
           –   postはファイルがアンインストール処理された後に
               実行する処理




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             32
インストール関連セクション
                                                             http://fedora.jp/



      ●   アップデートとは実はアンインストールとインス
          トールの組み合わせ
           –   $1の値によってインストール・アンインストール・
               アップデートを識別する




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             33
変更履歴関連
                                                             http://fedora.jp/



      ●   読んで字のごとく
      ●   いわゆるChangeLogを記述する




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             34
RPMを作りましょう
                                                             http://fedora.jp/



      ●   とりあえず何か作りましょう
           –   何にしようかな…
           –   …
           –   zzz
           –
           –   skfのRPMでも作りましょう




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             35
skfって何?
                                                             http://fedora.jp/



      ●   nkf互換の漢字フィルター
           –   中国の文字コードも一部処理できるらしい
           –   題材にするために使っただけであまり詳しく知りま
               せん(すみません…)




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             36
簡単なSPECファイル
                                                             http://fedora.jp/



      ●   グローバル関連セクション
          Summary: skf is kanji filter and compatible nkf.
          Name: skf
          Version: 1.93b2
          Release: 1
          License: BSD
          Group: Applications/Text
          URL: http://skf.sourceforge.jp/
          Source0: %{name}-%{version}b-1.tar.gz
          BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-
          root

          %description
          skf is kanji filter and compatible nkf.


                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             37
簡単なSPECファイル
                                                             http://fedora.jp/



      ●   ビルド関連セクション
      ●   %prep
          %setup -q

          %build
          ./configure --prefix=%{_prefix}
          make




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             38
簡単なSPECファイル
                                                             http://fedora.jp/



      ●   パッケージ構築関連セクション
          %install
          rm -rf ${RPM_BUILD_ROOT}

          make install DESTDIR=${RPM_BUILD_ROOT}

          rm -rf ${RPM_BUILD_ROOT}%{_docdir}/%{name}
          rm -rf ${RPM_BUILD_ROOT}%{_prefix}/man

          # file list without man
          find ${RPM_BUILD_ROOT} -type f | sed "s;$
          {RPM_BUILD_ROOT};;g" | grep -v "%{_mandir}" > filelist
          # file list with man(gzipped)
          find ${RPM_BUILD_ROOT}%{_mandir} -type f -exec echo {}.
          gz ; | sed "s;${RPM_BUILD_ROOT};;g" >> filelist

                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             39
簡単なSPECファイル
                                                             http://fedora.jp/



      ●   パッケージ構成関連セクション
          %files -f filelist
          %defattr(-,root,root,-)
          %doc *txt




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             40
SPECからRPMを作ってみる
                                                                    http://fedora.jp/



      ●   変更履歴関連セクション
          %changelog
          * Sat Mar 26 2005            <jokagi@fedora.jp> -
          - Initial build.




                                                              2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                                    41
実際に作成してみよう
                                                             http://fedora.jp/



      ●   SOURCESディレクトリにソースを保存
      ●   SPECSディレクトリに先ほどのSPECを保存
      ●   rpmbuild -ba skf.specでビルドを開始




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             42
作成したRPMをインストール
                                                             http://fedora.jp/




         # rpm -ihv skf-1.92b-1.i386.rpm




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             43
とりあえず作るだけなら簡単
                                                             http://fedora.jp/



      ●   さっきのSPECファイルを雛形にすれば簡単な
          ものはすぐにRPMにできる
      ●   この程度なら実はchkinstallというものを使え
          ば似たようなものが作れる
      ●   手を抜かずにfilesセクションを書くこと
           –   特に設定ファイルがあったり、サービスdaemon
               だったり共有ライブラリなどの場合




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             44
もうちょっとちゃんと作る
                                                             http://fedora.jp/



      ●   ちゃんと作るとfilesセクションは手を抜けない
      ●   必要なファイルを列挙します
           –   設定ファイルは%configなどでマーキングすること
          %{_bindir}/skf
          %{_mandir}/ja/man1/skf.1j.gz
          %{_datadir}/skf/lib/*.stb
          %{_datadir}/skf/lib/*.txt




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             45
覚えておきたいデフォルトマクロ
                                                             http://fedora.jp/



      ●   マクロコマンド
           –   %__rm %__mv %__cp – ファイルを操作するコマンドの
               擬似マクロコマンド
           –   %setup – tarballの展開と、展開先への移動をする
               擬似マクロコマンド
           –   %patch - パッチを適用する擬似マクロコマンド
           –   %configure – ./configureにありがちな引数を付加
               した擬似マクロコマンド
           –   %makeinstall - makeコマンドにありがちなインス
               トール用引数を付加した擬似マクロコマンド
                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             46
覚えておきたいデフォルトマクロ
                                                             http://fedora.jp/



      ●   マクロ定数
           –   %{_prefix} – ベースになるインストール先(一般的に
               /usr)
           –   %{_sysconfdir} – 設定ファイルのディレクトリ(一般
               的に/etc)
           –   %{_bindir}・%{_sbindir} - 実行ファイルのインストール
               先(一般的に%{_prefix}/{bin,sbin})
           –   %{_datadir} データを保存するディレクトリ(一般的
               に%{_prefix}/{share})
           –   %{_mandir} マニュアルを保存するディレクトリ(一般
               的に%{_prefix}/{share}/man)
                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             47
覚えておきたいデフォルトマクロ
                                                             http://fedora.jp/



      ●   マクロ定数
           –   %{SOURCE<NUMBER>} - ソースタグで指定した
               ファイルのパス




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             48
自分でリポジトリを作ろう
                                                             http://fedora.jp/



      ●   ここではyumのリポジトリを作ります
      ●   apt-rpmは使ってないのでパス!!
           –   時間もないしね…(言い訳ですか




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             49
っで、そんなもの必要なの?
                                                             http://fedora.jp/



      ●   こういう人はあると便利
           –   自作RPMを、複数台サーバーに適応している人
               (例えばサーバー業者)
           –   自作RPMをたくさんインターネットに公開している
               人




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             50
それでは作ります
                                                             http://fedora.jp/



      ●   作るのは簡単
           –   RPMを一つのディレクトリに集めて
           –   データベースを作るだけ




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             51
作業ディレクトリを用意
                                                             http://fedora.jp/




         $ mkdir -p /var/www/html/repos/RPMS/i386/




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             52
RPMをコピーしまくる
                                                             http://fedora.jp/




         $ cp -a *.rpm 
             /var/www/html/repos/RPMS/i386/.




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             53
データベースを作る
                                                             http://fedora.jp/




         $ cd /var/www/html/repos/
         $ createrepo RPMS




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             54
それだけ?
                                                             http://fedora.jp/



      ●   リポジトリ作成それだけなのです
      ●   後はyumにそのリポジトリを指定するだけです
          ぐに使えます




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             55
本当に使えるか試してみよう
                                                             http://fedora.jp/



      ●   先ほどのskfをyum経由でインストール
           –   あらかじめrpm -e skfで削除しておく




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             56
yumの指定
                                                             http://fedora.jp/



      ●   /etc/yum.repo.d/にmyrepos.repoとして作成
          name=Fedora Core My Repository
          baseurl=http://example.com/repos/
          enabled=1
          gpgcheck=0




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             57
ローカルのデータベースを更新
                                                             http://fedora.jp/




         # yum list




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             58
yumでインストール
                                                             http://fedora.jp/




         # yum install skf




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             59
時間あるかな?
                                                             http://fedora.jp/



      ●   これ位はRPMを使うなら覚えておこう!!




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             60
インストール・アップデート・アンイン
 ストール                                                        http://fedora.jp/



      ●   インストール
           –   rpm -i <rpm-filename>
           –   rpm -U <rpm-filename>
      ●   アップデート
           –   rpm -F <rpm-filename>
           –   rpm -U <rpm-filename>
      ●   アンインストール
           –   rpm -e <package-name>
      ●   -i・-U・-Fは-hvを同時に指定するのが一般的
                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             61
インストール前
                                                             http://fedora.jp/



      ●   RPMの情報
           –   rpm -qip <rpm-file>
      ●   RPMに含まれるファイル
           –   rpm -qlp <rpm-file>
      ●   RPMが提供するもの
           –   rpm -qp –-provides <rpm-file>
      ●   RPMの依存関係
           –   rpm -qp –-requires <rpm-file>


                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             62
インストール前
                                                             http://fedora.jp/



      ●   RPMの情報を整形出力
           –   rpm -qp –-queryformat “<format>” <rpm-file>
      ●   変更履歴出力
           –   rpm -qp –changelog <rpm-file>




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             63
インストール後
                                                             http://fedora.jp/



      ●   基本的に「インストール前」から「-p」を抜くとイ
          ンストール済みRPMが対象になる
           –   ファイル名ではなくパッケージ名を指定すること
                 ●   ex)rpm -ql httpd




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             64
インストール後
                                                             http://fedora.jp/



      ●   ファイルを保持するRPM名
           –   rpm -qf </dir/to/file>
      ●   インストール済みRPM一覧
           –   rpm -qa <wildcard>
           –   rpm -qa –-last <wildcard> インストール順表示




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             65
終り
                                                             http://fedora.jp/



      ●   わざわざRPMを作るとここが便利ですよ
           –   共通言語的な作業手順書の作成(SPECファイル)
           –   インストール済みバージョンの管理
           –   共有ライブラリ他との依存性の管理
           –   ファイルからインストールしたソフトウェアの逆引き
           –   正確なアンインストール
           –   単にファイルのコピー以上の処理
           –   RPMのインストール先ホストにgccがいらない

                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             66
http://fedora.jp/




                  ご清聴ありがとうございました。




                                                       2005年3月26日
Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project                             67

More Related Content

What's hot

Python3 プログラミング勉強会
Python3 プログラミング勉強会Python3 プログラミング勉強会
Python3 プログラミング勉強会Tetsuya Morimoto
 
デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
Developers Summit
 
Let's get ready for next Ruby
Let's get ready for next RubyLet's get ready for next Ruby
Let's get ready for next Ruby
Koichi ITO
 
Linux kernelのbspとupstream
Linux kernelのbspとupstreamLinux kernelのbspとupstream
Linux kernelのbspとupstream
wata2ki
 
osc_tokyo20100226
osc_tokyo20100226osc_tokyo20100226
osc_tokyo20100226
Shoken Fujisaki
 
マネージャーやコンポーネントのコンポジット化
マネージャーやコンポーネントのコンポジット化マネージャーやコンポーネントのコンポジット化
マネージャーやコンポーネントのコンポジット化
openrtm
 

What's hot (6)

Python3 プログラミング勉強会
Python3 プログラミング勉強会Python3 プログラミング勉強会
Python3 プログラミング勉強会
 
デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
 
Let's get ready for next Ruby
Let's get ready for next RubyLet's get ready for next Ruby
Let's get ready for next Ruby
 
Linux kernelのbspとupstream
Linux kernelのbspとupstreamLinux kernelのbspとupstream
Linux kernelのbspとupstream
 
osc_tokyo20100226
osc_tokyo20100226osc_tokyo20100226
osc_tokyo20100226
 
マネージャーやコンポーネントのコンポジット化
マネージャーやコンポーネントのコンポジット化マネージャーやコンポーネントのコンポジット化
マネージャーやコンポーネントのコンポジット化
 

Similar to RPMで行こう!! RPMを使いたくなるといいなというお話

今最もアツイdistribution Gentoo Linuxについて
今最もアツイdistribution Gentoo Linuxについて今最もアツイdistribution Gentoo Linuxについて
今最もアツイdistribution Gentoo LinuxについてTakuto Matsuu
 
Dockerのディスクについて ~ファイルシステム・マウント方法など~
Dockerのディスクについて ~ファイルシステム・マウント方法など~Dockerのディスクについて ~ファイルシステム・マウント方法など~
Dockerのディスクについて ~ファイルシステム・マウント方法など~
HommasSlide
 
FMU4FOAM
FMU4FOAMFMU4FOAM
FMU4FOAM
守淑 田村
 
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
Hideki Takase
 
MeeGo won't die
MeeGo won't dieMeeGo won't die
MeeGo won't die
Yuya Adachi
 
Djangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込むDjangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込む2bo 2bo
 
Getting started raspberry pi osc hamamatsu
Getting started raspberry pi osc hamamatsuGetting started raspberry pi osc hamamatsu
Getting started raspberry pi osc hamamatsu
Masafumi Ohta
 
2009年のPHPフレームワーク
2009年のPHPフレームワーク2009年のPHPフレームワーク
2009年のPHPフレームワーク
Takuya Sato
 
Rubyで創るOpenFlowネットワーク - LLまつり
Rubyで創るOpenFlowネットワーク - LLまつりRubyで創るOpenFlowネットワーク - LLまつり
Rubyで創るOpenFlowネットワーク - LLまつり
Yuya Rin
 
Yesod on Heroku
Yesod on HerokuYesod on Heroku
Yesod on Heroku
Takahiro Himura
 
Polidog に RPM の作り方を教える
Polidog に RPM の作り方を教えるPolidog に RPM の作り方を教える
Polidog に RPM の作り方を教える
ftnk
 
2012/03/31 Apacheスタートスクリプト読書会発表資料
2012/03/31 Apacheスタートスクリプト読書会発表資料2012/03/31 Apacheスタートスクリプト読書会発表資料
2012/03/31 Apacheスタートスクリプト読書会発表資料Yasutaka Hamada
 
GPD WINでStretchを動かす
GPD WINでStretchを動かすGPD WINでStretchを動かす
GPD WINでStretchを動かす
Yuma Ohgami
 
FreeBSDで行こう for small server
FreeBSDで行こう for small serverFreeBSDで行こう for small server
FreeBSDで行こう for small server
Tatsumi Naganuma
 
NVIDIA GPUで作るHeadless X11 Linux
NVIDIA GPUで作るHeadless X11 LinuxNVIDIA GPUで作るHeadless X11 Linux
NVIDIA GPUで作るHeadless X11 Linux
Tomoki SHISHIKURA
 
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
Hideki Takase
 
プロセスの永続化でコスト削減 #perlbeginners
プロセスの永続化でコスト削減 #perlbeginnersプロセスの永続化でコスト削減 #perlbeginners
プロセスの永続化でコスト削減 #perlbeginners
鉄次 尾形
 
mruby for embedded systems
mruby for embedded systemsmruby for embedded systems
mruby for embedded systems
masayoshi takahashi
 
ElixirをIoTボードで動かしてみた ~ラズパイ・big.LITTLE・Zynq編~
ElixirをIoTボードで動かしてみた ~ラズパイ・big.LITTLE・Zynq編~ElixirをIoTボードで動かしてみた ~ラズパイ・big.LITTLE・Zynq編~
ElixirをIoTボードで動かしてみた ~ラズパイ・big.LITTLE・Zynq編~
Hideki Takase
 

Similar to RPMで行こう!! RPMを使いたくなるといいなというお話 (20)

今最もアツイdistribution Gentoo Linuxについて
今最もアツイdistribution Gentoo Linuxについて今最もアツイdistribution Gentoo Linuxについて
今最もアツイdistribution Gentoo Linuxについて
 
Dockerのディスクについて ~ファイルシステム・マウント方法など~
Dockerのディスクについて ~ファイルシステム・マウント方法など~Dockerのディスクについて ~ファイルシステム・マウント方法など~
Dockerのディスクについて ~ファイルシステム・マウント方法など~
 
FMU4FOAM
FMU4FOAMFMU4FOAM
FMU4FOAM
 
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
 
MeeGo won't die
MeeGo won't dieMeeGo won't die
MeeGo won't die
 
Djangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込むDjangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込む
 
Getting started raspberry pi osc hamamatsu
Getting started raspberry pi osc hamamatsuGetting started raspberry pi osc hamamatsu
Getting started raspberry pi osc hamamatsu
 
Pdp11 on-fpga
Pdp11 on-fpgaPdp11 on-fpga
Pdp11 on-fpga
 
2009年のPHPフレームワーク
2009年のPHPフレームワーク2009年のPHPフレームワーク
2009年のPHPフレームワーク
 
Rubyで創るOpenFlowネットワーク - LLまつり
Rubyで創るOpenFlowネットワーク - LLまつりRubyで創るOpenFlowネットワーク - LLまつり
Rubyで創るOpenFlowネットワーク - LLまつり
 
Yesod on Heroku
Yesod on HerokuYesod on Heroku
Yesod on Heroku
 
Polidog に RPM の作り方を教える
Polidog に RPM の作り方を教えるPolidog に RPM の作り方を教える
Polidog に RPM の作り方を教える
 
2012/03/31 Apacheスタートスクリプト読書会発表資料
2012/03/31 Apacheスタートスクリプト読書会発表資料2012/03/31 Apacheスタートスクリプト読書会発表資料
2012/03/31 Apacheスタートスクリプト読書会発表資料
 
GPD WINでStretchを動かす
GPD WINでStretchを動かすGPD WINでStretchを動かす
GPD WINでStretchを動かす
 
FreeBSDで行こう for small server
FreeBSDで行こう for small serverFreeBSDで行こう for small server
FreeBSDで行こう for small server
 
NVIDIA GPUで作るHeadless X11 Linux
NVIDIA GPUで作るHeadless X11 LinuxNVIDIA GPUで作るHeadless X11 Linux
NVIDIA GPUで作るHeadless X11 Linux
 
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
 
プロセスの永続化でコスト削減 #perlbeginners
プロセスの永続化でコスト削減 #perlbeginnersプロセスの永続化でコスト削減 #perlbeginners
プロセスの永続化でコスト削減 #perlbeginners
 
mruby for embedded systems
mruby for embedded systemsmruby for embedded systems
mruby for embedded systems
 
ElixirをIoTボードで動かしてみた ~ラズパイ・big.LITTLE・Zynq編~
ElixirをIoTボードで動かしてみた ~ラズパイ・big.LITTLE・Zynq編~ElixirをIoTボードで動かしてみた ~ラズパイ・big.LITTLE・Zynq編~
ElixirをIoTボードで動かしてみた ~ラズパイ・big.LITTLE・Zynq編~
 

Recently uploaded

単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
Fukuoka Institute of Technology
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance
 
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
harmonylab
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
Toru Tamaki
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
iPride Co., Ltd.
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
atsushi061452
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
NTT DATA Technology & Innovation
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
yassun7010
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
Sony - Neural Network Libraries
 
CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料
Yuuitirou528 default
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
Matsushita Laboratory
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
CRI Japan, Inc.
 

Recently uploaded (16)

単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
 
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
 
CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
 

RPMで行こう!! RPMを使いたくなるといいなというお話

  • 1. RPMで行こう!! http://fedora.jp/ RPMを使いたくなるといいなというお話 Fedora JP Project Tadashi Jokagi <jokagi@fedora.jp> 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 1
  • 2. これは何の話? http://fedora.jp/ ● Fedora Coreで使用されているパッケージ管理 システムRPMとそのメリット・デメリットと、RPM の作り方などのセミナーです。 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 2
  • 3. セッションの流れ http://fedora.jp/ ● RPMって何? ● tarballから直接ビルド・インストールとの違い やメリット・デメリット ● RPMフロントエンドについて(yum他) ● 自分でRPMを作ろう ● 自分でリポジトリを作ろう(yum) 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 3
  • 4. このセッションで一番いいたいこと http://fedora.jp/ ● tarballを直接ビルドしてインストールするな ● RPMを作ってインストールしろ!! – なので他が薄いですがあしからず;-) 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 4
  • 5. RPMって何? http://fedora.jp/ ● Red Hat, Inc.が開発したパッケージ管理システ ム ● RPM Package Managerの略 ● 昔はRedhat Package Managerの略 ● Red Hat, Inc. のjbjという人が現在のメンテ ナー ● システムのパッケージ構成の管理とパッケー ジファイルのメンテナンスを行う 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 5
  • 6. RPMを使うとどうよくなる? http://fedora.jp/ ● はじめにSPECファイルという形式でビルド手 順を記述するので、二度目以降のビルドが楽 になる ● インストールされるファイルを把握できる ● 基本的に依存関係を正しく保ってくれる – 正しく処理できない場合、多くはユーザーが悪い ● ファイルのインストールだけではなくシステム の制御も同時に行える ● パッケージの正当性を調べることができる 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 6
  • 7. RPMみたいなのって他にあるの? http://fedora.jp/ ● deb – Debian GNU/Linuxで用いられている形 式 ● Portage – Gentoo GNU/Linuxで用いられる形 式 ● Ports/Package – FreeBSDで用いられる形式 ● Fink – Mac OS Xで用いられる形式(Apple製で はない) ● pkg - Solarisで用いられる形式 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 7
  • 8. RPMを使わないビルドとインストール http://fedora.jp/ ● ありがちパターン $ gzip -dc foo-1.0.0.tar.gz | tar zxf - $ cd foo-1.0.0 $ ./configure –prefix=/usr/local $ make $ su - # cd .../foo-1.0.0 # make install 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 8
  • 9. RPMを使ったビルドとインストール http://fedora.jp/ ● そんなに難しくない $ rpmbuild --rebuild foo-1.0.0-1.src.rpm (case1) $ rpmbuild -ta foo-1.0.0-tar.gz (case2) $ rpmbuild -ba foo.spec (case3) $ su - # rpm -ihv .../foo-1.0.0-1.i386.rpm ●そもそもバイナリが既にあればビルドすら要らない 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 9
  • 10. RPMのフロントエンド http://fedora.jp/ ● RPMを便利に管理するためのアプリケーション ● 一度使い出すと、なくては困る人間が退化す るアプリケーション 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 10
  • 11. フロントエンドって何? http://fedora.jp/ ● リポジトリというRPMを集めたディレクトリから 必要なRPMを入手できる – リモートサーバーでもOK – 複数のリポジトリを同時に処理できる ● 依存関係もまとめて管理してくれる 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 11
  • 12. フロントエンドって何? http://fedora.jp/ ● リポジトリ上の更新されたRPMをうまくアップ デートしてくれる ● 自動実行しておくと勝手に最新になっていく – サーバー用途ではまったくすすめないが 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 12
  • 13. RPMにはなにがあるの? http://fedora.jp/ ● Fedora Coreはyum・up2dateが標準パッケージ 管理システム – Up2dateは元々Red Hat Linux・Red Hat Enterprise Linux用 ● Fedora Core標準ではないがapt-rpmも有名 – ただし事実上標準ともいえる ● その他のディストリビューション – turbopkg(zabon) - Turbolinux – YAST – SuSE 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 13
  • 14. yumって何? http://fedora.jp/ ● Yellow dog Updater, Modifiedの略 ● 公式サイトは http://linux.duke.edu/projects/yum/ ● 元々Yellowdog Linuxのアプリケーション ● pythonで記述されている ● CentOSもyumが使える(らしい) 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 14
  • 15. apt-rpmって何? http://fedora.jp/ ● aptはAdvanced Package Toolの略 ● 元々Debian GNU/Linuxのアプリケーション – RPM管理なのでapt-rpmに名前が変わった ● apt-rpmの公式サイトは http://apt4rpm.sourceforge.net/ ● Vine Linuxのパッケージ管理システム ● 私はかたくなに使っていない(苦笑) 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 15
  • 16. リポジトリって何? http://fedora.jp/ ● 下記の情報を持つもの – RPMを集めたディレクトリ – RPM毎の固有情報 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 16
  • 17. GUIないの? http://fedora.jp/ ● あります ● yum – gyumが有名 – 私はそもそもLinuxでGUIを使わないのであまり知 らない ● apt-rpm – Synapticが有名 – apt-rpmもGUIも使わないのでさらに知らない 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 17
  • 18. gyumを使う http://fedora.jp/ 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 18
  • 19. yumとapt-rpmどっちがいいの? http://fedora.jp/ ● yumのメリット – 標準でついてくる – 標準で基本的な設定がされている ● yumのデメリット – メモリを多く消費する – 若干重い – 最低限の機能しかない 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 19
  • 20. yumとapt-rpmどっちがいいの? http://fedora.jp/ ● apt-rpmのメリット(yumと比較して) – 多機能。とにかく必要なことはおおむねできる。 – yumに比べ、少メモリの消費と高速である ● apt-rpmのデメリット – Vine Linux以外はapt-rpm自体の配布元が複数あ り、衝突の発生がしやすい ● 問題が発生すると、「どのapt-rpm使ってるの?」から始 まる – 同じくディストリビューションに特化したリポジトリで ない場合が多く、ディストリビューションのRPMとの 衝突が起こることがある 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 20
  • 21. さてさて少し難しくなります http://fedora.jp/ ● そろそろRPMを作ってみましょう… 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 21
  • 22. RPMってどうやって作るの? http://fedora.jp/ ● 必要なソースファイルなどを用意する ● SPECファイルを用意する ● rpmbuildコマンドでビルドを行う 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 22
  • 23. SPECファイル http://fedora.jp/ ● RPMのビルド手順を記述したファイル ● 内部でいくつかのセクションを持つ 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 23
  • 24. セクションって何よ? http://fedora.jp/ ● 目的に応じた作業を記述する場所 – グローバル関連(ID・packageセクション) – ビルド関連(prep・buildセクション) – パッケージ構築関連(clean・installセクション) – パッケージ構成関連(filesセクション) – インストール関連(pre・post・preun・postunセクショ ン) – 変更履歴関連(changelogセクション) 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 24
  • 25. グローバル関連セクション http://fedora.jp/ ● RPMについての全体的な情報を記述する ● IDセクション – パッケージ名(Name)グループ(Group) – バージョン番号(Version)リリース番号(Release) – ソースファイル(Sources)パッチファイル(Patch) – 依存関係(Requires) – その他もろもろ ● Description – RPMの説明 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 25
  • 26. グローバル関連セクション http://fedora.jp/ ● Packageセクション – サブパッケージの情報 – IDセクションとdescriptionセクションをいくつか記述 する 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 26
  • 27. パッケージグループ http://fedora.jp/ ● /usr/share/doc/rpm-<version>/GROUPSに 記述されている ● Amusements/Games Applications/Multimedia Documentation Amusements/Graphics Applications/Productivity System Environment/Base Applications/Archiving Applications/Publishing System Environment/Daemons Applications/Communications Applications/System System Environment/Kernel Applications/Databases Applications/Text System Environment/Libraries Applications/Editors Development/Debuggers System Environment/Shells Applications/Emulators Development/Languages User Interface/Desktops Applications/Engineering Development/Libraries User Interface/X Applications/File Development/System User Interface/X Hardware Support Applications/Internet Development/Tools 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 27
  • 28. ビルド関連セクション http://fedora.jp/ ● prepセクション – ビルドの準備を行う – 大体はtarballの展開とパッチ当て ● buildセクション – 実際のビルドを行う – 大体は./configure && make 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 28
  • 29. パッケージ構築関連セクション http://fedora.jp/ ● installセクション – 環境変数RPM_BUILD_ROOTの下に仮想ディレクト リを構築する – 仮想ディレクトリはほぼ実際にインストールされる 環境に近い状態を作る – 大体はmake install DESTDIR=$ {RPM_BUILD_ROOT} ● cleanセクション – 仮想ディレクトリを掃除 – 大体はrm -rf ${RPM_BUILD_ROOT} 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 29
  • 30. パッケージ構成関連 http://fedora.jp/ ● filesセクション – デフォルトとファイル・ディレクトリ毎にパーミッショ ンやオーナーを指定できる – 設定ファイルとしてマーキングできる – サブパッケージが存在する場合、サブパッケージ 毎にfilesセクションを記述する 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 30
  • 31. インストール関連セクション http://fedora.jp/ ● pre・post – インストール・アップデート時に行う処理を記述す る – preはファイルがインストール処理される前に実行 する処理 – postはファイルがインストール処理された後に実 行する処理 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 31
  • 32. インストール関連セクション http://fedora.jp/ ● preun・postun – アンインストール・アップデート時に行う処理を記 述する – preはファイルがアンインストール処理される前に 実行する処理 – postはファイルがアンインストール処理された後に 実行する処理 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 32
  • 33. インストール関連セクション http://fedora.jp/ ● アップデートとは実はアンインストールとインス トールの組み合わせ – $1の値によってインストール・アンインストール・ アップデートを識別する 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 33
  • 34. 変更履歴関連 http://fedora.jp/ ● 読んで字のごとく ● いわゆるChangeLogを記述する 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 34
  • 35. RPMを作りましょう http://fedora.jp/ ● とりあえず何か作りましょう – 何にしようかな… – … – zzz – – skfのRPMでも作りましょう 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 35
  • 36. skfって何? http://fedora.jp/ ● nkf互換の漢字フィルター – 中国の文字コードも一部処理できるらしい – 題材にするために使っただけであまり詳しく知りま せん(すみません…) 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 36
  • 37. 簡単なSPECファイル http://fedora.jp/ ● グローバル関連セクション Summary: skf is kanji filter and compatible nkf. Name: skf Version: 1.93b2 Release: 1 License: BSD Group: Applications/Text URL: http://skf.sourceforge.jp/ Source0: %{name}-%{version}b-1.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}- root %description skf is kanji filter and compatible nkf. 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 37
  • 38. 簡単なSPECファイル http://fedora.jp/ ● ビルド関連セクション ● %prep %setup -q %build ./configure --prefix=%{_prefix} make 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 38
  • 39. 簡単なSPECファイル http://fedora.jp/ ● パッケージ構築関連セクション %install rm -rf ${RPM_BUILD_ROOT} make install DESTDIR=${RPM_BUILD_ROOT} rm -rf ${RPM_BUILD_ROOT}%{_docdir}/%{name} rm -rf ${RPM_BUILD_ROOT}%{_prefix}/man # file list without man find ${RPM_BUILD_ROOT} -type f | sed "s;$ {RPM_BUILD_ROOT};;g" | grep -v "%{_mandir}" > filelist # file list with man(gzipped) find ${RPM_BUILD_ROOT}%{_mandir} -type f -exec echo {}. gz ; | sed "s;${RPM_BUILD_ROOT};;g" >> filelist 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 39
  • 40. 簡単なSPECファイル http://fedora.jp/ ● パッケージ構成関連セクション %files -f filelist %defattr(-,root,root,-) %doc *txt 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 40
  • 41. SPECからRPMを作ってみる http://fedora.jp/ ● 変更履歴関連セクション %changelog * Sat Mar 26 2005 <jokagi@fedora.jp> - - Initial build. 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 41
  • 42. 実際に作成してみよう http://fedora.jp/ ● SOURCESディレクトリにソースを保存 ● SPECSディレクトリに先ほどのSPECを保存 ● rpmbuild -ba skf.specでビルドを開始 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 42
  • 43. 作成したRPMをインストール http://fedora.jp/ # rpm -ihv skf-1.92b-1.i386.rpm 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 43
  • 44. とりあえず作るだけなら簡単 http://fedora.jp/ ● さっきのSPECファイルを雛形にすれば簡単な ものはすぐにRPMにできる ● この程度なら実はchkinstallというものを使え ば似たようなものが作れる ● 手を抜かずにfilesセクションを書くこと – 特に設定ファイルがあったり、サービスdaemon だったり共有ライブラリなどの場合 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 44
  • 45. もうちょっとちゃんと作る http://fedora.jp/ ● ちゃんと作るとfilesセクションは手を抜けない ● 必要なファイルを列挙します – 設定ファイルは%configなどでマーキングすること %{_bindir}/skf %{_mandir}/ja/man1/skf.1j.gz %{_datadir}/skf/lib/*.stb %{_datadir}/skf/lib/*.txt 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 45
  • 46. 覚えておきたいデフォルトマクロ http://fedora.jp/ ● マクロコマンド – %__rm %__mv %__cp – ファイルを操作するコマンドの 擬似マクロコマンド – %setup – tarballの展開と、展開先への移動をする 擬似マクロコマンド – %patch - パッチを適用する擬似マクロコマンド – %configure – ./configureにありがちな引数を付加 した擬似マクロコマンド – %makeinstall - makeコマンドにありがちなインス トール用引数を付加した擬似マクロコマンド 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 46
  • 47. 覚えておきたいデフォルトマクロ http://fedora.jp/ ● マクロ定数 – %{_prefix} – ベースになるインストール先(一般的に /usr) – %{_sysconfdir} – 設定ファイルのディレクトリ(一般 的に/etc) – %{_bindir}・%{_sbindir} - 実行ファイルのインストール 先(一般的に%{_prefix}/{bin,sbin}) – %{_datadir} データを保存するディレクトリ(一般的 に%{_prefix}/{share}) – %{_mandir} マニュアルを保存するディレクトリ(一般 的に%{_prefix}/{share}/man) 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 47
  • 48. 覚えておきたいデフォルトマクロ http://fedora.jp/ ● マクロ定数 – %{SOURCE<NUMBER>} - ソースタグで指定した ファイルのパス 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 48
  • 49. 自分でリポジトリを作ろう http://fedora.jp/ ● ここではyumのリポジトリを作ります ● apt-rpmは使ってないのでパス!! – 時間もないしね…(言い訳ですか 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 49
  • 50. っで、そんなもの必要なの? http://fedora.jp/ ● こういう人はあると便利 – 自作RPMを、複数台サーバーに適応している人 (例えばサーバー業者) – 自作RPMをたくさんインターネットに公開している 人 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 50
  • 51. それでは作ります http://fedora.jp/ ● 作るのは簡単 – RPMを一つのディレクトリに集めて – データベースを作るだけ 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 51
  • 52. 作業ディレクトリを用意 http://fedora.jp/ $ mkdir -p /var/www/html/repos/RPMS/i386/ 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 52
  • 53. RPMをコピーしまくる http://fedora.jp/ $ cp -a *.rpm /var/www/html/repos/RPMS/i386/. 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 53
  • 54. データベースを作る http://fedora.jp/ $ cd /var/www/html/repos/ $ createrepo RPMS 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 54
  • 55. それだけ? http://fedora.jp/ ● リポジトリ作成それだけなのです ● 後はyumにそのリポジトリを指定するだけです ぐに使えます 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 55
  • 56. 本当に使えるか試してみよう http://fedora.jp/ ● 先ほどのskfをyum経由でインストール – あらかじめrpm -e skfで削除しておく 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 56
  • 57. yumの指定 http://fedora.jp/ ● /etc/yum.repo.d/にmyrepos.repoとして作成 name=Fedora Core My Repository baseurl=http://example.com/repos/ enabled=1 gpgcheck=0 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 57
  • 58. ローカルのデータベースを更新 http://fedora.jp/ # yum list 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 58
  • 59. yumでインストール http://fedora.jp/ # yum install skf 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 59
  • 60. 時間あるかな? http://fedora.jp/ ● これ位はRPMを使うなら覚えておこう!! 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 60
  • 61. インストール・アップデート・アンイン ストール http://fedora.jp/ ● インストール – rpm -i <rpm-filename> – rpm -U <rpm-filename> ● アップデート – rpm -F <rpm-filename> – rpm -U <rpm-filename> ● アンインストール – rpm -e <package-name> ● -i・-U・-Fは-hvを同時に指定するのが一般的 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 61
  • 62. インストール前 http://fedora.jp/ ● RPMの情報 – rpm -qip <rpm-file> ● RPMに含まれるファイル – rpm -qlp <rpm-file> ● RPMが提供するもの – rpm -qp –-provides <rpm-file> ● RPMの依存関係 – rpm -qp –-requires <rpm-file> 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 62
  • 63. インストール前 http://fedora.jp/ ● RPMの情報を整形出力 – rpm -qp –-queryformat “<format>” <rpm-file> ● 変更履歴出力 – rpm -qp –changelog <rpm-file> 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 63
  • 64. インストール後 http://fedora.jp/ ● 基本的に「インストール前」から「-p」を抜くとイ ンストール済みRPMが対象になる – ファイル名ではなくパッケージ名を指定すること ● ex)rpm -ql httpd 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 64
  • 65. インストール後 http://fedora.jp/ ● ファイルを保持するRPM名 – rpm -qf </dir/to/file> ● インストール済みRPM一覧 – rpm -qa <wildcard> – rpm -qa –-last <wildcard> インストール順表示 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 65
  • 66. 終り http://fedora.jp/ ● わざわざRPMを作るとここが便利ですよ – 共通言語的な作業手順書の作成(SPECファイル) – インストール済みバージョンの管理 – 共有ライブラリ他との依存性の管理 – ファイルからインストールしたソフトウェアの逆引き – 正確なアンインストール – 単にファイルのコピー以上の処理 – RPMのインストール先ホストにgccがいらない 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 66
  • 67. http://fedora.jp/ ご清聴ありがとうございました。 2005年3月26日 Tadashi Jokagi <jokagi@fedora.jp>, Fedora JP Project 67