トップ 一覧 検索 ヘルプ RSS ログイン

BsdTroubleの変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
!!FreeBSDトラブル集

!カーネル関連
::5および6系列
*キーボードの抜き差し
/boot/device.hints で
 hint.atkbd.0.flags="0x2"
にする。

*ACPIをOFF, APMをON
/boot/device.hints で
 hint.acpi.0.disabled="1"
 hint.apm.0.disabled="0"

*CD/DVDドライブのDMA転送有効
/boot/loader.conf で
 hw.ata.atapi_dma="1"

*サウンドデバイス(CMIチップ)有効
/boot/loader.conf で
 snd_cmi_load="YES"

::症状
天地創造の後、ブート時に
 ata1-master : FAILURE ATAPI_IDENTIFY timed out
というようなメッセージが出てこける。
::原因
天地創造により /boot/device.hints がデフォルトの
 hint.acpi.0.disabled="0"
 hint.apm.0.disabled="1"
となってしまたが、/etc/rc.conf では
 apm_enable="YES"
となっていたことが一因のようだ。
RAIDにしていて、ATA0にHDDが不在なのも関係があるかもしれない。
とりあえず、My Machine のACPIは腐ってるみたいなので無効にして、
APMのほうを有効にしておく。





!ports関連
::portupgradeプロブレム
missing key: categories: Cannot read the portsdb!
/usr/local/lib/ruby/site_ruby/1.8/portsdb.rb:567:in `open_db': database file error (PortsDB::DBError)
...
云々というエラーで portupgrade できない。
::原因
2007/02〜2007/03 の間にportsツリーのディレクトリ構成
が変更されたらしい。
/usr/ports/sysutils/portupgrade 
-> /usr/ports/ports-mgmt/portupgrade
古い方を make deinstall 、新しいのをインストールして解決。

アップデート後は
 pkgdb -L
して依存関係修正
!X関連

::症状
ローカルな起動スクリプトが二重起動する
::対処
xorg-7.2の移行により/usr/localに統一されたのに伴い、
/usr/X11R6 は /usr/local へのリンクになった。
よって、/etc/rc.conf に
 local_startup="/usr/local/etc/rc.d/"
を追加しないと、同じスクリプトを二回起動してしまう。

::症状
XFree86 から Xorg への乗り換えで、X-client の一部が、
 Warning: Unable to load any usable ISO8859 font
 Error: Aborting: no font found
というエラーを吐いて、起動しない。
::対処
.Xdefaults において、
 *font:-alias-fixed-medium-r-normal--14-*-*-*-*-*-iso8859-1
というように明示的に Default font を指定してやる。

::症状
Xorg-6.9 でマウスのホイールが効かない
::対処
普通は moused のフラグとして /etc/rc.conf で
 moused_flags="-z 4"
としてやるのだが、Xorg-6.9だとこれがNG。
このフラグをコメントアウトして、/etc/xorg.conf で
 Section "InputDevice"
  Option "ZAxisMapping" "4 5"
 EndSection
となっていれば良い。
!WWWブラウザ関連
*linuxpluginwrapper の設定
/etc/libmap.conf で
 # [ALPHA SUPPORT] Flash7 with Mozilla
 [/usr/local/lib/npapi/linux-flashplugin/libflashplayer.so]
 libpthread.so.0                 libpthread.so.1
 libdl.so.2                      pluginwrapper/flash7.so
 libz.so.1                       libz.so.2
 libm.so.6                       libm.so.3
 libc.so.6                       pluginwrapper/flash7.so
と設定。
Flash7を有効にするには、パスが変わっているので、
 ln -s /usr/local/lib/npapi/linux-flashplugin/libflashplayer.so 
   /usr/X11R6/lib/browser_plugins/
 ln -s /usr/local/lib/npapi/linux-flashplugin/flashplayer.xpt 
   /usr/X11R6/lib/browser_plugins/
とリンクを張る.
!印刷関連

::症状
CUPSでfoomatic-ripフィルタがトラぶる

::原因&対処
gs コマンドの出力として/dev/fd/3 がデフォルトになっているが、
devfs移行後のFreeBSDではfdは2までしかない。catを使った代替
スクリプトはバギー
そこで、/etc/fstab に
 fdescfs /dev/fd fdescfs rw 0 0
を追加して、3以降のfdを動的に生成できるようにしたら解決!
(中々気付かなかったよ・・・・)



::症状
EPSON のカラーレーザプリンタLPS6500(eplaserドライバ)でA3印刷できない。

::対処
eplaserのドライバのソースで定義されているA3のサイズが842X1190なのに、Ghostscriptのgs_statd.psでは842X1191になっていた。
gs_statd.psをドライバの方に合わせたらOK。
デバイスとしては、lp9800cを指定してやって問題ない。
オプションに、-dDuplex を付けてやれば両面印刷できる。

::症状
EPSON のカラーレーザプリンタLPS5000(foomatic-rip)で印刷できない。

::対処
psutils のプログラムが適切に利用できない状態になっている。
( http://avasys.jp/product/linux_driver/question/2009/12/qa00073.php )

pstolps5000.sh というスクリプトの中で
 -rotator="" && test "$useRotator" = "on" && rotator="| pstops -q $pstops1 $pstops2"
 +rotator="" && test "$useRotator" = "on" && rotator="| /usr/bin/pstops -q $pstops1 $pstops2"

と絶対パス指定してやる。

また各スクリプトのシェル指定を
 -#!/bin/bash
 +#!/usr/local/bin/bash
とするのを忘れないこと。
!POSIX thread 関連
::症状
thread libraryに関して、古いlibc_rと新しいlibpthreadの混在が問題になった。spinlockほにゃららというエラーを吐いて死ぬアプリが出てくる
::対処
libraryやアプリの完全な入れ替え。
一時しのぎとしては、/etc/libmap.conf に
 libc_r.so.5		libpthread.so.1
 libc_r.so		libpthread.so
を追加

![OpenOffice|http://ja.openoffice.org/] 関連
::プリンタ設定
/usr/local/openoffice.org2.0.0/program/spadmin
で行う。(フォントの追加も)

::症状
portsでOpenOffice.org-2.0.0のビルドを試みたが途中で止まる
::対処
ぐぐってみると、mozilla sub-portの問題みたい。
 make LOCALIZED_LANG=ja -DWITH_GPC -DWITHOUT_JAVA 
 -DWITH_CCACHE -DWITHOUT_MOZILLA build
という感じで、WITHOUT_MOZILLAにしてコンパイル成功。

::症状
上のオプションでコンパイルしたのは、Fileダイアログで日本語が使えないために、拡張子指定がままならない&ヘルプが無い、という問題が生じた。
::対処
 make LOCALIZED_LANG=ja -DWITH_CCACHE -DWITHOUT_MOZILLA 
 -DWITH_TTF_BYTECODE_ENABLED build
として、JAVAを有効にしてWITH_TTF_BYTECODE_ENABLEDオプションをつけた。

!その他

::症状
CDライター K3b がドライブを認識しない

::対処
SCSI のCDドライブ cd0 が前提なので、ATAPIの場合は
device atapicam をカーネルに仕込んでおく

/dev の cd0, acd0, pass0, xpt0 のパーミッションが
書き込み可になっている必要がある。
ユーザがwheel, operatorに登録されているなら、
/etc/devfs.conf に
 perm   acd0    0660
 perm   cd0    0660
 perm   pass0    0660
 perm   xpt0    0660
として、/etc/devfs restart
実際に書き込むには、cdrecord や cdrdao なども
setuid しておく必要がある