ubuntu
カテゴリ
Ubuntu Server 初期設定
2026/02/27 16時maintenance
■①内蔵SSD全容量を使い切るための設定
Ubuntu Serverのインストーラーは「ディスクの半分だけ使う」という控えめな設定をデフォルトにしているので、全ての領域を使う設定を行う。
sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
sudo resize2fs /dev/ubuntu-vg/ubuntu-lv
df -h /

■②外付HDDをフォーマットして接続
内蔵SSDだけでは容量不足なので、HDDケースに格納したHDDを追加接続する
lsblk
sudo mkfs.ext4 /dev/sdb1
sudo mkdir -p /mnt/data
sudo mount /dev/sdb1 /mnt/data
sudo blkid /dev/sdb1
lsblk コマンドで、外付けHDDが見えるか確認
mkfs コマンドで、HDDをext4形式フォーマットする
mkdir コマンドで、マウントポイント /mnt/data を作成
mount コマンドで、HDDをマウント
blkid コマンドで、HDDの固有IDを調べる「UUID="9eb4a428-50ae-4ad5-a428-da36a393cf95"」

エディタで、fstabファイルの修正
sudo nano /etc/fstab

最終行に調べたUUIDを書き足し再起動
UUID=9eb4a428-50ae-4ad5-a428-da36a393cf95 /mnt/data ext4 defaults 0 2

■③Ubuntu Server を windows機から操作する
Samba のインストール
sudo apt update
sudo apt install samba -y

エディタで smb.conf 修正
sudo nano /etc/samba/smb.conf

ファイルの一番最後に、以下の内容を追加、Homeも追加
[ThinkPad_Data]
   path = /mnt/data
   browseable = yes
   read only = no
   guest ok = no
   create mask = 0644
   directory mask = 0755
   force user = vafee

[Home]
   path = /home/vafee
   browseable = yes
   read only = no
   guest ok = no
   create mask = 0644
   directory mask = 0755
   force user = vafee

Windowsから接続するときに使うパスワードを決める
sudo smbpasswd -a vafee

設定の反映
sudo systemctl restart smbd
Windowsのエクスプローラーを開き、アドレスバーに 『\\192.168.0.100』 と打ち込んで Enter
「ThinkPad_Data」と「Home」フォルダが見える。

Windowsからドライブ割当。コマンドプロンプトで以下を入力。スタートアップにバッチファイル追加
net use Z: \\192.168.0.100\ThinkPad_Data
net use Y: \\192.168.0.100\Home

Ubuntu Server 起動時にSambaを自動起動
sudo systemctl daemon-reload
sudo systemctl restart smbd

smbdが落ちても10秒後に自動復旧するコマンド
sudo systemctl daemon-reload
sudo systemctl restart smbd

■④時刻の修正
時刻のデフォルトはホスト自体がUTCになっているのでJSTに変更(+9時間)
sudo timedatectl set-timezone Asia/Tokyo
timedatectl

■⑤二画面ファイラー Midnight Commander をインストール
MS-DOS時代に便利に使わせて頂いた、山根直也氏の二画面ファイラー『FL』を思い出す、ファイル操作の 9割はコマンド不要で、秀丸エディタに近いエディタ内蔵

Midnight Commander(mc)のインストール
sudo apt update
sudo apt install mc -y
mc で、起動。

■⑥tailscale インストール

sudo apt update && sudo apt install -y openssh-server tailscale docker.io docker-compose-plugin apache2 certbot
sudo tailscale up

Tailscale再認証すると新しいノードとして登録され、IPが変わることがある。MagicDNS名(ubuntu-sv.tail******.ts.net)で運用していれば実害は少ないが、Windows側「windows_transfer.conf」の WINDOWS_SSH_HOST等、IP直書きの設定がないか確認する。

180日後の認証を止める、Tailscale 管理コンソールで該当マシンの「Key expiry」設定を確認し、無効化すれば今後再認証は不要となる。

・tailscaledプロセス自体がクラッシュする
・Tailscale側のアップデート適用に失敗する
・サーバー再起動時にtailscaledが正常に起動しない
・Tailscale社側のコーディネーションサーバーで障害が起きる

上記の対策として Tailscaleにresolv.conf を上書きさせないようにする
sudo tailscale set --accept-dns=false

■⑦ファイアウォール設定
ファイアウォール設定の確認
sudo ufw status numbered

『状態: 非アクティブ』で、働いていなかった。TailscaleがVPN層でアクセス制御しているので、外部からの直接攻撃リスクは低いとは言え、全ポートが無防備に開いている状態なので、解放するポートを指定して、その他は閉じることとした。

# --- 既存ルールを一旦リセット ---
sudo ufw --force reset

