Ubuntu 20.04 の環境整備 #2

ubuntu-logo14

システムを最新に

まず、取得元を riken.jp に変更する。画面左下の「アプリケーションを表示する」をクリックして、検索ワード「software」を入力。「ソフトウェアとアップデート(ソフトウェアと…)」を起動。
Ubuntu のソフトウェアタブが開かれているので、ダウンロード元ポップアップで「その他…」を選択。ダイアログで「日本」の中の「ftp.riken.jp」を選択してサーバの選択ボタンをクリック。認証ダイアログでパスワードを入力して、「認証」ボタンをクリック。
アップデートタブを開き、セキュリティアップデートがあるときで「すぐに表示」を選択しておく。
ウインドウを閉じるときに「利用可能なソフトウェアの情報が古くなっています」と言われるので、再読み込みボタンをクリックして、キャッシュを更新しておく。
インストール元が設定できたので、

sudo apt update
sudo apt upgrade
sudo apt install open-vm-tools-desktop ※VM 環境の場合

を実行。open-vm-tools-desktop はインストール済みかもしれない。

その他必要そうなもの

git とか vim とか。

sudo apt install git
sudo apt install vim-nox
sudo update-alternatives --config editor
sudo apt install curl
sudo apt install htop
sudo apt install build-essential libgtk-3-dev
sudo apt install ubuntu-restricted-extras
sudo apt install fonts-takao fonts-ipafont fonts-ipaexfont
sudo apt install gnome-tweaks
sudo apt install gdebi
sudo apt install gedit-plugins

日本語のディレクトリを修正

LANG=C xdg-user-dirs-gtk-update

NFS で仮想環境ホストのディレクトリをマウント

ホスト側(MacOS)の /etc/exports を編集。

/Users/hoge/dev -mapall=nakase:nakase -network 172.16.157.0 -mask 255.255.255.0

こんな感じに。nfsd checkexports で確認。修正したときは sudo nfsd update で読み込み直し。
仮想環境側は、

sudo apt install nfs-common
sudo mount -t nfs -o vers=3 172.16.157.1:/Users/hoge/dev /mnt ※とりあえずマウントしてみる
ls -l /mnt/ ※確認
sudo vi /etc/fstab
172.16.157.1:/Users/hoge/dev /home/hoge/dev nfs defaults 0 0

こんな感じで。

キーボード・IME 関連

実機では、CapsLock キーを Ctrl キーにする設定が必要。Gnome Tweaks で設定。キーボードとマウス>キーボードの追加のレイアウトオプションボタンをクリック。Ctrl position で CapsLock を Ctrl として扱うにチェックを入れる。
VMware Fusion のゲストでは、/usr/share/X11/xkb/symbols/jp を編集。2 行あるkey <CAPS> { [ Eisu_toggle, Caps_Lock ] };key <CAPS> { [ Eisu_toggle ] }; と修正。
その他、IME ON/OFF のキーバインドなど以前の記事を参照。

Ubuntu 20.04 の環境整備 #1

ubuntu-logo14

Ubuntu 20.04 の日本語 Remix を使って環境整備。

前提としては、

  • 実環境と VM 環境双方で同じように使えるようにする
  • Mac の環境があるので UID と GID を 501 にする

あたりがある。UID/GID を 501 にするので、インストール時に作成するユーザを管理ユーザとして、その後に一般ユーザ(と言っても sudo はできるようにするが)をつくる。

インストール

インストール時に、「アップデートをダウンロードする」のと「プロプライエタリなソフトウェアもインストールする」にチェックを入れる。LVM は使っても使わなくても。
インストール時に作成するユーザは管理者っぽい名前にしている(意味はない)。

インストール完了後

インストール時に設定したユーザでログイン。端末(ターミナル)を起動して /etc/login.defs を編集、system uid/gid の最大値を調整する。

#
# Min/max values for automatic uid selection in useradd
#
UID_MIN			  500
UID_MAX			60000
# System accounts
SYS_UID_MIN		  100
SYS_UID_MAX		  499

#
# Min/max values for automatic gid selection in groupadd
#
GID_MIN			  500
GID_MAX			60000
# System accounts
SYS_GID_MIN		  100
SYS_GID_MAX		  499

こんな感じ。
20.04 から uid/gid が 999 な systemd-coredump とかいうユーザがあるので、これの uid/gid を調整。find で uid または gid が 999 なファイルを探したが無かったので、サクっと変更する。実際は /etc/passwd と /etc/group を修正する。/etc/passwd は vipw で編集。
一般ユーザを作成する。sudo adduser hoge --uid 501 で作成。
作成したユーザの調整。インストール時に作成したユーザと同じグループに入れる。/etc/group を編集。

ssh:x:118:
netdev:x:119:
lpadmin:x:120:myadmin
avahi:x:121:
scanner:x:122:saned

こんなのを、

ssh:x:118:
netdev:x:119:
lpadmin:x:120:myadmin,hoge
avahi:x:121:
scanner:x:122:saned

こんな感じに。vi で :%s/myadmin/myadmin,hoge/g で全置換。ただし、

myadmin:x:1000:

myadmin,hoge:x:1000:

になるので、この行は手作業で戻してやる。
以降の作業は、作成したユーザでおこなう。

nginx + php-fpm 上で WordPress のパーマリンクを使う

WordPress の設定が多分終わった。

Ubuntu 18.04 上で、nginx, php7.2-fpm, mysql-server はパッケージをそのまま使っている。

try_files が 2 回あるだとかいろいろ言われたので「include snippets/fastcgi-php.conf;」の行をコメントアウトして、中身をこちらに移植した。多分動いている。