www.mtkn.jp

Manuscripts for my personal webpage.
git clone https://git.mtkn.jp/www.mtkn.jp
Log | Files | Refs | LICENSE

archlinux_installation.html (6862B)


      1 +++
      2 date = '2021-03-25T00:00:00+09:00'
      3 draft = false
      4 title = 'Arch Linuxのインストール'
      5 +++
      6 <time>2021-03-25</time>
      7 
      8 <h2>ハードウェア構成</h2>
      9 
     10 <h2>インストールの準備</h2>
     11 
     12 <h3>インストールメディアの入手</h3>
     13 
     14 <h3>署名の検証</h3>
     15 <pre><code>$ gpg --keyserver-options auto-key-retrieve --verify archlinux-<i>version</i>-x86_64.iso.sig
     16 </code></pre>
     17 
     18 <h3>インストールメディアの準備</h3>
     19 <pre><code>$ sudo dd bs=4M if=<i>path/to/arch/linux/iso</i> of=/dev/sd<i>X</i> status=progress oflag=sync
     20 </code></pre>
     21 
     22 <h3>ライブ環境の起動</h3>
     23 Arch Linux install medium (x86_64, UEFI)を選択
     24 
     25 <h3>インストールの記録</h3>
     26 <pre><code># script install.log
     27 </code></pre>
     28 
     29 <h3>起動モードの確認</h3>
     30 <pre><code># ls /sys/firmware/efi/efivars
     31 </code></pre>
     32 エラーが出なければUEFI。
     33 
     34 <h3>インターネットへ接続</h3>
     35 <p>
     36 ネットワークインターフェイスが認識されているか確認: 
     37 </p>
     38 <pre><code># ip link
     39 </code></pre>
     40 <p>
     41 Wi-Fi接続: 
     42 </p>
     43 <pre><code># iwctl
     44 [iwd]# device list
     45 ...
     46 [iwd]# exit
     47 </code></pre>
     48 <p>
     49 接続を確認: 
     50 </p>
     51 <pre><code># ping archlinux.jp
     52 </code></pre>
     53 
     54 <h3>システムクロックの更新</h3>
     55 <pre><code># timedatectl set-ntp true
     56 </code></pre>
     57 
     58 <h3>パーティショニング</h3>
     59 <pre><code>sd<i>X</i>
     60 ├sd<i>X</i>1 512M EFI System /boot
     61 └sd<i>X</i>2 lest Linux filesystem /
     62 </code></pre>
     63 <pre><code># lsblk
     64 # fdisk /dev/sd<i>X</i>
     65 Command (m for help): d
     66 ...
     67 Command (m for help): w
     68 </code></pre>
     69 
     70 <h3>パーティションのフォーマット</h3>
     71 <pre><code># mkfs.fat -F32 /dev/sd<i>X</i>1
     72 # mkfs.ext4 /dev/sd<i>X</i>2
     73 </code></pre>
     74 
     75 <h3>ファイルシステムのマウント</h3>
     76 <pre><code># mount /dev/sd<i>X</i>2 /mnt
     77 # mkdir /mnt/boot
     78 # mount /dev/sd<i>X</i>1 /mnt/boot
     79 </code></pre>
     80 
     81 <h2>インストール</h2>
     82 <h3>ミラーの選択</h3>
     83 日本のサーバーを上に持ってくる: 
     84 <pre><code># vim /etc/pacman.d/mirrorlist
     85 </code></pre>
     86 
     87 <h3>必須パッケージのインストール</h3>
     88 <pre><code># pacstrap /mnt base base-devel linux linux-firmware man-db man-pages 
     89 </code></pre>
     90 
     91 <h3>fstabの生成</h3>
     92 <pre><code># genfstab -U /mnt >> /mnt/etc/fstab
     93 </code></pre>
     94 
     95 <h3>chroot</h3>
     96 <pre><code># arch-chroot /mnt
     97 </code></pre>
     98 
     99 <h3>text editorをインストール</h3>
    100 <pre><code># pacman -S neovim
    101 </code></pre>
    102 
    103 <h3>タイムゾーン</h3>
    104 <pre><code># ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
    105 # hwclock --systohc
    106 </code></pre>
    107 
    108 <h3>ローカリゼーション</h3>
    109 <code>en_US.UTF-8</code>と<code>ja_JP.UTF-8</code>をコメントイン: 
    110 <pre><code># nvim /etc/locale.gen
    111 </code></pre>
    112 ロケールを生成: 
    113 <pre><code># locale-gen
    114 </code></pre>
    115 <pre><code># nvim /etc/locale.conf
    116 LANG=en_US.UTF-8
    117 </code></pre>
    118 
    119 <h3>ネットワーク設定</h3>
    120 <p>
    121 無線接続用のソフトをインストール
    122 </p>
    123 <pre><code># pacman -S networkmanager
    124 </code></pre>
    125 
    126 <p>
    127 ホストネームの設定
    128 </p>
    129 <pre><code># nvim /etc/hostname
    130 <i>myhostname</i>
    131 </code></pre>
    132 <pre><code># nvim /etc/hosts
    133 127.0.0.1	localhost
    134 ::1		localhost
    135 127.0.1.1	<i>myhostname</i>.localdomain	<i>myhostname</i>	
    136 </code></pre>
    137 
    138 <h3>Rootパスワード</h3>
    139 <pre><code># passwd
    140 </code></pre>
    141 
    142 <h3>ブートローダー</h3>
    143 <p>
    144 インストール
    145 </p>
    146 <pre><code># pacman -S grub efibootmgr
    147 # grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=boot
    148 </code></pre>
    149 <p>
    150 メイン設定ファイルの生成
    151 </p>
    152 <pre><code># grub-mkconfig -o /boot/grub/grub.cfg
    153 </code></pre>
    154 
    155 <h3>マイクロコードのアップデートを有効化</h3>
    156 <pre><code># pacman -S intel-ucode
    157 # grub-mkconfig -o /boot/grub/grub.cfg
    158 上のん無駄やんけ
    159 </code></pre>
    160 
    161 <h2>再起動</h2>
    162 <pre><code># exit #chrootを抜ける
    163 </code></pre>
    164 
    165 <h3>インストールの記録を保存</h3>
    166 <pre><code># exit #scriptを停止
    167 # mv install.log /mnt/root
    168 </code></pre>
    169 
    170 <h3>アンマウント</h3>
    171 <pre><code># umount -R /mnt
    172 </code></pre>
    173 
    174 <h3>再起動</h3>
    175 <pre><code># reboot
    176 </code></pre>
    177 
    178 <h2>インストール後</h2>
    179 <h3>システム管理</h3>
    180 <p>
    181 一般ユーザーの作成
    182 </p>
    183 <pre><code># useradd -m -G wheel -s /bin/bash kenji
    184 # passwd kenji
    185 </code></pre>
    186 <p>
    187 作成したユーザーをsudoerに追加
    188 </p>
    189 <pre><code># visudo
    190 %wheel ALL=(ALL) ALL #uncomment
    191 </code></pre>
    192 <p>
    193 一般ユーザーとしてログインしなおす。
    194 </p>
    195 
    196 <h3>パッケージ管理</h3>
    197 <p>
    198 AUR
    199 </p>
    200 
    201 
    202 
    203 <h3>dotfilesを同期</h3>
    204 <p>
    205 gitのインストール
    206 </p>
    207 <pre><code>$ sudo pacman -S git
    208 $ git config --global user.name "<i>First-name</i> <i>Family-name</i>"
    209 $ git config --global user.email "<i>username</i>@<i>example.com</i>"
    210 </code></pre>
    211 <p>
    212 dotfilesを同期
    213 </p>
    214 <pre><code>$ mkdir ~/.local
    215 $ cd ~/.local
    216 $ git clone https://github.com/<i>dotfilesのリポジトリ</i>
    217 $ ln -sf ~/.local/dotfiles/.bash* ~/
    218 $ mkdir .config
    219 $ ln -s ~/.local/dotfiles/.config/* ~/.config/
    220 ...
    221 </code></pre>
    222 
    223 <h3>GUI</h3>
    224 <p>
    225 グラフィックドライバのインストール
    226 </p>
    227 <pre><code>$ sudo pacman -S nvidia nvidia-utils xorg-xinit
    228 </code></pre>
    229 <p>
    230 window managerをインストール
    231 </p>
    232 <pre><code>$ sudo pacman -S i3-wm i3blocks dmenu
    233 </code></pre>
    234 ドライバをインストールしたらxorg-server等も依存関係として入った。
    235 <p>
    236 フォントをインストール
    237 </p>
    238 <pre><code>$ sudo pacman -S noto-fonts-cjk noto-fonts-emoji ttf-joypixels ttf-font-awesome ttf-liberation
    239 </code></pre>
    240 
    241 <p>
    242 ターミナル(st)をインストール
    243 </p>
    244 <pre><code>$ mkdir ~/.local/src
    245 $ cd ~/.local/src
    246 $ git clone git://git.suckless.org/st
    247 $ cd st
    248 $ sudo make install
    249 </code></pre>
    250 
    251 <p>
    252 再起動
    253 </p>
    254 <pre><code># sudo reboot
    255 </code></pre>
    256 だめでした
    257 <p>
    258 ログイン時に次のエラー
    259 </p>
    260 <pre><code>xauth: error in locking authority file /home/kenji/.cache/X11/Xauthority
    261 </code></pre>
    262 <p>
    263 <code>~/.cache/X11</code>というディレクトリがないのが原因のようだ。
    264 <code>.bash_profile</code>でXauthorityの場所を変更していたのにディレクトリを作っていなかった。
    265 </p>
    266 <pre><code>$ mkdir ~/.cache/X11
    267 </code></pre>
    268 <p>
    269 として解決。
    270 </p>
    271 
    272 <h3>日本語入力</h3>
    273 <p>
    274 ibusとibus-skkをインストール
    275 </p>
    276 <pre><code>$ sudo pacman -S ibus ibu-skk skk-jisyo
    277 </code></pre>
    278 <pre><code>vim ~/.config/X11/xinitrc
    279 export DefaultIMModule=ibus
    280 export GTK_IM_MODULE=ibus
    281 export QT_IM_MODULE=ibus
    282 export XMODIFIERS="@im=ibus"
    283 
    284 ibus-daemon --xim &
    285 </code></pre>
    286 
    287 <h3>ブラウザ(brave)をインストール</h3>
    288 <pre><code>$ cd ~/.local/src
    289 $ git clone https://aur.archlinux.org/brave-bin.git
    290 $ cd brave-bin
    291 $ makepkg -si
    292 </code></pre>
    293 
    294 <h3>音</h3>
    295 <pre><code>$ sudo pacman -S alsa-utilst pulseaudio
    296 $ pulseaudio --start
    297 </code></pre>
    298 
    299 
    300 <p>
    301 ssh
    302 </p>
    303 <pre><code>$ sudo pacman -S openssh
    304 $ mkdir ~/.ssh
    305 $ cd ~/.ssh
    306 $ ssh-keygen -t rsa
    307 </code></pre>
    308