次のページ 前のページ 目次へ

    LOADLIN 1.5 ((C) 1994 lermen@elserv.ffm.fgan.de)
     and
    Linux version: 0.99.14, 0.99.15, 1.0, 1.1.47
    (翻訳:こじまみつひろ kojima@komae.denken.or.jp)

以下に示すものは認識されるコマンドラインパラメータで、
======================================================

1. LOADLIN が解釈するもの

       ramdisk=size        (ramdisk のサイズ(KBytes))
     or
       ramdisk=size,no     (上と同じですが、ディスクを変えるように、
                            とのプロンプトは出ません)
 例:  ramdisk=1440,no

       vga=mode

2. Linux のカーネルが解釈するもの

       mem=number       (0.99pl15 以上では物理的なメモリの終り)
       root=device
       ro
       rw
       no387
       debug            コンソールに出力されるログレベルを 10 にセット
       no-hlt           起動時の HLT チェックを中止

3. init が解釈するもの

       single
       auto
       ro,rw,no387   (カーネルから渡される)

4. 各種のドライバが解釈するもの

reserve=port1,num1,...,port5,num5 # 80x86 の io ポート予約用
ether=irq,base_addr,mem_start,mem_end,dev_name # イーサネット用
hd=cyl,head,sect         # HDD 用。2 ドライブあればこれを 2 度繰りかえす
                         # 1 つめがドライブ 0 に対応
bmouse=irq               # バスマウスの IRQ の指定
max_scsi_luns=n          # (n は 1 から 8 の間)
st0x=base_address,irq    # SEAGATE controller ST01/ST02
tmc8xx=base_address,irq  # Future Domain TMC-885,TMC-950
t128=address,irq         # Trantor T128/T128F/T228
ncr5380=port,irq,dma     # Generic NCR5380 driver
aha152x=portbase,irq,scsiid,reconnect    # Adaptec AHA-152x driver
xd=type,irq,iobase,dma   # xd ハードディスク用
mcd=port,irq             # Mitsumi CD 用
sound=0x0TTPPPID, ..
sbpcd=sbport,SoundBlaster
sbpcd=LMport,LaserMate
sbpcd=SpeaFXport,SPEA

5. 環境変数になるもの

name=xxxx の形式になっているパラメータで、カーネルにもドライバにも認識
されないものは環境変数に登録されます。

LOADLIN 自身は BOOT_IMAGE=imagefile を環境変数に登録します。ユーザー自
身でその他の環境変数を利用して /etc/rc などで条件に合せた動作をさせる
ことが可能です。

==============================================================================
以下に示すものはより詳細な説明です:

LOADLIN で認識されるパラメータ:
================================

  root=device
  -----------
        device     "/dev/hda2" のようなシンボリックなデバイス名か 16 
                   進で示されるデバイスナンバー(上位バイトがメジャーナ
                   ンバーで、下位バイトがマイナーナンバー)
                   認識されるシンボリックデバイス名(とそのパーティション)
                   は以下の通り:
                   "hda", "hdb", "sda", "sdb", "sdc", "sdd", "sde",
                   "fd", "xda", "xdb"
                   
        ここには問題もあります:

        Linus は /dev/hda の後に続く数字を 16 進と解釈しています。とこ
        ろが、Slackware では Linus がしたであろう
        /dev/hda1 .. hda9 .. hdaa .. hdaf  ではなく、
        /dev/hda1 .. hda9 .. hda10 .. hda16 という番号付けになっていま
        す。

        このため、LOADLIN のバージョン 1.3 以降では、ルートデバイスを
        自ら解釈して数字でブートセクターに渡すようにしています。私の妥
        協的な命名法が、多少なりとも役にたてば、と願っています。

        私の命名法は:
        もし "/dev/hda, hdb, sda .." に続く数字が 0, 0x あるいは a..f 
        ならば 16 進数と考え、1..9 で始まっていれば 10 進数とみなしま
        す。もし、どちらにもあてはまらなければ、その文字列はそのままコ
        マンドラインへと渡されます(より新しいバージョンのカーネルではま
        た違うデバイス名を用意しているかも知れません)

        例:
        root=302
        root=0x201
        root=/dev/hda2
        root=/dev/sdaa   は root=/dev/sda10 、 /dev/sda0xa と同じ。

  ramdisk=size
  ------------

size Kbytes 単位で表した RAMDISK の容量です。ラムディスクのイメージは 
     root=/dev/fdx が指定された場合、カーネルの起動時にフロッピードラ
     イブから読みこまれます。イメージを読みこんだ後、 カーネルはラムディ
     スク(フロッピーではありません)をルートデバイスにします。(カーネル
     がロードされた後など)起動用のフロッピーディスクが不要になれば、
     LOADLIN 自身がラムディスクにコピーすべきディスクを入れるようにプ
     ロンプトを出します。

  vga=mode
  --------

