os:boot_environment
差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン次のリビジョン両方とも次のリビジョン | ||
os:boot_environment [2019/06/14 17:51] – ブートローダでの選択を追記した yuichiro | os:boot_environment [2019/06/14 18:44] – [ブートローダでの選択] yuichiro | ||
---|---|---|---|
行 89: | 行 89: | ||
Boot Environment を扱うためのツールとして以下の2つがあります。 | Boot Environment を扱うためのツールとして以下の2つがあります。 | ||
- | 1. bectl | + | - **bectl** |
- | + | | |
- | FreeBSD 12.0 から標準搭載されたコマンドラインツールです。 | + | - **beadm** |
- | + | | |
- | 2. beadm | + | |
- | + | ||
- | ports/pkg でインストールできるコマンドラインツールです。 | + | |
- | bectl がない環境でも使うことができます。 | + | |
どちらも機能的にはほとんど変わりません。 | どちらも機能的にはほとんど変わりません。 | ||
行 203: | 行 199: | ||
もし、新しいルートファイルシステムにトラブルがあり、カーネルすら起動できなくなった場合は | もし、新しいルートファイルシステムにトラブルがあり、カーネルすら起動できなくなった場合は | ||
ブートローダでルートファイルシステムを選択することができます。 | ブートローダでルートファイルシステムを選択することができます。 | ||
+ | |||
+ | {{os: | ||
+ | |||
+ | 起動直後の画面で " | ||
+ | |||
+ | {{os: | ||
+ | |||
+ | " | ||
+ | |||
+ | {{os: | ||
+ | |||
+ | 元の環境を選びスペースキーを押すと、その環境でブートします。 | ||
+ | |||
+ | 起動したらアクティブなファイルシステムを切り替えましょう。 | ||
< | < | ||
- | | + | bectl activate default |
- | | + | </code> |
- | | |___ _ __ ___ ___ | |_) | (___ | | | | | + | |
- | | ___| '__/ _ \/ _ \| _ < \___ \| | | | | + | |
- | | | | | | __/ __/| |_) |____) | |__| | | + | |
- | | | | | | | || | + | |
- | |_| | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
+ | ローダはアクティブなファイルシステムを切り替えてはくれません。 | ||
+ | |||
+ | ==== ユースケース ==== | ||
+ | |||
+ | 実際に freebsd-update を行う場合を例にとると一連の操作の流れは次のようになります。 | ||
+ | |||
+ | === 1. 新しいルートファイルシステム作成 === | ||
+ | |||
+ | < | ||
+ | bectl create update | ||
</ | </ | ||
- | 起動直後の画面で | + | "update" |
+ | |||
+ | === 2. アクティベート === | ||
< | < | ||
- | | + | bectl activate update |
- | | + | </code> |
- | | |___ _ __ ___ ___ | |_) | (___ | | | | | + | |
- | | ___| '__/ _ \/ _ \| _ < \___ \| | | | | + | |
- | | | | | | __/ __/| |_) |____) | |__| | | + | |
- | | | | | | | || | + | |
- | |_| | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
+ | 起動するためにアクティベートします。 | ||
+ | |||
+ | === 3. 再起動 === | ||
+ | |||
+ | < | ||
+ | shutdown -r now | ||
</ | </ | ||
- | "2" | + | 再起動すると |
+ | |||
+ | === 4. freebsd-update === | ||
< | < | ||
- | | + | freebsd-update fetch install |
- | | + | </code> |
- | | |___ _ __ ___ ___ | |_) | (___ | | | | | + | |
- | | ___| '__/ _ \/ _ \| _ < \___ \| | | | | + | |
- | | | | | | __/ __/| |_) |____) | |__| | | + | |
- | | | | | | | || | + | |
- | |_| | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
+ | freebsd-update を実行しシステムを更新します。 | ||
+ | |||
+ | === 5. 再起動 === | ||
+ | |||
+ | < | ||
+ | shutdown -r now | ||
+ | </ | ||
+ | |||
+ | アップデート後に再起動します。 | ||
+ | |||
+ | === 6. 動作確認 === | ||
+ | |||
+ | ps でプロセスを確認するなど、動作を確認します。 | ||
+ | |||
+ | === 7. 古いルートファイルシステム削除 === | ||
+ | |||
+ | < | ||
+ | bectl destroy default | ||
+ | </ | ||
+ | |||
+ | 問題なければ、古いファイルシステムを削除します。 | ||
+ | |||
+ | === 8. デフォルトファイルシステムにリネーム === | ||
+ | |||
+ | < | ||
+ | bectl rename update default | ||
+ | </ | ||
+ | |||
+ | " | ||
+ | |||
+ | これで、freebsd-update された新しいシステムに更新されます。 | ||
+ | |||
+ | === 9. 切り戻し === | ||
+ | |||
+ | もし、6. の動作確認で問題があれば、" | ||
+ | |||
+ | < | ||
+ | bectl activate default | ||
+ | shutdown -r now | ||
+ | </ | ||
+ | |||
+ | その後、update を削除すると元に戻ります。 | ||
+ | |||
+ | < | ||
+ | bectl destroy update | ||
</ | </ | ||
- | 元の環境を選びスペースキーを押すと、その環境でブートします。 | ||
os/boot_environment.txt · 最終更新: 2021/12/27 10:34 by yuichiro