さんきゅう堂的_バックアップ

 
  

 rpmを作ってみるPart3

MySQLのbugでDovecotがMySQLにアクセスできない?
で、、ソースからrpmを作ってみるに挑戦!

dovecot: Dec 26 07:16:36 Error: auth-worker(default): mysql: Connect failed to localhost (postfix): Access denied for user'postfix'@'localhost'(using password: YES) - waiting for 5 seconds before retry

検索かけると
cd dovecot
perl -i -pe 's/sha1_result/dovecot_sha1_result/' `find . -name '*.[ch]'`

こんなのがありました。
再度「perl -i -pe 's」を検索すると「sha1_resul→/dovecot_sha1_result」に書き換える?
今度は「sha1_result」を検索する。
dovecot/src/lib sha1.c,1.1,1.2 sha1.h,1.1,1.2を発見!
sha1.c,sha1.h,sha1.oに「sha1_resul」の記述がありました。
これを書き換えてrpmを作ればいいのか??
まずはSUSELinuxサイトからdovecot-1.0.beta3-13.src.rpmをDL
SUSELinux10.0ビギナーズバイブルを参考に
sunq@linux:~/rpm/SOURCES> rpm -ivh dovecot-1.0.beta3-13.src.rpm
   1:dovecot                ########################################### [100%]
sunq@linux:~/rpm/SOURCES> cd ../SPECS/
sunq@linux:~/rpm/SPECS> rpmbuild -bp dovecot.spec
~
~
~
sunq@linux:~/rpm/SPECS>


これでソースの展開がされたようです。
次に「sha1_resul→/dovecot_sha1_result」をする。

sunq@linux:~/rpm/SPECS> cd /home/sunq/rpm/BUILD/dovecot-1.0.beta3/src/lib
sunq@linux:~/rpm/BUILD/dovecot-1.0.beta3/src/lib> perl -i -pe 's/sha1_result/dovecot_sha1_result/' `find . -name '*.[ch]'`
sunq@linux:~/rpm/BUILD/dovecot-1.0.beta3/src/lib> cd /home/sunq/rpm/BUILD/dovecot-1.0.beta3/
sunq@linux:~/rpm/BUILD/dovecot-1.0.beta3> perl -i -pe 's/sha1_result/dovecot_sha1_result/' `find . -name '*.[ch]'`

sunq@linux:~/rpm/BUILD/dovecot-1.0.beta3> cd /home/sunq/rpm/SPECS/
sunq@linux:~/rpm/SPECS> rpmbuild -bc dovecot.spec
~
~
~
+ popd
~/rpm/BUILD/dovecot-1.0.beta3
+ exit 0
sunq@linux:~/rpm/SPECS> rpmbuild -bi dovecot.spec
~
~
~
Requires(pre): /bin/sh
Requires(post): /bin/sh
Requires(preun): /bin/sh
Requires(postun): /bin/sh
Requires: /bin/sh
ファイルの処理中: dovecot-debuginfo-1.0.beta3-13
伸張ファイルの検査中: /usr/lib/rpm/check-files /var/tmp/dovecot-1.0.beta3-build
sunq@linux:~/rpm/SPECS> rpmbuild -ba dovecot.spec
~
~
~
書き込み完了: /home/sunq/rpm/SRPMS/dovecot-1.0.beta3-13.src.rpm
書き込み完了: /home/sunq/rpm/RPMS/x86_64/dovecot-1.0.beta3-13.x86_64.rpm
書き込み完了: /home/sunq/rpm/RPMS/x86_64/dovecot-debuginfo-1.0.beta3-13.x86_64.rpm
実行中(%clean): /bin/sh -e /var/tmp/rpm-tmp.41008
+ umask 022
+ cd /home/sunq/rpm/BUILD
+ cd dovecot-1.0.beta3
+ /bin/rm -rf /var/tmp/dovecot-1.0.beta3-build
+ exit 0
sunq@linux:~/rpm/SPECS> cd ../RPMS/x86_64/
sunq@linux:~/rpm/RPMS/x86_64> su
パスワード:
linux:/home/sunq/rpm/RPMS/x86_64 # rpm -ivh dovecot-1.0.beta3-13.x86_64.rpm
準備中...                ########################################### [100%]
   1:dovecot                ########################################### [100%]
linux:/home/sunq/rpm/RPMS/x86_64 #

よっしゃ~~~インスト完了\(^o^)/

dovecot: Dec 26 07:16:36 Error: auth-worker(default): mysql: Connect failed to localhost (postfix): Access denied for user'postfix'@'localhost'(using password: YES) - waiting for 5 seconds before retry

よっしゃ~~~アクセス出来ない・・・・
道のりは遠い・・・・・・くぅ~~~(>_<)