www.mtkn.jp

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

archlinux_installation.html (6899B)


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