FreeBSD QandA 2002年1月26日 更新分

QandA
QandA Project
登録・更新 QandA 一覧

管理番号 1069 (新規) 更新履歴
Q. sendmail の aliases に設定したメールアドレス宛にメールを送付した時に、
   alias に発信者が含まれていても発信者本人には配信されません。
   これを発信者にも配信されるようにすることは出来ますか。

A. sendmail の MeToo オプションが False になっている為、このような挙動に
   なっています。(デフォルトは False です)。他のオプションと共に
   sendmail(8) に説明されているので、一読しておきましょう。

   sendmail.cf で設定する方法、コマンドラインで指定する方法があります。
   その設定で使い続けたい場合は前者の方がよいでしょう。

   (1) sendmail.cf で設定する。
   (1a) cf を利用する場合は、sendmail.mc に
           define(`confME_TOO', `True')dnl
     と記述します。

   (1b) 直接 sendmail.cf を編集する場合、
           O MeToo=True
     と記述します。標準の sendmail.cf だと
           #O MeToo=True
     とコメントアウトされているので、外せばよいでしょう。
     また、
           O MeToo=False
     または短い記述方法を用いて
           OmFalse
     となっている場合は、この部分を上記のように変更しましょう。

   (1c) CF を利用する。
     CF では confME_TOO で設定します。

   (2) sendmail のコマンドラインでは sendmail(8) に記載の通り、
           -O MeToo=True
     とオプションを指定出来ます。


管理番号 443 (更新) 更新履歴
Q. ports をインストールしようとして make を実行すると、
      fetch: hogehoge-1.1.tar.gz: ......
      >> Couldn't fetch it - please try to retrieve this
      >> port manually into /usr/ports/distfiles/ and try agein.
   となり、インストールできません。

A. Makefile の中に書かれているソースファイルを、ネットワークを使ってダウ
   ンロードしようとしたが失敗した、というエラーメッセージです。この原因は
   主に、ファイアウォール等が存在するか、ファイルが指定された URL に無い
   事が考えられます。

   A1. ファイアウォール

     あなたのマシンがファイアウォール (firewall) の中にあるために、外部へ
     のアクセスに特定の制限が設けられている場合があります。その制限はファ
     イアウォールの構成と設定などにより異なりますが、fetch(1) の設定を変
     えることで回避できるかもしれません。注意点として FreeBSD 4.1-RELEASE 
     から、fetch(1)pkg_add(1)fetch(3) ベースに書き直されています
     ので、それまでの ftpio(3) ベースと仕様が異なる点があることです。

     1. passive モードで FTP する時
       # env FTP_PASSIVE_MODE=ON make

     2. HTTP proxy サーバを利用する時
       # env HTTP_PROXY="http://hostname[:port]" make  (libfetch ベース)
       # env HTTP_PROXY="hostname[:port]" make         (libftpio ベース)

       FTP_PROXY が未設定で HTTP_PROXY が設定されていると、`ftp://...' と
       いう URL でも HTTP proxy サーバ経由でダウンロードします。

     3. FTP proxy サーバを利用する時
       # env FTP_PROXY="ftp://hostname[:port]" make    (libfetch ベース)
       # env FTP_PROXY="hostname[:port]" make          (libftpio ベース)

     hostname[:port] の部分は、例えば proxy.foo.bar.co.jp:8080 などと指定
     します。FTP proxy と HTTP proxy を併用する場合は、両方の環境変数を設
     定してあげます。もっと凝った設定が必要なら、詳細はそれぞれの man ペー
     ジを読んでください。

     上記のように実行してうまくいったら、~/.cshrc や ~/.profile に環境変
     数の設定を行なうか、login.conf(5) に設定してやればシステム全体に効果
     があります。

   A2. ファイルが指定された URL に無い

     あなたの使っている ports のバージョンが古いため、既に配布ファイルが
     置いてないのかもしれません。例えば、ports は hogehoge-1.1.tar.gz を
     ダウンロードしようとしたけれど、指定された場所には最新バージョンの 
     hogehoge-1.2.tar.gz しか置いてない、ということが考えられます。

     そのときはどこかからファイルを取ってきて、/usr/ports/distfiles/ に
     置き、改めて make を行なってください。ファイルを
       LYCOS FTP Search サイト <URL:http://ftpsearch.lycos.com/>
     などで探し、
       # cd /usr/ports/distfiles; fetch ftp://foo.bar.com/pub/hogehoge-1.1.tar.gz
     でダウンロードするのが簡単です。


管理番号 2058 (新規) 更新履歴
Q. i810, i815 グラフィックチップのマシンに XFree86 4.x 入れたところ、
   XFree86 -configure すると、画面が真っ黒になり、ハングアップしたよう
   になり、動作しません (core dump することもあるようです)。/var/log 
   に記録されたログを見たところ、ddc のところで止まっているようです。

      (II) Loading sub module "ddc"
      (II) LoadModule: "ddc"
      (II) Loading /usr/X11R6/lib/modules/libddc.a
      (II) Module ddc: vendor="The XFree86 Project"
              compiled for 4.1.0, module version = 1.0.0
              ABI class: XFree86 Video Driver, version 0.4

A. <URL:http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/x-config.html>
   に対処方法があります。要点は以下のとおりです。

    1. /boot/loader.conf に以下の行を追加して再起動します。

      agp_load="YES"

    2. デバイスノードがあるか確認し、なければ以下のように作成します。

      # cd /dev
      # sh MAKEDEV agpgart

    3. XFree86 -configure を実行し、XF86Config の雛形を作ります。画面が切
       り替わり、何も表示されないままハングアップしたようになる場合は、
       [Ctrl]+[Alt]+[Del] で FreeBSD をリブートしてください。この場合でも
       カレントディレクトリに XF86Config.new というファイルができているで
       しょう。

    4. この XF86Config.new の Device セクションに Option NoDDC を追加しま
       す。XFree86 -configure で XF86Config を作成した場合は、先の 
       handbook にしたがって、さらに Monitor セクションに Horizsync,
       VertRefresh を、Screen セクションに Depth, Modes を設定します。
       作成した XF86Config に問題がないか確認します。

       XFree86 -xf86config XF86Config.new

       X が立ち上がり、グレーのバックにマウスポインタが表示されます。マウ
       スを動かして問題なければ [Ctrl]+[Alt]+[Backspace] で終了し、
       XF86Config.new を /etc/X11/XF86Config としてコピーすれば完了です。
       より細かく設定するには /usr/X11R6/lib/X11/XF86Config.eg にサンプル
       がありますので、参考にするといいでしょう。

       なお、XFree86 -configure がうまく動作しないような環境では、
       xf86cfg -textmode を試してみると良いかもしれません。


管理番号 464 (更新) 更新履歴
Q. コンソールから root でログインしようとしましたが、パスワードを忘れて
   しまいログイン出来ません。どうしたら良いでしょうか?

A. root のパスワードを忘れてしまうなど言語道断です。手始めに security(7) 
   を読むなどして、ちゃんとセキュリティに関して勉強し、ルートの心を学んで
   ください。最近ではインターネットに常時接続されるマシンも多くなっていま
   すから、もし悪意のある攻撃を受けたらひとたまりもないでしょう。これから
   は絶対に忘れないようにするということで、以下に対処方法を説明します。

   まずマシンが動作中であれば、なんとかしてシステムを止めなければなりませ
   ん。shutdown(8) コマンドや CTRL+ALT+DEL キーが使えれば安全にリブートで
   きますが、どちらも不可能であれば、sync(8) コマンドを2,3回タイプしてか
   ら、リセットまたは電源を切るようにしてください。もし sync もできないよ
   うなら…、神様にお祈りするしかないでしょう。

   次にパスワードの変更方法ですが、/etc/ttys で console が `insecure' に
   設定されていると、シングルユーザ・モードのシェルが起動される前に、root
   のパスワード入力を求められてしまいお手あげなので、fixit floppy などを
   利用することになります。デフォルトのままなら console は `secure' です
   ので、シングルユーザ・モードに落して passwd(8) コマンドを使うだけです。

    # If console is marked "insecure", then init will ask for the root password
    # when going to single-user mode.
    console none                            unknown off secure
                                                        ^^^^^^ ここを確認

   1. console が `secure' の場合 (FreeBSD のデフォルト)

    (1) シングルユーザ・モードに落します。

        `shutdown now' でシングルユーザに落します。それができないならリブー
        トして次のような loader(8) のメッセージが表示されたら、スペースバー
        を叩いて autoboot を停止させ、コマンドプロンプトから `boot -s' と
        タイプします。

        Hit [Enter] to boot immediately, or any other key for command prompt.
        Booting [/boot/kernel/kernel] in 7 seconds...

        FreeBSD 2.2.x では "boot:" の表示が出たら "-s [RET]" と入力します。

    (2) "Enter root password, or ^D to go multi-user"
        と表示される場合は、2. の方法を試してください。
        "Enter pathname of shell or RETURN for /bin/sh:"
        と表示されたら、そのままリターンキーを押して次へ進みます。

    (3) 念のためファイルシステムの整合性をチェックします。
        # fsck -p

        システムを強制リセットした場合、ファイルシステムが損傷を受ける可
        能性があります。重大な不整合が発見されたとき `fsck -p' はエラーで
        終了しますので、エラーが報告されたパーティションに対し、個別に 
        fsck(8) をかける必要があります。

    (4) ファイルシステムをマウントします。
        # mount -u /
        # mount -a -t ufs

    (5) ここで、
        # passwd
        として root のパスワードを設定して下さい。

    (6) root のパスワード設定が終わったら
        # exit
        して下さい。OS が起動されます。

   2. console が `insecure' の場合

     要点は別のシステムからブートすることです。その際、厳密に FreeBSD の
     バージョンが同じでなくともかまいませんが、できるだけ同じものを使うこ
     とを勧めます。もし、別の HDD, スライスからブート可能であれば、それを
     使うのも良いですし、"live filesystem" CD/DVD や fixit floppy を使う
     のでもかまいません。ここでは fixit floppy を使うものとして説明します。

   (1) kern.flp, mfsroot.flp でインストーラを起動し、メニューから Fixit 
       モードに入ります (Main Menu -> Fixit -> Floppy または CDROM)。
       マシン構成によっては、kern.flp のカーネルをカスタムカーネルに差し
       替えておく必要があるかもしれません。

   (2) 必要とするデバイスファイルを作成します。既に /mnt2/dev に存在する
       なら、それを使ってもかまいません。

       # ln -s /mnt2/etc/group /etc
       # ln -s /mnt2/dev/MAKEDEV /dev
       # cd /dev && sh MAKEDEV da0s2a

       FreeBSD のバージョンによっては、MAKEDEV には修正が必要です。これで
       エラーとなるようなら次のようにしてみてください。

       # sed 's%/sbin/mknod%/mnt2/stand/mknod%' /mnt2/dev/MAKEDEV > /dev/MAKEDEV

   (3) ファイルシステムをマウントします。

       # fsck -p /dev/da0s2a || fsck /dev/da0s2a
       # mount /dev/da0s2a /mnt

       まずルートパーティションを /mnt にマウントし、/usr パーティション
       を /mnt/usr へというふうに階層的にマウントしてあげます。fixit.flp 
       では /usr が必要ですが、CDROM が使える場合はルートだけで足ります。

   (4) root のパスワードフィールドを空にします。
       # vi /mnt/etc/master.passwd

       root:$1$xxxxx:0:0::0:0:Charlie &:/root:/bin/csh
            ^^^^^^^^ ここを削除

   (5) パスワードデータベースを再構築します。

       # ln -s /mnt/usr/lib* /usr
       # /mnt/usr/sbin/pwd_mkdb -p -d /mnt/etc /mnt/etc/master.passwd

       fixit.flp には pwd_mkdb(8) が入ってないので、共有ライブラリを準備
       してシステムのものを利用します。もし CDROM を使えるときは、単に次
       のように実行すれば良いでしょう。 

       # pwd_mkdb -p -d /mnt/etc /mnt/etc/master.passwd

   (6) 終了。あとでパスワードを再設定するのを忘れずに。
       # reboot


管理番号 1299 (更新) 更新履歴
Q. XEmacs (Emacs, Mule) を使っていますが SHIFT+SPACE や SHIFT+o を押すと、
   本来のキーバインドが無視され、kinput2 の入力ウィンドウがポップアップ
   してしまいます。

A. この問題は XEmacs (Emacs, Mule) のキーバインドが kinput2 に乗っ取られる
   ことによって生じます。XIM を無効にすればこの問題を回避できます。
   お勧めは

      XEmacs (Emacs, Mule) を起動するときに、環境変数 XMODIFIERS を 
      @im=none (none は実在しないもの) にしておく。

   です。XEmacs の場合なら具体的には 

      $ XMODIFIERS=@im=none xemacs &        (sh系)
      % env XMODIFIERS=@im=none xemacs &    (csh系)

   のように起動します。これを alias にしておくか /usr/local/bin/xemacs という
   シェルスクリプトにしておくと便利でしょう。XEmacs でなく Emacs や Mule を
   使用している場合は xemacs の部分を emacs や mule に読み替えてください。

   確認環境: 4.3-RELEASE とその ports/packages
             ja-xemacs-canna-21.1.14
             ja-kinput2-canna-3.0

             3.1-RELEASE とその ports/packages
             ja-mule-wnn[46]-2.3
             ja-kinput2-wnn[46]-2.0.4

   FreeBSD 固有の問題ではありません。
   X サーバは、上記環境のとおりで、XEmacs (Emacs, Mule) を X クライアント
   として Solaris から起動した場合も、ja 環境で起動すれば同様の現象が
   起きます。


管理番号 2077 (新規) 更新履歴
Q. 起動時に時刻を合わせるにはどうしたらいいですか?

A. 起動時に ntpdate で時刻補正を行いましょう。

   /etc/rc.conf に
     ntpdate_enable="YES"
     ntpdate_flags="xxx.xxx.xxx.xxx"
   の二行を追加しましょう。


管理番号 366 (更新) 更新履歴
Q. Webブラウザからユーザーの追加や削除、更新を行なえるようなツールはあ
   るでしょうか。

A. Ports Collection に入っているものとしては、 ports/sysutils/webmin
   があります。
    <URL:http://www.webmin.com/webmin/>


管理番号 571 (更新) 更新履歴
Q. FreeBSD で CD-R を焼くことはできますか?

A. お使いの CD-R のインターフェースによって、方法が異なります。

   1. ATAPI CD-R

     FreeBSD 4.0-RELEASE 以降に含まれている burncd(8) を使います。

   2. SCSI CD-R

     Cdrecord (sysutils/cdrtools) というプログラムがあります。

     Cdrecord では、Sony 製や YAMAHA 製などの国内で流通している
     メジャーなドライブが使えます。使用可能なドライブの情報などは、
       <URL:http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/cdrecord.html>
     から行えます。

     この他に cdrdao というプログラムもあるようです。

     なお、FreeBSD 3.*-RELEASE 以前に含まれている worm ドライバで
     使えるドライブは、
       Phillips CDD 522
       PLASMON RF4100
       HP 4020i
     の3種類です。ただし、上記ドライブを国内で入手するのは非常に困難です。

   また、自作の CD-ROM を作成するためには、CD-ROM のファイルシステムを
   作成する mkisofs (sysutils/mkisofs) などが必要です。


管理番号 2063 (更新) 更新履歴
Q. セキュリティに関する情報はどうやって入手すればよいですか?

A. セキュリティホールが見付かり次第、問題点と対処法をまとめた「FreeBSD
   Security Advisory」が announce-jp@jp.FreeBSD.org に流されます 
   (announce-jp に流れたメールは、FreeBSD-users-jp@jp.FreeBSD.org 参加者
   にも配送されます)。

   過去の Advisory は以下のサイトを参照して下さい。

     FreeBSD Security Information (英語)
        <URL:http://www.FreeBSD.org/security/>

     上記ページの日本語訳。
        <URL:http://www.jp.FreeBSD.org/www.FreeBSD.org/ja/security/index.html>
          ただし和訳作業が必要なため、最新の情報を得たい場合は
          本家のページを見ましょう。

   また、CERT 関連の情報もチェックしておくとよいでしょう。

     CERT Advisory
        <URL:http://www.cert.org/advisories/>
     CERT Advisory 邦訳版
        <URL:http://www.lac.co.jp/security/intelligence/CERT/index.html>
     CERT Advisory 迅速和訳計画
        <URL:http://www.reasoning.org/jp/cert/>


   その他、以下のサイトから情報収集をすることをお勧めします。

     セキュリティホール memo。
        <URL:http://www.st.ryukoku.ac.jp/~kjm/security/memo/>
     セキュリティアンテナ。セキュリティ関連のサイトの更新状況チェック。
        <URL:http://www.st.ryukoku.ac.jp/~kjm/security/antenna/>
     incidents.org (英語)
        <URL:http://www.incidents.org/>
     JPCERT/CC レポート (週刊)
        <URL:http://www.jpcert.or.jp/wr/>
     IPA 脆弱性関連情報 (随時更新)
        <URL:http://www.ipa.go.jp/security/news/news.html>


   また、以下のメールマガジンを購読するのもよいでしょう。

     Scan Security Wire 有料版 (週1回)
     Scan Security Wire 無料版 (有料版のダイジェスト)
        <URL:http://www.netsecurity.ne.jp/mag/index.html>
     Scan Daily Express (有料。月〜金 日刊)
        <URL:http://www.vagabond.co.jp/vv/m-sdex.htm>


QandA
QandA Project
登録・更新 QandA 一覧