プロが教えるわが家の防犯対策術!

RPM のソースパッケージが展開できません。
CentOS6.4です。

#rpm -ivh webalizer-2.21_02-3.3.el6.src.rpm

1:webalizer 警告: ユーザ mockbuild は存在しません - root を使用します
警告: グループ mockbuild は存在しません - root を使用します
警告: ユーザ mockbuild は存在しません - root を使用します
警告: グループ mockbuild は存在しません - root を使用します
警告: ユーザ mockbuild は存在しません - root を使用します
警告: グループ mockbuild は存在しません - root を使用します
警告: ユーザ mockbuild は存在しません - root を使用します
警告: グループ mockbuild は存在しません - root を使用します
警告: ユーザ mockbuild は存在しません - root を使用します
警告: グループ mockbuild は存在しません - root を使用します
警告: ユーザ mockbuild は存在しません - root を使用します
警告: グループ mockbuild は存在しません - root を使用します
警告: ユーザ mockbuild は存在しません - root を使用します
警告: グループ mockbuild は存在しません - root を使用します
警告: ユーザ mockbuild は存在しません - root を使用します
警告: グループ mockbuild は存在しません - root を使用します
########################################### [100%]

これで展開されているはずなんですが、RPM のソースパッケージが展開されていません。

「RedHat系のOSでは/usr/src/redhatディレクトリや/var/src/rpmディレクトリにRPMをビルドするためのディレクトリが用意されています。」とありましたが、デフォルトではどちらも存在していなかったので
# cd /usr/src
# mkdir redhat
# cd redhat
# mkdir BUILD RPMS SOURCES SPECS SRPMS

としして自分でディレクトリを新規作成したのち、、もう一度
#rpm -ivh webalizer-2.21_02-3.3.el6.src.rpm を行いましたが

/usr/src/redhat/SPECSに何も展開されません。(SPECSは空のまま)


やり方が間違っていますか?

A 回答 (3件)

>「RedHat系のOSでは/usr/src/redhatディレクトリや/var/src/rpmディレクトリにRPMをビルドするためのディレクトリが用意されています。

」とありましたが、デフォルトではどちらも存在していなかったので

rpm-buildパッケージがインストールされていなかったのでしょう。
yum install rpm-build
でインストールすれば、/etc/src下にredhatディレクトリとそのサブディレクトリも作成されます。
# 現状作成した/usr/src/redhatディレクトリは削除してから実行した方がいいでしょう。

入っていない場合は…どこに展開されるんでしょうかねぇ。
試したことありませんが……。
ちなみに、rpmコマンドはどのユーザーで実行しました?

一般ユーザーだと/usr/srcに書き込み権限ないかと思われますが…。
私は一般ユーザーでrpmbuildできるように.rpmmacrosをホームディレクトリに置いていますが。
# 「一般ユーザー rpmmacros」辺りで検索するといろいろ見つかるでしょう。
# まぁ、ビルド時の依存関係でエラーが出て、その都度rootユーザーになってyum installなり必要になりますが。

この回答への補足

#rpm -qa | grep rpm-build
rpm-build-4.8.0-32.el6.i686

rpm-buildは既に入っていました。
しかし/etc/srcはありませんでした。

再度
#rpm -ivh webalizer-2.21_02-3.3.el6.src.rpm
しまして
########################################### [100%]
とはなるんですが、/usr/src/redhat/SPECSディレクトリにも入っておらず
/var/src/rpmも最初からないのでないので
どこに入っているかがわかりません。

コマンドは全てrootで行っています。

補足日時:2013/05/12 02:35
    • good
    • 0

http://www.oss-d.net/webalizer/2.21

CentOS6.3ですが……6.4に読み替えて試してみました。
ls /root/rpmbuild/
に入っていました………。

/usr/src/redhatは使わなくなったんですかねぇ……。
    • good
    • 0
この回答へのお礼

/root/rpmbuild/に
BUILD BUILDROOT RPMS SOURCES SPECS SRPMS がありました。

/usr/src/redhatは使わなくなったみたいですね。。

ls /root/rpmbuild/SPECS/ とすると
その中にwebalizer.specがちゃんと入っていました。

ありがとうござました。助かりました。

お礼日時:2013/05/15 20:27

>しかし/etc/srcはありませんでした。



/usr/srcでした……。

う~ん……
rpm-buildパッケージを一度削除して、
自分で作った/usr/src/redhatディレクトリを削除して、
再度rpm-buildパッケージをインストール。
で、/usr/srcはどうなりますかね?

あとは…
rpm -ivh webalizer-2.21_02-3.3.el6.src.rpm
を実行した後、/var/logになんか出ていないか…でしょうかねぇ。
SELinuxが制限しているとは思えませんが…。
    • good
    • 0
この回答へのお礼

SELinuxは無効にしてあります。

お礼日時:2013/05/15 20:23

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!