Day by day


portauditによるports更新不可の回避

投稿日時: 2014年3月25日 17:09   投稿者: admin   カテゴリー: FreeBSD

ソフトウェアに脆弱性が見つかった場合、portauditにより該当バージョンのportsを更新(インストール含)出来なくなります。
しかし、他の依存portsに更新が入った場合にrebuild出来ないと困ったりもします。
そのときは、-m ‘DISABLE_VULNERABILITIES=yes’ を引数に加えて更新します。

# portupgrade -m 'DISABLE_VULNERABILITIES=yes' -fr devel/apr1

これでportauditを一時的に無効にして更新できます。
 

portauditによるports更新不可の回避 はコメントを受け付けていません。

パッケージ情報の修正

投稿日時: 2014年1月22日 16:32   投稿者: admin   カテゴリー: FreeBSD

portsの更新をしているうちにときどきこんな状態になっちゃったりします。

# pkg_info
・・・
postfix-2.10.2,1    Secure alternative to widely-used Sendmail
postfix-2.11.0,1    Secure alternative to widely-used Sendmail
・・・

こんなときは次のコマンドをうって手動で修正する。

# pkgdb -Ff
--->  Checking the package registry database
[Updating the pkgdb <format:bdb_btree> in /var/db/pkg ... - 101 packages
 found (-0 +1) . done]
Duplicated origin: mail/postfix - postfix-2.10.2,1 postfix-2.11.0,1
Unregister any of them? [no] y
  Unregister postfix-2.10.2,1 keeping the installed files intact? [no] y
  -> postfix-2.11.0,1 is kept.
  --> Saving the postfix-2.10.2,1's +CONTENTS file as /var/db/pkg/postfix
-2.11.0,1/+CONTENTS.postfix-2.10.2,1
  --> Unregistering postfix-2.10.2,1
  --> Done.
[Updating the pkgdb <format:bdb_btree> in /var/db/pkg ... - 100 packages
 found (-1 +0) (...) done]

 

パッケージ情報の修正 はコメントを受け付けていません。

autoconf-2.69 makeエラー

投稿日時: 2013年12月4日 11:14   投稿者: admin   カテゴリー: FreeBSD

portsからautoconfをアップグレードしようとしたらmakeエラーが出ました。

 autoconf.texi:7997: misplaced }
 autoconf.texi:7998: must be after `@defmac' to use `@defmacx'
 autoconf.texi:7999: misplaced }
 autoconf.texi:8186: must be after `@defmac' to use `@defmacx'
 autoconf.texi:8251: misplaced }
 autoconf.texi:8270: misplaced }
 autoconf.texi:8297: misplaced }
 autoconf.texi:8360: must be after `@defmac' to use `@defmacx'
 conftest.c:4597: must be after `@defmac' to use `@defmacx'
 conftest.c:15929: must be after `@defmac' to use `@defmacx'

texinfoがバージョンアップすると、makeエラーになるportsがちょくちょく現れます。

今回の対処方法は以下の通り。

# vi /usr/ports/devel/autoconf/work/autoconf-2.69/doc/autoconf.texi

ファイルを開いて18行目と26行目の末尾にある@cを削除します。

12
13 @c @ovar(ARG)
14 @c ———-
15 @c The ARG is an optional argument.  To be used for macro arguments in
16 @c their documentation (@defmac).
17 @macro ovar{varname}
18 @r{[}@var{\varname\}@r{]}@c
19 @end macro
20
21 @c @dvar(ARG, DEFAULT)
22 @c ——————-
23 @c The ARG is an optional argument, defaulting to DEFAULT.  To be used
24 @c for macro arguments in their documentation (@defmac).
25 @macro dvar{varname, default}
26 @r{[}@var{\varname\} = @samp{\default\}@r{]}@c
27 @end macro
28

# cd /usr/ports/devel/autoconf
# make FORCE_PKG_REGISTER=yes reinstall clean

で完了です。

autoconf-2.69 makeエラー はコメントを受け付けていません。

Thunderbirdのアドオンチェックを無効

投稿日時: 2013年10月28日 15:08   投稿者: admin   カテゴリー: Windows

Thunderbirdのバージョンアップにより、使用中のアドオンが新バージョン非対応として無効にされてしまう症状を回避します。
作業は、about.configで「アドオンの互換性チェックを無効」に設定するだけです。

メニューバーから[ツール]⇒[オプション]⇒[詳細]⇒[一般]タブ⇒[高度な設定]⇒[設定エディタ]

about.configを開き、extensions.checkCompatibilityプロパティをバージョン毎に新規作成します。
例えば、現在のバージョン24.0.1に対応するには

extensions.checkCompatibility.24.0

という名前で真偽値プロパティを作成し、値をfalseに設定することでチェックが無効になりました。
末尾のバージョン番号は「major.minor」だけでよさそうです。

Thunderbirdのアドオンチェックを無効 はコメントを受け付けていません。

MySQLのバイナリログ

投稿日時: 2013年10月22日 16:56   投稿者: admin   カテゴリー: FreeBSD

MySQLのバイナリログ(mysql-bin.***)は、デフォルトで自動削除されないらしい。
つまりこのログがどんどんたまってストレージを圧迫していました。
データベースは一定期間ごとにバックアップを取っているので、古いバイナリログの自動削除設定をしました。
my.cnf内に以下の設定を追加します。

[mysqld]
expire_logs_days = 10

これで10日前までのバイナリログのみ保管されます。

expire_logs_days

バイナリログの自動削除の日数を指定する。
デフォルトは 0 で 「自動削除しない」ことを意味する。
MySQLサーバ起動時もしくはログをローテートするときが、ログを削除するタイミングである。

