日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。
4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.3-RELEASE-K, 13.0-RELEASE-K から 13.2-RELEASE-K は、全翻訳済み)
13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。
Table of Contents
BSDINSTALL(8) FreeBSD システム管理者マニュアル BSDINSTALL(8) 名称 bsdinstall -- システムインストーラ 書式 bsdinstall [options] [target] [...] 解説 bsdinstall は、インストールメディア、例えば、CD-ROM、からのシステムセット アップと、VM イメージと jail を準備するためのライブ (live) システムの両方 に対して、新しいシステムのインストールのために使用されます。 make(1) のように、bsdinstall は、引数としてターゲットとターゲットの指定可 能なパラメータを取ります。引数なしで呼び出されるなら、順々に他のものを呼 び出して、標準の対話式インストールを提供する auto ターゲットを呼び出しま す。スプリプト化されたインストールを実行するためには、インストールスクリ プトによって、これらのサブターゲットを別々に呼び出すことができます。 オプション bsdinstall は、すべてのターゲットに対してグローバルである、次のオプション をサポートしています: -D file インストールのログファイル (BSDINSTALL_LOG を上書きする) のパス を与えます。BSDINSTALL_LOG の詳細については、環境変数を参照して ください。 ターゲット 次のターゲットのほとんどは、インストーラのスクリプトを書くためにだけに役 に立ちます。対話的な使用のために、ほとんどのユーザは、auto, jail と script ターゲットだけに興味があるでしょう。 auto ディスクのパーティショニングを含む標準の対話式インス トールを実行します。 jail destination jail(8) での使用に適した、destination で新しい chroot システムをセットアップします。一般的に、振る舞いは、 ディスクのパーティショニングとネットワークセットアップ が、スキップされ、カーネルが新しいシステムにインストー ルされないことを除いて、auto と同様です。 script script script でインストールのスクリプトを実行します。このター ゲットに関する詳細については、スクリプト記述 (SCRIPTING) を参照してください。 keymap 現在制御されている TTY が syscons(4) または vt(4) コン ソールであるなら、現在の keymap を設定するためにユーザ に問い合わせ、新しいシステムの rc.conf に結果を保存しま す。 hostname 新しいシステムのホスト名についてユーザにプロンプトを出 し、新しいシステムの rc.conf に結果を保存します。また、 BSDINSTALL_CONFIGCURRENT が設定されているなら、現在のシ ステムのホスト名を設定します。 netconfig 新しいシステムの rc.conf と resolv.conf に結果を保存 し、(最初に、無線インタフェースで wlanconfig を呼び出 し) ネットワークインタフェースを対話的に設定します。ま た、BSDINSTALL_CONFIGCURRENT が設定されているなら、マッ チする現在のシステムのネットワークインタフェースを設定 します。 autopart 単一のディスクのインストールのためにインストーラの対話 的なガイドを行うディスクパーティショナを提供します。デ フォルトは、UFS です。 bootconfig Detects an appropriate partition and installs UEFI boot loader files. zfsboot 代替の ZFS のみの自動的な対話型のディスクパーティショナ (partitioner) を提供します。/tmp, /usr, /usr/home, /usr/ports, /usr/src と /var のための個別のデータセット で単一の zpool を作成します。オプションで、ディスクを暗 号するために geli(8) をセットアップすることができます。 partedit sade(8) と同一のインタフェースでインストーラの対話型の 手動ディスクパーティショナを供給します。UFS、ZFS と FAT ファイルシステムと同様に複数のディスクをサポートしま す。ZFS は、パーティションごとに 1 つのプールとデータ セットでセットアップされます。 scriptedpart parameters autopart と partedit のようにディスクをセットアップしま すが、parameters で指定されたディスクのセットアップに 従って非対話式に行います。各ディスクの設定は、3 つの部 分の引数によって指定されます: disk [scheme] [{partitions}] 複数のディスクのセットアップは、セミコロンによって区切 られます。disk 引数は、(削除される) 操作するディスクを 指定し、一方、scheme 引数は、ディスクに適用する gpart(8) パーティションのスキームを指定します。scheme が指定されなければ、scriptedpart は、利用者のプラット フォームでデフォルトのブート可能なスキームを適用しま す。また、partitions 引数は、オプションで、disk をパー ティション化する方法を指定します。それは、中括弧で囲ん だ作成するパーティションのコンマで区切られたリストから 成ります。各パーティションの定義は、次の形式を取ります size type [mount point] size は、バイト単位 (K、M と G の接尾辞は、それぞれ、キ ロバイト、メガバイトとギガバイトを指定するために付け加 えることができます) で作成するパーティションのサイズを 指定し、一方、auto キーワードによって、パーティション は、すべてのディスクの残りの空間を取ります。type オプ ションは、gpart(8) ファイルシステムのタイプ、例えば、 freebsd-ufs, freebsd-zfs または freebsd-swap、を選択し ます。オプションの mount point 引数は、作成されたパー ティションがインストールされたシステムでマウントされる 場所を設定します。使用例として、一般的な呼び出しは、次 のように見えます: bsdinstall scriptedpart ada0 { 20G freebsd-ufs /, 4G freebsd-swap, 20G freebsd-ufs /var, auto freebsd-ufs /usr } 同じディスクで (autopart が使用されているように) デフォ ルトをパーティション化を使用するためにより短い呼び出し は、次の通りです: bsdinstall scriptedpart ada0 mount BSDINSTALL_CHROOT の下で autopart, partedit または scriptedpart によって以前に設定されたファイルシステムを マウントします。 distfetch BSDINSTALL_DISTSITE から BSDINSTALL_DISTDIR に DISTRIBUTIONS の配布を取って来ます。 checksum 配布マニュフェストに反対して DISTRIBUTIONS でリストされ た配布のチェックサムを検証します。 distextract DISTRIBUTIONS でリストされた配布を BSDINSTALL_CHROOT に 抽出します。 rootpass 対話形式で、ルートのユーザのパスワードを設定するために 新しいシステムで passwd(1) を呼び出します。 adduser 対話形式で、新しいシステムで adduser(8) を呼び出しま す。 time 対話形式で、新しいシステムの時間、日付とタイムゾーンを 設定します。 services システム起動時に始めるシステムデーモンのためにユーザに 問い合わせ、結果を新しいシステムの rc.conf に書き込みま す。 entropy /dev/random から少量のデータを読み込み、新システムの ルートディレクトリのファイルに、それを格納します。 config 新しいシステムで新しいシステムのための設定ファイル (例 えば、netconfig などによって生成された rc.conf(5) の断 片) をインストールします。 環境変数 次の環境変数は、インストールプロセスの種々な状況を制御します。多くは、イ ンストールの間に内部的に使用され、ほとんどのインストールシナリオのために 妥当なデフォルト値があります。他のものは、様々な対話的なユーザプロンプト によって設定され、スクリプトを作成するか、またはインストーラをカスタマイ ズするとき、有効に上書きすることができます。 DISTRIBUTIONS インストールする配布 (例えば、"base.txz kernel.txz ports.txz") の組。デフォルト: unset PARTITIONS システムがインストールされているディスクのパーティ ショニング。形式の詳細については、「ターゲット」セク ションの scriptedpart を参照してください。デフォル ト: unset BSDINSTALL_DISTDIR 配布ファイルが置かれる (または、それらがダウンロード されるべきである) ディレクトリ。デフォルト: ``/usr/freebsd-dist'' BSDINSTALL_DISTSITE それらが BSDINSTALL_DISTDIR によって定義されたディレ クトリにまだ存在しないなら、配布ファイルがダウンロー ドされる URL。これは、アーキテクチャとリリース名を含 むファイルへのフルパスであるべきです。FreeBSD ミラー のプロンプトを出すほとんどのターゲット (例えば、auto と jail) は、この変数が環境で既に定義されているな ら、そのステップをスキップします。例: ftp://ftp.freebsd.org/pub/FreeBSD/releases/powerpc/powerpc64/9.1-RELEASE BSDINSTALL_CHROOT 配布ファイルがアンパックされるべきであるディレクトリ と新しいシステムのルートファイルシステムがマウントさ れるべきであるディレクトリ。デフォルト: ``/mnt'' BSDINSTALL_LOG インストールのためのログファイルへのパス。デフォル ト: ``/tmp/bsdinstall_log'' BSDINSTALL_TMPETC config ターゲットが実行されるまで、新しいシステムの /etc のためのファイルが格納されるディレクトリ。この ディレクトリがまだ存在していないなら、作成されます。 デフォルト: ``/tmp/bsdinstall_etc'' BSDINSTALL_TMPBOOT config ターゲットが実行されるまで、新しいシステムの /boot のために予定されたファイルが格納されるディレク トリ。このディレクトリがまだ存在しないなら、作成され ます。デフォルト: ``/tmp/bsdinstall_boot'' ZFSBOOT_POOL_NAME 基本システムを含んでいるプールの名前。デフォルト: ``zroot'' ZFSBOOT_POOL_CREATE_OPTIONS 基本システムのプールを作成するとき、使用されるオプ ション。各オプションは、考慮に入れる -O フラグが続か なければなりません、または、プールは、コマンド zpool を使用してエラーのために作成されません。デフォルト: ``-O compress=lz4 -O atime=off'' ZFSBOOT_BEROOT_NAME ブート環境の親のデータセットの名前。これは、異なる ブート環境が作成されている、親のデータセットであるこ とを意味するマウント可能ではないデータセットです。デ フォルト: ``ROOT'' ZFSBOOT_BOOTFS_NAME システムのためのデフォルトのブート環境である、主要な ブート環境の名前。デフォルト: ``default'' ZFSBOOT_VDEV_TYPE 基本システムのために作成されたプールのタイプ。この変 数は、次の値の 1 つを取ることできます: stripe (No redundancy), mirror (n-Way mirroring), raid10 (RAID 1+0 - n x 2-Way Mirrors), raidz1 (RAID-Z1 - Single Redundacy RAID), raidz2 (RAID-Z2 - Double Redundacy RAID) または raidz3 (RAID-Z3 Triple Redundacy RAID)。デフォルト: ``stripe'' ZFSBOOT_FORCE_4K_SECTORS プールが 4K または 512 セクタを使用することを示しま す。この変数が空でないなら、4K セクタが使用されま す。デフォルト: ``1'' ZFSBOOT_GELI_ENCRYPTION この変数が空でないなら、自動的に ZFSBOOT_BOOT_POOL 変数を有効にして、root プールを暗号化するために geli(8) を使用します。デフォルト: ``'' ZFSBOOT_GELI_KEY_FILE geli(8) keyfile へのパスは、基本システムが格納される プールを暗号化するために使用されます。デフォルト: ``/boot/encryption.key'' ZFSBOOT_BOOT_POOL 設定されるなら、分離されたブートのプールは、システム と loader(8) のカーネルのために作成されます。デフォ ルト: unset ZFSBOOT_BOOT_POOL_CREATE_OPTIONS 有効にされるとき (ZFSBOOT_BOOT_POOL を参照)、ブート のプールを作成するとき使用するオプション。デフォル ト: unset ZFSBOOT_BOOT_POOL_NAME それが有効にされるとき (ZFSBOOT_BOOT_POOL を参照)、 オプションのブートのプールのための名前。デフォルト: ``bootpool'' ZFSBOOT_BOOT_POOL_SIZE それが有効にされるとき (ZFSBOOT_BOOT_POOL を参照)、 ブートのプールのサイズ。デフォルト: ``2g'' ZFSBOOT_DISKS ブートのプールを含んで、基本システムのために使用され るディスク。この変数は、スクリプト化されたインストー ルでのみ使用されなければなりません。詳細については、 「スクリプト記述」を参照してください。デフォルト: unset ZFSBOOT_SWAP_SIZE 各ブロックデバイスのスワップパーティションのサイズ。 この変数は、gpart(8) に渡されます。SI 単位接尾辞をサ ポートします。デフォルト: ``2g'' ZFSBOOT_SWAP_ENCRYPTION 設定されるなら、geli(8) を使用してスワップパーティ ションの暗号化を有効にします。デフォルト: "" ZFSBOOT_SWAP_MIRROR 設定されるなら、gmirror(8) を使用してスワップのミ ラーリングを有効にします。デフォルト: unset ZFSBOOT_DATASETS root zpool で作成される、ZFS データセット、それは、 次のデータセットを必要とします: /tmp, /var/tmp, /$ZFSBOOT_BEROOT_NAME/$ZFSBOOT_BOOTFS_NAME。この変数 を書き込むための、そのデフォルト値に調べるための、詳 細については、「ZFS データセット」を参照してくださ い。 ZFSBOOT_CONFIRM_LAYOUT 設定され、インストールが対話的であるなら、ユーザは、 インストールを続ける前にレイアウトを確認することがで きいます。デフォルト: ``1'' スクリプト記述 (SCRIPTING) bsdinstall スクリプトは、次の 2 つの部分から成ります: preamble と setup script です。preamble は、(インストールする配布など (複数の) ディスクをど のようにパーティション化するか) インストールのためのオプションを設定し、 オプションの 2 番目の部分は、bsdinstall が終了する前に新しくインストール されたシステムで chroot(8) の下で実行されるシェルスクリプトです。2 つの部 分は、セットアップのスクリプトのためのインタプリタも設定する、通常のスク リプトのヘッダ (#!) によって分離されます。 典型的な bsdinstall スクリプトは、次のようになります: PARTITIONS=ada0 DISTRIBUTIONS="kernel.txz base.txz" #!/bin/sh gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 ada0 sysrc ifconfig_em0=DHCP sysrc sshd_enable=YES pkg install puppet ZFS スクリプト化されたインストールのために、スクリプトは、次のように見え ます: DISTRIBUTIONS="kernel.txz base.txz" export ZFSBOOT_VDEV_TYPE=stripe export ZFSBOOT_DISKS=ada0 export nonInteractive="YES" #!/bin/sh echo "ifconfig_em0=DHCP" >> /etc/rc.conf echo "sshd_enable=YES" >> /etc/rc.conf pkg install puppet FreeBSD リリースのメディアで、/etc/installerconfig に置かれたそのようなス クリプトは、ブート時に実行され、システムは、インストールが完了した後に、 自動的にリブートされます。これは、新システムのそのままにされたネットワー クのインストールのために使用することができます。詳細については、 diskless(8) を参照してください。 前文 (PREAMBLE) 前文は、インストーラの設定から成ります。これらは、ディスクのパーティショ ン化と同様に、グローバルなインストールのパラメータ (環境変数を参照) を制 御します。前文は、インストールの最も最初に実行された sh(1) スクリプトとし て解釈されます。これらの変数を設定するより複雑な振る舞いが望まれるなら、 インストーラを拡張するために任意のコマンドをここで実行することができま す。環境変数の変数に加えて、特別な DISTRIBUTIONS では、前文は、ディスクの セットアップを制御するために scriptedpart ターゲットに渡される変数 PARTITIONS を含むことができます。もう一つの方法として、partedit の代わり に zfsboot を使用するために、前文は、PARTITIONS の代りに変数 ZFSBOOT_DATASETS を含むことができ、基本システムのためにディスクのプールを 作成するために変数 ZFSBOOT_DISKS と ZFSBOOT_VDEV_TYPE を設定します。通 常、ミラーリングされるブートディスクのために、この 2 つの変数は、次のよう に見えます: ZFSBOOT_DISKS="ada0 ada1" ZFSBOOT_VDEV_TYPE=mirror zfsboot コマンドのためにすべての変数をエクスポートすることを覚えていてく ださい、そうでなければ、それは、設定されません。 セットアップスクリプト (SETUP SCRIPT) 前文に続くことは、#! 宣言で始まるオプションのシェルスクリプトです。このス クリプトは、新しくインストールされたシステムで chroot(8) 環境の内部のイン ストールのプロセスの終わりで実行され、設定ファイル、インストールパッケー ジなど、をセットアップするために使用することができます、新しく設定された システムサービス (例えば、ネットワーク) は、この時期でインストールされた システムで開始されていなくて、インストールのホストサービスだけが利用可能 であることに注意してください。 ZFS データセット zfsboot パーティションは、基本システムでデータセットを作成するために ZFSBOOT_DATASETS 変数を取ります。この変数は、プールが多くのデータセットを 含むなら、かなり莫大になるかもしれません。ZFSBOOT_DATASETS のデフォルト値 は、次のように見えます: # DATASET OPTIONS (コンマまたは空白で区切られる; または両方) # ブート環境 [BE] root とデフォルトのブートデータセット /$ZFSBOOT_BEROOT_NAME mountpoint=none /$ZFSBOOT_BEROOT_NAME/$ZFSBOOT_BOOTFS_NAME mountpoint=/ # 圧縮された /tmp, setuid でなく, exec を許可します /tmp mountpoint=/tmp,exec=on,setuid=off # 'base' ファイルが BEROOT に行くことができるように, /usr をマウントしません /usr mountpoint=/usr,canmount=off # ホームディレクトリは, 分割されるので, それらは, すべての BE に共通です /usr/home # NB: /home is a symlink to /usr/home # ports ツリー /usr/ports setuid=off # ソースツリー (圧縮される) /usr/src # /var と friend を作成します /var mountpoint=/var,canmount=off /var/audit exec=off,setuid=off /var/crash exec=off,setuid=off /var/log exec=off,setuid=off /var/mail atime=on /var/tmp setuid=off データセットが ZFSBOOT_POOL_NAME の先頭で作成されるなら、最初のカラムで、 カラムの残りは、各データセットで設定されるオプションです。オプションは、 コンマまたは空白で区切られたリストで、または、両方で書き込まれなければな ければなりません。そして、ポンド/ハッシュ文字の後のすべては、コメントとし て無視されます。 歴史 bsdinstall のこのバージョンは、FreeBSD 9.0 ではじめて登場しました。 作者 Nathan Whitehorn <nwhitehorn@FreeBSD.org> FreeBSD 12.2 February 6, 2020 FreeBSD 12.2