OSをインストールしてから、最初に行う作業をまとめました。

grubの設定変更

PC起動時、常時grubメニューを表示し、5秒でタイムアウトするよう変更する。

$ sudo nano /etc/default/grub
# 常時メニュー表示/タイムアウト5秒
GRUB_TIMEOUT_STYLE=menu
GRUB_TIMEOUT=5

設定を反映させる。

$ sudo update-grub

PC起動時にUEFI BIOSへ入れなかった場合、grubメニュー内の「UEFI Firmware Settings」を選択すればOK。

日本語環境の設定

デフォルトでは日本語環境が不完全なため、以下を設定する。

インプットメソッドを、デフォルトのiBusからfcitx5へ変更する。

$ sudo apt install fcitx5-mozc
$ im-config -n fcitx5

日本語Remixについて

Ubuntu Japanese Teamの公式コメントで発表された手順に従い、日本語Remixと同等の内容へ更新する。

$ sudo wget https://www.ubuntulinux.jp/sources.list.d/noble.sources
 -O /etc/apt/sources.list.d/ubuntu-ja.sources  ← 1行で記述する
$ sudo apt -U upgrade
$ sudo apt install ubuntu-defaults-ja

日本語ディレクトリ(以降、フォルダと表記)名の変更

各フォルダ内にファイルが無い状態で以下を実行する。

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

「Don't ask me this again」へチェックを入れ[Update name]を押すと変更が適用される。

以降、再ログインすると「標準フォルダーの名前を現在の言語に合わせて更新しますか?」とポップアップ表示されるので「次回から表示しない」へチェックを入れ[古い名前のままにする]をクリックして変更を確定させる。

CUIテキストエディタ「nano」の初期設定

デフォルトでは、(表示上の)折り返しが有効になっていないので長い行が見にくい。行番号も表示されないので、設定ファイルを作成して起動オプションを指定する。

$ nano ~/.nanorc
# 折り返しを有効に(表示上だけで改行は入力されない)
set softwrap

# 行番号を表示する(必要に応じて)
set linenumbers

次回nano起動時からは、設定が有効になっている。

また、root権限で設定ファイルを編集する場合に備えて、rootユーザー用の設定ファイルも作成しておく。

$ sudo nano /root/.nanorc

内容は上記と同じでOK。

root権限でディレクトリ/テキストファイルを開く

サーバーを運用するためには、root権限でのファイル操作や設定ファイルの編集が必要になるため、Nautilus上でroot権限を使えるよう設定する。

「nautilus-admin」を導入する。

$ sudo apt install nautilus-admin

設定を反映させるため、一度ログアウトする。「アップデート情報」が表示される場合があるので「Restart File Manager」をクリックする。

netplanによる手動ネットワーク設定

サーバー運用するため、IPv4のみ有効とし、各種パラメータを固定値に設定する。

設定ファイルを作成する。

$ sudo nano /etc/netplan/99-local.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    enp0s31f6:  ← NIC名は、自環境に置き換える
      dhcp4: false
      dhcp6: false
      accept-ra: false
      addresses:
      - 192.168.xx.yy/24  ← 設定したいIPアドレス
      routes:
        - to: default
          via: 192.168.xx.zz  ← デフォルトゲートウェイ
          metric: 100
      nameservers:
        addresses:
        - 192.168.xx.zz
        - 8.8.8.8  ← 複数指定も可能

root以外が読み書きできないようパーミッションを変更する。

$ sudo chmod 600 /etc/netplan/99-local.yaml

同フォルダ内にある「90-MN-*.yaml」を削除(別のフォルダへ移動でも可)する。

設定を適用する。

$ sudo netplan apply

ホスト名の設定

Ubuntuでは、ホスト名の設定に癖があるため、手動で設定(修正)しておく。

$ sudo nano /etc/hostname
PC_NAME.localdomain  ← サーバーPCのローカル名を指定する

名前解決に影響がある「hosts」を修正する。

$ sudo nano /etc/hosts
127.0.0.1        localhost
192.168.xxx.1    PC_NAME.localdomain PC_NAME  ← サーバーPCのIPアドレスを指定する

NTPクライアント (時刻の自動同期)

デフォルトでは「systemd-timesyncd」が時刻同期を行っているが、NTPサーバーへ接続できないなどの不具合が発生したため、代替手段を導入する。

$ sudo systemctl stop systemd-timesyncd  ← サービス停止
$ sudo systemctl disable systemd-timesyncd  ← サービス無効化
$ sudo apt install ntpsec  ← ntpsecをインストール
$ sudo nano /etc/ntpsec/ntp.conf  ← 設定ファイルを開く
#pool 0.ubuntu.pool.ntp.org iburst  ← ntp.orgのサーバー4行をコメントアウト
#pool 1.ubuntu.pool.ntp.org iburst
#pool 2.ubuntu.pool.ntp.org iburst
#pool 3.ubuntu.pool.ntp.org iburst
pool ntp.nict.jp iburst  ← nictのサーバーを追加
$ sudo systemctl restart ntpsec  ← サービス再起動
$ ntpq -p  ← 同期状態を確認
     remote                                   refid      st t when poll reach   delay   offset   jitter
