[OpenBlockS Users page]
[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[obu:00084] rpm ファイルをまとめて( HDD に)展開


さいの です

たいしたことじゃないんですが。。。
HDDにrpmファイルを展開するためのスクリプトを作りました。 :)

作業用ディレクトリは /home/user1以下 とします。作業の流れは、

1) rpmファイルを保存するディレクトリと、展開後インストールされた
      rpmファイルと区別するため、移動するディレクトリを作成します。

 % mkdir /home/user1/OBS <-- ダウンロードしたrpmファイルを保存
 % mkdir /home/user1/OBS-OK  <-- 展開後に移動(保存)

2) ぷらっとホームのftpサイトからrpmファイルをダウンロードする。

  % cd /home/user1/OBS
  % ftp ftp://ftp.plathome.co.jp/
        bin
        cd pub/OpenBlockS/devel/packages/RPMS/noarch
        mget *
        .......
        cd pub/OpenBlockS/devel/packages/RPMS/ppc
        mget *
        .......
      (PC等でFTPソフトを使った方が楽かもしれない。。。)

3) 下に添付したシェルスクリプトを実行形式で保存する。
   (ここでは、シェルスクリプト名をRunとする)

  % vi Run
     添付のシェルスクリプトをコピーしてセーブする
  % chmod 744 Run

4) su(スーパーユーザ)になってRunを実行する。
  # ./Run

4’)rpm展開時のログが欲しければ実行時にscript等を走らせると良い。
      但しデフォルトではscriptコマンドが存在しないのでppcLinuxから
      バイナリだけを移植してしまうのが楽です。(問題なく動きました)

  # script rpm.log ; ./Run
  # exit

シェルの内容:

----ここから----
#/bin/sh
PATH=./:/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin
export PATH

cd /
for flist in `ls /home/user1/OBS/*.rpm`
do
        echo $flist
        rpm2cpio $flist | cpio -uid
        mv $flist /home/user1/OBS-OK/
done
----ここまで----
注意)cpio は "u" オプションで強制上書きさせてます。

上記を実行させた結果、現在以下のエラーが出ております。
/home/user1/OBS/grep-2.3-2obs.ppc.rpm
error reading header from package
cpio: premature end of archive

/home/user1/OBS/openssl-0.9.6-1obs.ppc.rpm
error reading header from package
cpio: premature end of archive

/home/user1/OBS/perl-5.00503-6obs.ppc.rpm
error reading header from package
cpio: premature end of archive

上記の3つのrpmファイルにについては、ftpダウンロード時に
壊れたのか、元のrpmファイルが壊れているのか不明です。

これからHDDへの展開をされる方へ、ご参考に。

では、でわ。

この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」