Arch Linux の再インストール
Arch Linux(または他の Linux)がディスクに存在する状態で、Arch Linux を上書きで新規インストールする場合の手順を説明します。
設定ファイルのバックアップ
Linux においては、各ソフトウェアの設定ファイルなどは、ホームディレクトリに保存されます。
/home をパーティションに割り当てて使用していない場合、ホームディレクトリは、Linux OS のパーティション上に存在するため、再インストール時に OS のパーティションをフォーマットした時は、それらのファイルも消去されてしまいます。
基本的に、ホームディレクトリ上のファイルをまるごと保存しておけば、インストール後に元の場所にコピーするだけで、以前の設定を復元させることができます。
ホームディレクトリをまるごとバックアップすることもできますが、~/.cache などには、キャッシュファイルなどの作業ファイルも含まれているため、設定ファイルのみに限定して保存しておいたほうが良いです。
設定ファイルは、主に「~/.<appname>」「~/.config/<appname>」「~/.local/share/<appname>」に保存されているので、各ディレクトリの中身を確認した上で、それらを保存しておいてください。
必要に応じて、ブラウザのブックマークや、日本語入力の単語登録などをバックアップしておくと良いです。
/home をパーティションに割り当てて使用していない場合、ホームディレクトリは、Linux OS のパーティション上に存在するため、再インストール時に OS のパーティションをフォーマットした時は、それらのファイルも消去されてしまいます。
基本的に、ホームディレクトリ上のファイルをまるごと保存しておけば、インストール後に元の場所にコピーするだけで、以前の設定を復元させることができます。
ホームディレクトリをまるごとバックアップすることもできますが、~/.cache などには、キャッシュファイルなどの作業ファイルも含まれているため、設定ファイルのみに限定して保存しておいたほうが良いです。
設定ファイルは、主に「~/.<appname>」「~/.config/<appname>」「~/.local/share/<appname>」に保存されているので、各ディレクトリの中身を確認した上で、それらを保存しておいてください。
必要に応じて、ブラウザのブックマークや、日本語入力の単語登録などをバックアップしておくと良いです。
パーティションについて
バックアップなどが済んだら、インストールメディアを起動します。
すでに存在するパーティション上に、Arch Linux を上書きでインストールしたい場合は、パーティショニングの処理は行わずに、フォーマットへと進みます。
まず、Arch Linux OS 用のパーティションは、必ずフォーマットして、ファイルすべてをクリアします。
フォーマットしなければ、元のファイルが残った状態で、上書きすることになってしまいます。
すでに存在するパーティション上に、Arch Linux を上書きでインストールしたい場合は、パーティショニングの処理は行わずに、フォーマットへと進みます。
まず、Arch Linux OS 用のパーティションは、必ずフォーマットして、ファイルすべてをクリアします。
フォーマットしなければ、元のファイルが残った状態で、上書きすることになってしまいます。
EFI システムパーティションについて
GPT の場合、EFI システムパーティションには、ブートローダーの *.efi ファイルや設定ファイルなどが置かれます。
ディスク上に1つの OS しかインストールしていない場合、EFI システムパーティションをフォーマットしてクリアすることで、新規状態で再びインストールすることもできますが、逆に、EFI システムパーティションを現在の状態で残したまま、継続して使うこともできます。
ブートローダー自体はスタンドアローンなので、UEFI ファームウェアにそのブート情報が設定されていて(EFI システムパーティションと *.efi ファイルのパス)、かつ、そのファイルと、ブートローダが使う関連ファイルが存在していれば、それ単体で起動できます。
そのため、以前の Arch Linux を上書きして再インストールしたい場合、EFI システムパーティションの場所が以前と同じで、設定も同じにするのであれば、現在のブートローダーを継続して使うことができます。
インストール中、/mnt にインストール先のパーティションをマウントする前に、EFI システムパーティションをマウントして、不要なファイルを rm コマンドで削除した後、アンマウントしてください。
efibootmgr コマンドを使います。
ディスク上に1つの OS しかインストールしていない場合、EFI システムパーティションをフォーマットしてクリアすることで、新規状態で再びインストールすることもできますが、逆に、EFI システムパーティションを現在の状態で残したまま、継続して使うこともできます。
ブートローダー自体はスタンドアローンなので、UEFI ファームウェアにそのブート情報が設定されていて(EFI システムパーティションと *.efi ファイルのパス)、かつ、そのファイルと、ブートローダが使う関連ファイルが存在していれば、それ単体で起動できます。
そのため、以前の Arch Linux を上書きして再インストールしたい場合、EFI システムパーティションの場所が以前と同じで、設定も同じにするのであれば、現在のブートローダーを継続して使うことができます。
マルチブートの場合
ディスク上に複数の OS がインストールされている場合は、個別に、EFI システムパーティション内の古いファイルを削除する必要があります。インストール中、/mnt にインストール先のパーティションをマウントする前に、EFI システムパーティションをマウントして、不要なファイルを rm コマンドで削除した後、アンマウントしてください。
## EFI システムパーティションをマウント # mount /dev/sda1 /mnt ~~~~ ## マウント先へ移動 # cd /mnt ## ファイル一覧を表示。-l で詳細 # ls ## ファイルやディレクトリを削除 ## -r: 再帰的 # rm <files> # rm -r <directory> ## 元の位置に移動し、アンマウント # cd ~ # umount /mnt
efibootmgr
EFI システムパーティションのファイルを削除しても、UEFI ファームウェア内のブート情報は残っているので、古いブートローダーの情報は手動で削除する必要があります。efibootmgr コマンドを使います。
## ブート情報の表示 # efibootmgr -v ## 指定ブート項目の削除 # efibootmgr --bootnum <4桁番号> --delete-bootnum
バックアップの復元
後は、普通にインストール作業を続けてください。
新しくインストールした Arch Linux を起動した後は、ホームディレクトリのバックアップファイルを、新しく作ったユーザーのホームディレクトリ上にコピーして、復元してください。
※ホームディレクトリにファイルをコピーする時は、一般ユーザーにログインした状態で行ってください。
ただし、デフォルトでは、先頭に '.' が付く隠しファイルは表示されません。
すべてのファイルを表示したい場合は、-A オプションを付けてください。
(ファイルの圧縮時は、ホームディレクトリをカレントにした状態で、圧縮しておいてください)
新しくインストールした Arch Linux を起動した後は、ホームディレクトリのバックアップファイルを、新しく作ったユーザーのホームディレクトリ上にコピーして、復元してください。
※ホームディレクトリにファイルをコピーする時は、一般ユーザーにログインした状態で行ってください。
ディレクトリ
※ ~/.config ディレクトリなどは初期状態では作成されていないので、必要に応じて mkdir コマンドで作成してください。$ mkdir ~/.config
ファイル一覧
ls コマンドで、ファイルの一覧を表示できます。ただし、デフォルトでは、先頭に '.' が付く隠しファイルは表示されません。
すべてのファイルを表示したい場合は、-A オプションを付けてください。
## ホームディレクトリのすべてのファイルの一覧を表示 $ ls -A ~
tar.* の展開
tar.* で圧縮してバックアップした場合は、以下のコマンドで、指定ディレクトリにファイルを展開できます。(ファイルの圧縮時は、ホームディレクトリをカレントにした状態で、圧縮しておいてください)
$ tar xf <archive_file> -C <directory>