# SSH(LAN + Tailscale)
sudo ufw allow from 192.168.0.0/24 to any port 22 proto tcp
sudo ufw allow from 100.64.0.0/10  to any port 22 proto tcp

# AdGuard Home Web管理画面 / Apache (80)(LANのみ)
sudo ufw allow from 192.168.0.0/24 to any port 80 proto tcp

# AdGuard Home DNS (53)(LAN + Tailscale)
sudo ufw allow from 192.168.0.0/24 to any port 53
sudo ufw allow from 100.64.0.0/10  to any port 53

# AdGuard Home DHCP (67/68)(自宅Wi-Fi/LAN全体への配布のため無条件許可)
sudo ufw allow 67/udp comment 'AdGuard DHCP server'
sudo ufw allow 68/udp comment 'AdGuard DHCP client/relay'

# EPGStation (8888)(LAN + Tailscale)
sudo ufw allow from 192.168.0.0/24 to any port 8888 proto tcp
sudo ufw allow from 100.64.0.0/10  to any port 8888 proto tcp

# Mirakurun (40772)(LAN + Tailscale)
sudo ufw allow from 192.168.0.0/24 to any port 40772 proto tcp
sudo ufw allow from 100.64.0.0/10  to any port 40772 proto tcp

# Samba (445/139)(LANのみ)
sudo ufw allow from 192.168.0.0/24 to any port 445 proto tcp
sudo ufw allow from 192.168.0.0/24 to any port 139 proto tcp

# Netdata (19999)(LAN + Tailscale)
sudo ufw allow from 192.168.0.0/24 to any port 19999 proto tcp
sudo ufw allow from 100.64.0.0/10  to any port 19999 proto tcp

# HLS Proxy/HTTP (8890/8889)(Tailscaleのみ)
sudo ufw allow from 100.64.0.0/10 to any port 8890 proto tcp
sudo ufw allow from 100.64.0.0/10 to any port 8889 proto tcp

# --- 有効化 ---
sudo ufw --force enable
sudo ufw status numbered
既存のSSH接続が切断される可能性があります。続行しますか (y|n)?
と、聞いてくるが、「y enter」で、完了。

■⑧スピーカーの無音化
Ubuntu Server で、エラーが出ると、短いけど「プ」とビープ音がなる、普段ディスプレイの音量は大きくしているので、このビープ音が大きいので無効化する。
# pcspkr モジュールを無効化
echo "blacklist pcspkr" | sudo tee /etc/modprobe.d/nobeep.conf
sudo rmmod pcspkr 2>/dev/null
# ターミナルのベル設定を確認
echo $TERM
# ベルを無効化
echo "set bell-style none" >> ~/.inputrc
# 即座に反映
bind -f ~/.inputrc# ターミナルのベル設定を確認
echo $TERM
これで再起動してもビープ音は鳴らない。

まだ設定が足りなかった、SSH画面なのでWindows Terminal の設定が必要だった。
Windows Terminal の設定: 設定 → プロファイル → Ubuntu Server (tmux) → 詳細 → 「ベル通知」 をオフ

■⑨Ubuntu 再起動しても通信出来る様設定する

Adgurd のDHCサーバーを有効にして、ルーターのDHCサーバーを無効にしていると、Ubuntuを再起動すると通信が出来なくなった、一度DHCサーバーを有効にすれば回避できたが、その手順は面倒なので、Ubuntu が起動した瞬間に、自力でIPとゲートウェイを設定するように書き換える。

設定ファイル名を確認
ls /etc/netplan/

表示されたファイル名が『50-cloud-init.yaml』だったので、置換える
sudo nano /etc/netplan/50-cloud-init.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    enp0s31f6:
      dhcp4: no
      addresses:
        - 192.168.0.100/24
      nameservers:
        addresses:
          - 8.8.8.8
          - 1.1.1.1
      routes:
        - to: default
          via: 192.168.0.1

現在の設定「192.168.0.1」だと、Ubuntu は名前解決をルーター(=その先のAdGuard)に頼り切っているので、これを「 8.8.8.8(Google)」 にしておくことで、たとえ AdGuardが起動エラーで止まっていても、Ubuntu自体は外と繋がり、Cloudflare Tunnelが自力で立ち上がり、アクセスが復活できる

■再起動・電源OFFの覚書

再起動
sudo reboot

電源OFF
sudo shutdown -h now
sudo: 管理者権限で実行
-h: Halt(停止)の略
now: 「今すぐ」実行
sudo poweroff: これも「今すぐ電源を切る」動作
sudo shutdown -h +10: 10分後に電源を切る予約
sudo shutdown -c 間違えて打った時にキャンセル

記事一覧