外部補助記憶装置

雑多なメモの寄せ集め

archinstall で事前定義した構成ファイルを利用してインストール

複数台の ConohaVPS に ArchLinux をインストールするために、事前定義した構成を利用したいと思い試した。

1台目のインストール時に希望する構成を設定した後、"Save configuration" で構成ファイルを /root 等に保存しておく。

user_configuration.json という名前でこのようなファイルが得られる。

{
    "additional-repositories": [],
    "archinstall-language": "English",
    "bootloader": "Grub",
    "config_version": "2.8.1",
    "debug": false,
    "disk_config": {
        "config_type": "manual_partitioning",
        "device_modifications": [
            {
                "device": "/dev/vda",
                "partitions": [
                    {
                        "btrfs": [],
                        "dev_path": null,
                        "flags": [
                            "Boot"
                        ],
                        "fs_type": "fat32",
                        "mount_options": [],
                        "mountpoint": "/boot",
                        "obj_id": "44d1fa00-4c83-407f-abc4-c2a6f6073044",
                        "size": {
                            "sector_size": {
                                "unit": "B",
                                "value": 512
                            },
                            "unit": "MiB",
                            "value": 203
                        },
                        "start": {
                            "sector_size": {
                                "unit": "B",
                                "value": 512
                            },
                            "unit": "MiB",
                            "value": 3
                        },
                        "status": "create",
                        "type": "primary"
                    },
                    {
                        "btrfs": [],
                        "dev_path": null,
                        "flags": [],
                        "fs_type": "xfs",
                        "mount_options": [],
                        "mountpoint": "/",
                        "obj_id": "065e7a36-9c7a-4d3b-b875-adaa72bcd3a0",
                        "size": {
                            "sector_size": {
                                "unit": "B",
                                "value": 512
                            },
                            "unit": "B",
                            "value": 21258829824
                        },
                        "start": {
                            "sector_size": {
                                "unit": "B",
                                "value": 512
                            },
                            "unit": "sectors",
                            "value": 421888
                        },
                        "status": "create",
                        "type": "primary"
                    }
                ],
                "wipe": true
            }
        ]
    },
    "hostname": "conoha-2",
    "kernels": [
        "linux"
    ],
    "locale_config": {
        "kb_layout": "us",
        "sys_enc": "UTF-8",
        "sys_lang": "en_US"
    },
    "mirror_config": {
        "custom_mirrors": [],
        "mirror_regions": {
            "Japan": [
                "https://www.miraa.jp/archlinux/$repo/os/$arch",
                "https://repo.jing.rocks/archlinux/$repo/os/$arch",
                "https://mirrors.cat.net/archlinux/$repo/os/$arch",
                "https://jp.mirrors.cicku.me/archlinux/$repo/os/$arch",
                "https://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch",
                "http://www.miraa.jp/archlinux/$repo/os/$arch",
                "http://repo.jing.rocks/archlinux/$repo/os/$arch",
                "http://mirrors.cat.net/archlinux/$repo/os/$arch",
                "http://jp.mirrors.cicku.me/archlinux/$repo/os/$arch",
                "http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/$repo/os/$arch",
                "http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch"
            ]
        }
    },
    "network_config": {
        "type": "iso"
    },
    "no_pkg_lookups": false,
    "ntp": true,
    "offline": false,
    "packages": [
        "openssh",
        "vim"
    ],
    "parallel downloads": 0,
    "profile_config": {
        "gfx_driver": null,
        "greeter": null,
        "profile": {
            "custom_settings": {},
            "details": [],
            "main": "Minimal"
        }
    },
    "script": "guided",
    "silent": false,
    "skip_ntp": false,
    "skip_version_check": false,
    "swap": false,
    "timezone": "Asia/Tokyo",
    "uki": false,
    "version": "2.8.1"
}

インストール対象の VPS が到達可能な Web サーバーに配置し、取得できるようにしておく。 インストール対象の VPS

 archinstall --config https://XXXXX/config.json

を実行する。 ディスクレイアウト等がすでに設定された状態の archinstall が立ち上がってくる。

あとはアカウント情報等を設定しインストールすれば良い。