=======================================================================================================
 ntp.nict.jp                             .POOL.          16 p    -  256    0   0.0000   0.0000   0.0001
-prod-ntp-3.ntp4.ps5.canonical.com       79.243.60.50     2 u   37  128  377 222.9939  -2.4369   2.2660
*ntp-b2.nict.go.jp                       .NICT.           1 u   62  128  377   5.7098  -0.2174   0.2995
+ntp-k1.nict.jp                          .NICT.           1 u  131  128  377  14.7597  -0.3595   0.3533
+ntp-b3.nict.go.jp                       .NICT.           1 u    8  128  377   6.0560  -0.5587   0.3773
+ntp-a3.nict.go.jp                       .NICT.           1 u  129  128  377   5.5264  -0.3292   0.2224
+ntp-a2.nict.go.jp                       .NICT.           1 u   61  128  377   5.5413  -0.1782   0.5844
 ntp-a3.nict.go.jp                       .INIT.          16 u    - 1024    0   0.0000   0.0000   0.0001
 2001:ce8:78::2                          .INIT.          16 u    - 1024    0   0.0000   0.0000   0.0001
 ntp-a2.nict.go.jp                       .INIT.          16 u    - 1024    0   0.0000   0.0000   0.0001

「*」が付いているサーバーと同期している事が確認できる。

Windowsとのマルチブート環境を構築している場合

Ubuntuでは、ハードウェア時刻(RTC)がローカル時刻ではなく協定世界時(UTC)で同期される仕様となっているため、同一PC上でWindowsを起動すると、時刻が9時間遅れて表示されてしまう。

起動後しばらく経過すると自動修正されるとは言え、一時的にでも時刻が不正表示されるのを防止するためには、Ubuntu側でRTCをローカル時刻で同期するよう設定変更しておく必要がある。

$ sudo timedatectl set-local-rtc 1
$ sudo timedatectl  ← 時刻ステータスを確認
...
          RTC in local TZ: yes  ← RTCがローカル時刻で動作している

これで、Windows環境に影響を与える事はなくなったが、Ubuntuではこのような運用は推奨していないので、あくまでWindows環境がメインの場合の対症療法と考えるべきだろう。

ハードウェア時刻の同期

Ubuntuでは、システム終了や再起動時にシステム時刻をハードウェア時刻(RTC)へ同期(書き込み)するが、サーバー運用する場合は長期間連続稼働させるため、定期的にシステム時刻をハードウェア時刻へ同期(修正)しておく方が望ましい。

尚、Ubuntu24.04 LTS導入時に「規定の選択」を行った場合、hwclockコマンドはインストールされないため、以下の手順で導入する。

$ sudo apt install util-linux-extra

1日に1回時刻を同期するよう、以下のスクリプトを作成する。

$ sudo nano /etc/cron.daily/sync_hwclock
#!/bin/sh
# /etc/cron.daily/sync_hwclock
# root:root 755
# 現在のシステム時刻をハードウェア時刻へ書き込む。
/sbin/hwclock --systohc
$ sudo chmod +x /etc/cron.daily/sync_hwclock
$ sudo systemctl restart cron

これで、1日1回同期処理が自動実行される。

強制サスペンドの無効化

検索用: Ubuntu ログイン前 強制 サスペンド 無効

Ubuntu 20.04 LTS以降で確認された現象として、ユーザでログイン中はサスペンドしないが、ログイン前の画面で放置すると20分で強制サスペンドしてしまう。サーバー運用する場合、これでは問題となるため、サスペンド類すべてを無効化する。

サスペンド類無効
$ sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

サスペンド類有効
$ sudo systemctl unmask sleep.target suspend.target hibernate.target hybrid-sleep.target

PCを再起動すると設定が反映される。

外付けHDDの自動マウント

ファイル保管場所として、外付けHDDを接続する。今回は2.5インチ1TBのUSBバスパワータイプを用意した。サーバーPC起動時にマウントポイントを指定して自動マウントさせる。

「/etc/fstab」を編集する。

$ sudo nano /etc/fstab
# HDD DATA1TB
UUID=xxxx-xxxx-xxxx-xxxx /mnt/USB_HDD ext4 defaults 0 0
$ sudo mkdir -p /mnt/USB_HDD
$ sudo chmod 777 /mnt/USB_HDD/

マウントを実行(反映)する。

$ sudo systemctl daemon-reload
$ sudo mount -av