mode     -3  VGA モードをユーザーに問いあわせる。 ask でも同じ
         -2  80x50 拡張 VGA モード extended でも同じ
         -1  80x25 標準モード normal でも同じ
          0  ブートプロンプトが出ている時に 0 を入れたと同じ
          .
          .
          n  ブートプロンプトが出ている時に n を入れたと同じ

ro    "ro" を指定するとルートデバイスはリードオンリーモードでマウン
        トされます(UMSDOS 用ではありません!)

rw    "rw" を指定するとルートデバイスをリード/ライト可能でマウントし
      ます

------------------------------------------------------------------------------

Parameters recognized only by the kernel:
=========================================
カーネルにのみ理解されるパラメータ

mem=number
----------

number  物理的な RAM の終りを示します。0.99.15 以上のカーネルで利用で
        き、インストールされている RAM のサイズを自動的に認識できない
        ときに使うと便利です。

root=device
-----------
device    "/dev/hda2" といったシンボリックデバイスかデバイス番号を示す数
          字(上位バイトがメジャー番号、下位バイトがマイナー番号)。認識可
          能なシンボリックデバイス名(パーティションも含めて)は:
          "hda","hdb","sda","sdb","sdc","sdd","sde","fd","xda","xdb"

          注意:1.1.47 以前のカーネルでは xda=0xC00, xdb=0xC40 だったが
                それ以降のカーネルでは    xda=0xD00, xdb=0xD40 に変更
例:
        root=302
        root=/dev/hda2

!!注意:古いカーネル(1.0.5 以前)には init/main.c に小さなバグがあります。
!!      もっとも、ほとんど問題になることはありませんが:
!!      シンボッリックデバイス名の最後("hda2")が init にオプションパラメー
!!      タとして渡されてしまい、init が "illegal option" と文句を言いま
!!      す。しかし、エラーにはならずにそのまま実行されます。
!!
!!      もっと注意すべきことは、コマンドラインの静的バッファが小さすぎる
!!      ことです(init/main.c では 80 バイトに設定されています)。このバッ
!!      ファのサイズを 512 にしてカーネルを再構築するのがいいでしょう。
!!
!!      このバグは Linux 1.0.5 以降では修正されており、"command_line" も
!!      最近のカーネルで 256 バイトがデフォルトになり、必要ならば 
!!      init/main.c の #define COMMAND_LINE_SIZE xxxx を変更することで簡
!!      単に変更することができます(上限は 2047 です)

  no387
  -----
"no387" を指定するとハードウェア浮動小数点コ・プロセッサを使用しません。    

1.1.47(より以前かも)以降では、ro,rw,no387 のオプションは init へは渡さ
れなくなりました。

次のオプションは新しく設定されたものです。

debug  コンソールに出力されるログレベルを 10 に設定します。
-----

no-hlt  起動時に HLT コマンドのチェックをしません。もし 486 
------  クローンチップを使っていれば、このオプションは*きわめて*
         有益でしょう。
------------------------------------------------------------------------------

"init" に認識されるパラメータ:
==============================

single   起動時に "シングルユーザー・モード" になります。
------

auto
----

ro,rw,no387   (1.1.47 以前のカーネル用。上記のコメントを見てください)
-----------

------------------------------------------------------------------------------
イーサネットの設定
================================

 ether=irq,base_addr,mem_start,mem_end,dev_name
 ---------------------------------------------

 irq        数字、IRQ 番号(3..15)
 base_addr  数字、IO ベースアドレス(0x280,...)
 mem_start  数字、シェアードメモリーの開始
 mem_end    数字、シェアードメモリーの終り
 dev_name   文字列
            eth0..3     all configured ethernetcards
            dl0         D-Link DE600 ポケットアダプタ
            atp0        AT-LAN-TEC (RealTek) ポケットアダプタ
            plip0..2    パラレルIP (PLIP)
            sl0..3      シリアルIP (SLIP)

  例:  ether=10,0x280,0xc8000,0xcbfff,eth0

  関係するファイル: net/inet/eth.c, drivers/net/Space.c

------------------------------------------------------------------------------

I/O ポートの予約
================

reserve=port1,num1,...,port5,num5
---------------------------------

 portn     対象となる IO ポートの範囲番号
 numn      その番号で予約するアドレス(これらのアドレスは "ioport_register" 
           で "1" にセットされる)

