• 締切済み

パッチのあてかた

Postfixというメールサーバにパッチをあてたく思っています。 パッチファイルの冒頭は、 diff -ur postfix-2.1.4.orig/src/global/mail_params.c postfix-2.1.4/src/global/mail_params.c --- postfix-2.1.4.orig/src/global/mail_params.c 2004-01-27 00:43:42.000000000 +0900 +++ postfix-2.1.4/src/global/mail_params.c 2004-07-08 12:32:53.000000000 +0900 ・・・ となっています。 postfix-2.1.4ディレクトリと同じディレクトリに パッチファイルをおいて、 # patch < PATCH_FILE_NAME と入力しても、 結合されたコンテキスト diff のようです。 次のパッチは結合されたコンテキスト diff のようです。 該当する場所にはパッチが見当たりません。 とエラーが表示されます。どのようにしたらパッチがあたるか、 ご教授いただけますか? よろしくお願いいたします。

みんなの回答

  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.1

$ cd postfix-2.1.4 $ cat PATCH_FILE_NAME > patch -p1 とかではどうでしょう? postfix、2.4.3辺りまで出ているようですが。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • patch コマンド -p について

    Linuxでpatchを当てた事がなく、Solarisでのイメージしかないのですが、Solarisでは # patchadd パッチファイル だったと思います。 linuxだとカレントディレクトリにパッチがあった場合、 # patch < パッチファイル では実行できないのでしょうか。 調べて見ると「-p」を指定しており、 -p0 パス名を修正しない (例 /tmp/src/patch) -p1 最初の「/」を削除する (例 tmp/src/patch) -p2 次のディレクトリまで削除する (例 src/patch) とありますが意味がよくわかりません。 お手数ですがご教授頂けると助かります。

  • パッチのあて方 (GNU)

    こんにちは。当方Windowsを使用しています。 PHPのブログプログラムをアップデートするためにパッチを当てる事になったのですが、そのやり方でつまずいています。 もらったファイルは diff --- +++ @@ などがところどころに描かれています。web上にアップされているため、拡張子が不明です。 色々と調べてみたところ、GNUの"Patch for Windows"を使用することでできるようなのですが、インストールしてみたところ、どのように使用してよいのかもわからず困っています。 GnuWin32\bin\patch.exe を起動すると。コマンドプロンプトのようなものが開きますが、そこから何をして良いのか解らない、と言ったところです。 もし、何か解る方おられましたら時間の空いたときにでも、ヒントなど下さればと思います。もっと解りやすいツールがあるのならばそちらを使いたいとも思っています。 どうぞよろしくお願いいたします。

  • パッチの作り方

    おはようございます。 ふと疑問に思ったのですが、 パッチ(patch)って、どうやって作るのでしょうか? 今、C#でプログラムを書いているのですが、 修正が必要になった場合、パッチの方が効率的ですよね。 ただ、その作り方がまったく検討がつきません。 ソースコードは自分で持っている場合、相違点・追加点はわかるとは思いますが、 それをどうやってパッチのファイルにして、適用させるのでしょうか? その仕組みとか載っているサイトはないでしょうか?

  • Patchの当て方について

    Apacheのパッチの当てたいのですが、うまくいきません。 下記のURLを見て、当てようと思っています。 http://www.ossexpo.net/2009/11/solaris10-apache-2214segmentat.html 作業手順 cd /work/src/httpd-2.2.14/srclib/apr/poll/unix bash-3.00# ls epoll.c kqueue.c patch poll.o port.lo select.lo epoll.lo kqueue.lo poll.c port.c port.o select.o epoll.o kqueue.o poll.lo port.c.rej select.c test.patch bash-3.00# patch -p0 < test.patch 結合されたコンテキスト diff のようです。 パッチを適用するファイル: port.c 逆方向の (あるいは以前に適用された) パッチが検出されました。-R と仮定します。[yes] 適用しますか? [no] 1 番目のパッチ内容を 0 行目で無視しました。 1 個のうち 1 個のパッチ内容を無視しました: 適用されなかったパッチを port.c.rej に保存します。 該当する場所にはパッチが見当たりません。 そもそも、やり方が間違っているのでしょうか? cat test.patch --- work/src/httpd-2.2.14/srclib/apr/poll/unix/port.c 2009/08/24 15:05:59 807269 +++ work/src/httpd-2.2.14/srclib/apr/poll/unix/port.c 2009/10/26 14:02:41 829803 @@ -101,8 +101,11 @@ } ret = port_getn(port, list, max, nget, tvptr); + /* Note: 32-bit port_getn() on Solaris 10 x86 returns large negative + * values instead of 0 when returning immediately. + */ - if (ret < 0) { + if (ret == -1) { rv = apr_get_netos_error(); switch(rv) { 勉強不足で申し訳ありませんが、教えていただけたら幸いです。 よろしくお願いします。

  • ProFTPd + iconvパッチ CharsetLocal が unknown

    ProFTPd に iconv パッチをあて proftpd.confに CharsetLocal UTF-8 CharsetRemote CP932 この2つの設定をしたところ、 noppi@sv:/usr/local/src$ /usr/local/sbin/proftpd -t Checking syntax of configuration file - Fatal: unknown configuration directive 'CharsetLocal' on line 43 of '/usr/local/etc/proftpd.conf' となってしまいます。 -l で確認するとCompiled-in modules:にはmod_codeconv.cが含まれているので、パッチあてとビルドはできていると思います。 また、Charset系のオプションをはずすと、inet.dから正しく起こされます。 原因や対策などご存知の方、よろしくお願いいたします。 OS:Debian Etch Linux 2.6.22 コマンド: cd /usr/local/src wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.0.tar.gz wget http://www.hakusan.tsg.ne.jp/tjkawa/software/misc/proftpd-iconv/pack/proftpd-1.3.0-iconv.patch.gz wget http://www.hayasoft.com/JP/software/linux/proftpd-1.3.0-nlst-ffftp.patch tar -zxvf proftpd-1.3.0.tar.gz gzip -d proftpd-1.3.0-iconv.patch.gz patch -p0 < proftpd-1.3.0-iconv.patch patch -p0 < proftpd-1.3.0-nlst-ffftp.patch cd proftpd-1.3.0 ./configure --prefix=/usr --with-modules=mod_codeconv:mod_df make make install

  • gitのpatch当ての方法

    gitから変更があると来るメールの↓のようなパッチを当てる方法を教えて下さい 検索しても、ある程度以上のスキルに合わせて書かれているので理解出来ません。 よろしくお願いします Patch Links: •ttps://github.com/xxxxxxxx/xxxxx/pull/15.patch •ttps://github.com/xxxxxxxx/xxxxx//pull/15.diff

  • qmail-date-localtime.patchでエラー

    はじめまして、ZEATと申します。 qmailでメールサーバを構築しようと思っていますが、 qmail-date-localtime.patchを当てようと 以下のコマンドを実行したら、エラーが出てしまいます。 patch -p1 < ../qmail-date-localtime.patch -----エラー内容-------- missing header for unified diff at line 7 of patch patching file date822fmt.c Hunk #1 FAILED at 1. Hunk #2 FAILED at 13. 2 out of 2 hunks FAILED -- saving rejects to file date822fmt.c.rej ご教授お願いします。 linux : Redhat9 qmail : qmail-1.03 よろしくお願いします。

  • スマホでテザリング用パッチをあてられない?

    GALAXY SC-02G を使い始めました。 普通にテザリングしようとしても、ドコモ端末の為だかららしく、設定できた2つの端末間で接続できても、通信するようになりませんでした。 下記のサイトではパソコンを使ってテザリング出来るようにする感じですが、 http://xn--line-yk4c3jne2c.biz/galaxy%E3%81%A7%E3%83%86%E3%82%B6%E3%83%AA%E3%83%B3%E3%82%B0%E3%81%8C%E3%81%A7%E3%81%8D%E3%82%8B%E6%A0%BC%E5%AE%89sim%EF%BC%81%E6%89%8B%E9%A0%86%E3%81%A8%E6%96%B9%E6%B3%95/ スマホに直接patchファイルをダウンロードして、適用させることは出来ないのでしょうか? スマホにダウンロードして、batファイルを解凍するまでは出来ましたが、そこからどうすれば良いのか分かりません。 出てきた画面の手順通りに、とは、どういうことでしょうか? 見れないので分かりません。 パソコン使えないとパッチをあてられないのでしょうか?? スマホだけでパッチをあてる方法をご教示下さい。 よろしくお願い致します。

  • solaris8へ、rcsのインストールで困っています。

    RCSがインストールしたてなのですが、なぜか、2回目以降のチェックアウトの際に以下のメッセージが表示されて、jうまく使うことが出来ません。 同様の問題にぶち当たったかたはいらっしゃいませんでしょうか? インストールはsolarisのパッケージ形式:     rcs-5.7-sol8-sparc-local を使用、OSはSolaris 8 です。 [現象] > mkdir RCS; touch aaa > ci -l aaa > cat /etc/hosts >> aaa > ci -l aaa /usr/local/bin/diff: オプションが正しくありません -- a 使用法: diff [-bitw] [-c | -e | -f | -h | -n] file1 file2 diff [-bitw] [-C number] file1 file2 diff [-bitw] [-D string] file1 file2 diff [-bitw] [-c | -e | -f | -h | -n] [-l] [-r] [-s] [-S name] directory1 directory2 ci: RCS/aaa,v: diff failed ci aborted [その他] > where diff /usr/local/bin/diff --[*1] /usr/bin/diff   --[*2] /bin/diff --[*3] [*1]最初の状態でこれは無かったので、最初からある[*2][*3]をコピーしてみたが、どっちも意味なく同じメッセージが出て終了してしまいます。

  • postfix どういう場合に/var/spool/postfix/deferredに未送信メールがたまるのでしょうか。

    RHL9.0,postfixを使用しています。/etc/postfix/aliasesをつかってメーリングリストによるメール転送を行っています。しかし、添付ファイル付きのメールをこのメーリングリスト宛に送ると/var/spool/postfix/deferredディレクトリに同じメールがのこり、1時間ごとに同じメールの送信が繰り返されます。また、一部の人にはこのメールが届きません。ログを見ても何か失敗したと言うような記述がみあたりません。