MySQLのバイナリログ はコメントを受け付けていません。

ディスク使用量の多いディレクトリを探す

投稿日時: 2013年10月22日 16:41   投稿者: admin   カテゴリー: FreeBSD

いつの間にかストレージを圧迫してしまっているとき、どのディレクトリが容量を使っているのか検索します。

# du | sort -rn | head

これで上位10件が表示されます。
 

ディスク使用量の多いディレクトリを探す はコメントを受け付けていません。

特定のportsを除外して残りをアップグレード

投稿日時: 2013年10月18日 15:47   投稿者: admin   カテゴリー: FreeBSD

例えば、PHP以外のportsを全てアップしたいときには以下のようにうちます。

# portupgrade -na -x 'php5*'

  • n: テストのみでアップグレードを実行しません(確認後、外してから再度実行してください)
  • a: アップグレード対象のports全てを選択
  • x: 除外するportsを指定

ちなみに、アンインストールは

# pkg_deinstall -v "php52*"

ports名を”で囲むとワイルドカードも使えます。
依存しているportsがある場合はエラーが出て削除できません。
 

特定のportsを除外して残りをアップグレード はコメントを受け付けていません。

Argument list too long

投稿日時: 2013年10月18日 15:18   投稿者: admin   カテゴリー: FreeBSD

大量のファイルを削除だとか移動だとかっていうのはあまり機会がなかったのですが、私にもとうとうその時がやって参りました。
特に気にも留めず、普段通りにディレクトリ内のファイルを全て削除するため*(ワイルドカード)を使ってコマンドを打つと、

/bin/rm: Argument list too long

・・・・・。

なんだよ、なんだよ、チマチマ消してられねぇよっ!ということで調べると、素晴らしいコマンドがありました!
標準入力から渡されたファイル名などを引数とみなして、別のコマンドの引数として起動する xargs さんをご紹介します。
次のコマンドの引数制限ぎりぎりになるよう分割して渡してくれるので、処理も早いとのこと。出来る方です。

# echo /usr/home/kesanaide/* | xargs ls -alp   ← 一応ファイル確認
# echo /usr/home/kesanaide/* | xargs rm ← さようなら~

このコマンド、ファイルを削除するときはいいのですが移動は出来ないかなと思っていたら、出来るんだそうです!
こちらは標準mvではなくGNU mv(GNU coreutilsに含)でオプション -t を使用すると可能になります。

# echo /usr/home/ugokasanaide/* | xargs gmv -t /usr/home/kottikoiyo/

xargs 最高です。
 

Argument list too long はコメントを受け付けていません。

kcaptcha の画像が表示されなくなる

投稿日時: 2013年10月18日 15:08   投稿者: admin   カテゴリー: FreeBSD

Apache のエラーログは次のとおり。

[Tue May 15 09:20:27 2012] [notice] child pid **** exit signal Abort trap (6)

kcaptcha に要求される PHP と GD を依存関係全部ビルドし直したけど直らず。
エラー内容からググっているとどこぞのフォーラムでこんな意見が

I don't use PHP, but a guess would be that png was upgraded after PHP was installed, and not everything that depends on png was rebuilt.
If that is the problem,
# portupgrade -rf png
or
# portmaster -r png
would fix it. Just rebuilding graphics/php5-gd might be enough.

エ ス パ ー 降 臨 。
 

kcaptcha の画像が表示されなくなる はコメントを受け付けていません。

libiconv-1.14 の cp932修正, eucJP-ms追加パッチ

投稿日時: 2013年10月18日 15:00   投稿者: admin   カテゴリー: FreeBSD

http://www2d.biglobe.ne.jp/~msyk/software/libiconv-patch.html
ではまだ1.14用が公開されていないため、portsからインストールした場合にはCP932とEUCJP-MSが使えない。
結果、文字コードの設定次第でSambaが使えなくなってしまうので、他の方が作ってくれたパッチを当ててアップグレードした。

  1. http://apolloron.org/software/libiconv-1.14-ja/ からパッチをいただき、/usr/ports/distfiles/ に置く。
  2. /usr/ports/converters/libiconv/Makefile を編集。
    OPTIONS= EXTRA_ENCODINGS "Include extra character sets" on \
    EXTRA_PATCHES   "Apply patches to fix CP932, add EUCJP-MS" on
    ↑ コメントアウトを外して on にする
    ~
    ~
    .if defined(WITH_EXTRA_PATCHES)   ← コメントアウトを外す
    #PATCH_SITES+=  http://www2d.biglobe.ne.jp/~msyk/software/libiconv-patch.html
    #PATCH_SITES+=  ${MASTER_SITE_LOCAL}
    #PATCH_SITE_SUBDIR=     nork
    #PATCHFILES+=   ${DISTNAME:C/1\.13\.1/1.13/}-ja-1.patch.gz
    PATCHFILES+= libiconv-1.14-ja-1.patch   ← パッチファイル名にする
    PATCH_DIST_STRIP+=      -p1        ← コメントアウトを外す
    .endif                             ← コメントアウトを外す
  3. make時のチェックサムなしで強制アップグレード。
    # portupgrade -f -mNO_CHECKSUM=yes libiconv
  4. EUCJP-MS が確認できてSambaのエラーも消えました。
    # iconv -l

 

libiconv-1.14 の cp932修正, eucJP-ms追加パッチ はコメントを受け付けていません。

« 前のページ  次ページへ »

フリースペース

バナーやブログパーツなどを貼って、ご自由にお使いください。