関連するファイル:  kernel/ioport.c(v1.2 以降では arch/i386/kernel/ioport.c)
------------------------------------------------------------------------------

ルートデバイスのハードディスクパラメーターの設定
=================================================

  hd=cyl,head,sect
  ---------------
# 注意:もし 2 つのドライバを持っていれば、hd= パラメータを 2つ 書くこ
# と。1 つめがドライブ 1 に、2 つめがドライブ 2 に対応する。
# 例:loadlin zimage hd=1001,15,17 hd=989,15,56 root=/dev/hdb2 ro
# これは私のマシンの例ですが、実際には不要です。もし Linux が BIOS か
# ら正しくドライブのパラメータを取得できないときにのみ必要です。

関係するファイル: drivers/block/hd.c
設定:        CONFIG_BLK_DEV_HD

------------------------------------------------------------------------------
バスマウス用の IRQ の設定:
==================================
  bmouse=irq
  ----------

関係するファイル:drivers/char/busmouse.c
設定:             CONFIG_BUSMOUSE

------------------------------------------------------------------------------
SCSI コントローラー用のパラメーター:
====================================
  max_scsi_luns=n                 lun の最大値(1 から 8 までの間)

  st0x=base_address,irq           SEAGATE ST01/ST02 用の設定

  tmc8xx=base_address,irq         Future Domain TMC-885, TMC-950 用

  t128=address,irq                Trantor T128/T128F/T228 用

  ncr5380=port,irq,dma            NCR5380 用

  aha152x=portbase,irq,scsiid,reconnect     Adaptec AHA-152x 用

  関連ファイル: drivers/scsi/seagate.c, t128.c, g_NCR5380.c, aha152x.c

  設定:         CONFIG_SCSI_SEAGATE, CONFIG_SCSI_T128,
                 CONFIG_SCSI_GENERIC_NCR5380, CONFIG_SCSI_AHA152X

------------------------------------------------------------------------------
SCSI テープ用のパラメータ:
=========================

  st=buffer_size,write_threshould,max_buffers

  buffer_size        Kbyte 単位で示したテープバッファのサイズ(ST_BLOCK_SIZE)
  write_threshould  バッファを書きだすまでの大きさ(buffer_size より小
                    さくすること)
  max_buffers        予約しておくバッファの数

  関連ファイル: drivers/scsi/st.c
  設定:         CONFIG_CHR_DEV_ST

------------------------------------------------------------------------------
XT ハードディスコントローラ(DTC 5150X)用のパラメータ:
=====================================================

  xd=type,irq,iobase,dma
  ----------------------

  関連ファイル: drivers/block/xd.c
  設定:         CONFIG_BLK_DEV_XD

------------------------------------------------------------------------------

Mitsumi 製の CDROM ドライバ用のパラメータ:
==========================================

  mcd=port,irq
  ------------

  関連ファイル:drivers/block/mcd.c
  設定:        CONFIG_MCD

------------------------------------------------------------------------------
サウンドカード用の設定:
========================

  sound=0x0TTPPPID, ..
  ----------------

全ての値は 1 つの longint 値に埋めこまれる。上の例では、16 進のフォー
マットになっており、それぞれ 16 進数で記述される。

  TT  サポートしているカードのタイプ
      設定されているカードへのインデックス。もし全てのカードが設定され
      ていれば(普通あり得ない設定だが)、以下の順番になっている。
                        Roland MPU-401
                        Gravis Ultrasound
                        ProAudio Spectrum
                        SoundBlaster
                        SoundBlaster 16
                        SB16 MPU-401 (SB16-MIDI port)
                        AdLib

  PPP        使用するポートのアドレス

  I          IRQ

  D          DMA Channel

  関連ファイル: drivers/sound/dev_table.h,dev_table.c
  設定:         CONFIG_SOUND

------------------------------------------------------------------------------

IDEタイプ の CD-ROM(Kotobuki/Matsushita/Panasonic)用のパラメータ
=================================================================

  sbpcd=sbport,SoundBlaster
  ------------------------
  sbpcd=LMport,LaserMate
  ----------------------
  sbpcd=SpeaFXport,SPEA
  ----------------------

  sbport       サウンドブラスタ用のドライバが使うベースアドレス + 0x10
               (0x230 なら 0x220+0x10 を意味している)
  LMport       MPU タイプのポートで、0x300 か同等のアドレス
  SpeaFXport   SpeaFX カードのベースアドレス

  関係ファイル: drivers/block/sbpcd.c
  設定:         CONFIG_SBPCD

------------------------------------------------------------------------------

次のページ 前のページ 目次へ