半年ぐらい
aws sap-c02の勉強ばっかりやってた
からsteamで遊ぶのもmicrok8sの更新も停滞気味やった。
ニュースでは見てたけど6月にubuntu26出とるな。引っ越したいやんけ。
Canonical、Ubuntu 26.04 LTS Resolute Raccoonを公開
| Ubuntu
jp.ubuntu.com
raccoonってあるからアライグマ。
お茶目な感じや。
今回も26への引っ越しは時間かかる。docker/microk8s(kubernetes)の環境を維持してく下地を作る。
ubuntu使い続けるかどうか#
turbolinux->fedora->centos->ubuntuって流れで個人環境でのlinux使い続けてきた。
redhatとかsuseに寄り道したこともあったな。
他のlinuxに切り替えよっかなって考えたけど、samba/apache/nginx/docker/microk8sを楽に使うには今回もバージョンアップでええかってなった。
OSのメンテ(apt upgradeや設定)から解放されたいなとも思ってるけど、そうときはクラウドのマネージドサービス使えばええ。
マネージドサービスのほうがお金かかるけどな。
インストールから初期起動#
湯船でリラックスした状態でやり方考えた。
22から24に引っ越したときの
メモ
も読み返して考えた、だいたいの流れ。
windowsのvmwareの中でubuntu26インストール
マウントポイント作ってsamba動かしてスクリプトや設定をコピー
dockerの永続化領域と普段のデータ領域をバックアップ ⭐️vmdk壊れたときのためgoogle driveに退避しとく
予備・本番のIPアドレスを入れ替えてデータ領域のvmdkファイルをubuntu24からubuntu26に接続変更 ⭐️宅内DNSで名前引きできる
コンテナ起動して永続化領域を掴ませる
apache2動かして宅内web見れるようにする
google cloudの接続利用 ⭐️ポートフォワードして使うとこの調整
バックアップ処理とか、データ移動処理とかのテスト ⭐️dockerからkubernetesとか、vmwareからutm環境の流し込み
まずは入手#
Ubuntu Server取ってくる。
Ubuntuを入手する | Ubuntu
| Ubuntu
jp.ubuntu.com
5分もかからずisoイメージのファイル手に入る。サイズは2.71GBで22や24のときとあんまり変わらん。
今回もserver#
xrdpコンテナ使い始めたら、母艦に向けてGUIあんまり使わん。
gnome入れたら不要パッケージもあるからアンインストールとか面倒で、業務でやってるのと同じように最小構成のインストールして足してくことにする。
またもや日本語ない。後でロケール足す。
キーボードは日本語配列選べる。
ローカルPCのlinuxルートボリュームは200GB。レイアウトはインストール前に変えとく。
入れたいパッケージは決まってるけど手動で入れたいからいったんこのまま。
しばらく待つ。DNSとか設定しといたからセキュリティアップデートやってくれるんかな。
5分もせずにインストール終わる。ubuntu26入ったな。
macのターミナルからログインする
ように設定作ったからgemini先生に相談して教えてもらったコマンドライン貼り付けできる。
vmxファイルいじる#
vmxの手動設定よう忘れる。インストール終わったらOS設定の前にやらなアカンで。
スクリプトのテスト途中で性能出えへんことに気づいてあわてて書き足した。
Ubu26-nafslinux.vmx
1
2
3
4
5
mainMem.useNamedFile = "FALSE" ⭐️「ページングファイル(.vmem)」をホストのストレージ(ディスク)上に作成せん
MemTrimRate = "0" ⭐️VMwareが仮想マシンの未使用メモリをホストOSに返却する処理(メモリトリミング)を無効化
ethernet0.virtualDev = "e1000" ⭐️これやとイーサネットがハングしよる
zipの途中でなんかしらんけどイーサネットがハングしてssh切れてまうことがあった。
vmwareの画面見たら文字がいっぱい流れていきよる。
なんやねん腹たつわぁ。
gemini先生に相談して今回はethernetの設定を変えた。先生に画像見せて教えてもらった回答。
1
2
3
4
5
これは、Intelのネットワークドライバ(e1000)において、
送信リング(Tx Queue)の処理がタイムアウトしてネットワークアダプタが完全にハングアップ(無応答)している状態を示しています。
zip圧縮などの高負荷(大量パケット送信やCPU/I/O高負荷)に伴い、
TSO/GRO(オフロード機能)やドライバ自体のバグによってこの現象が頻発します。
なるほど。vmware3の頃ぐらいにwindowsでオフロード問題にあたったことあったっけ。
調査のためのコマンドライン教えてくれたけど、調査したいわけやなくさっさと動かしたい。
1
2
3
4
sudo ethtool --set-eee <インタフェース名> eee off
sudo ethtool -K <インタフェース名> tso off gso off gro off
sudo nano /etc/default/grub
sudo dmesg -T | grep -E "eth|net|r8169|e1000e|Link"
vmware workstationの設定どうしたらええか教えてくれた。
1
ethernet0.virtualDev = "vmxnet3" ⭐️こうするんやな
先生おおきに。すぐ動いた。
kubernetesのホスト作る時も同じ手使わせてもらうで。
OS設定#
まずはタイムゾーン変更とロケールの日本語化しとく。
1
2
3
4
5
6
7
8
# apt update
# apt upgrade
# timedatectl set-timezone Asia/Tokyo
# apt -y install language-pack-ja-base language-pack-ja
# localectl list-locales | grep -i ja
# localectl set-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja" ⭐️エラーになったけどログどっかいった
# update-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja" ⭐️代わりにこっち使う
# source /etc/default/locale
やってみたらこんな感じ。途中でエラー出たからやり直してて、aptは2回目やからalready the newest versionってなってる。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
root@nafslinux-ubu26:~#
root@nafslinux-ubu26:~# timedatectl set-timezone Asia/Tokyo
root@nafslinux-ubu26:~# apt -y install language-pack-ja-base language-pack-ja
language-pack-ja-base is already the newest version ( 1:26.04+20260417) . ⭐️2回目やし入らん
language-pack-ja is already the newest version ( 1:26.04+20260417) . ⭐️2回目やし入らん
The following packages were automatically installed and are no longer required:
linux-headers-7.0.0-14 linux-tools-7.0.0-14
linux-headers-7.0.0-14-generic linux-tools-7.0.0-14-generic
linux-image-unsigned-7.0.0-14-generic pollinate
linux-main-modules-zfs-7.0.0-14-generic xxd
linux-modules-7.0.0-14-generic
Use 'apt autoremove' to remove them.
Summary:
Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 2
root@nafslinux-ubu26:~# localectl list-locales | grep -i ja
ja_JP.UTF-8
root@nafslinux-ubu26:~# localectl set-locale LANG= ja_JP.UTF-8 LANGUAGE= "ja_JP:ja" ⭐️エラー出るねん
Failed to issue method call: Locale ja_JP:ja is not valid, refusing.
root@nafslinux-ubu26:~# update-locale LANG= ja_JP.UTF-8 LANGUAGE= "ja_JP:ja" ⭐️gemini先生に教えてもらったコレ使う
root@nafslinux-ubu26:~# source /etc/default/locale
root@nafslinux-ubu26:~#
root@nafslinux-ubu26:~# echo $LANG
ja_JP.UTF-8 ⭐️できたかな
root@nafslinux-ubu26:~# date
2026年 7月 29日 水曜日 07:03:33 JST ⭐️時間あってる、日本語表示できとる
root@nafslinux-ubu26:~#
最小構成でインストールしたからか、
ubuntu24のとき起動で時間かかるプロセス
は発生せんし、
使わんモジュールの削除
もやらんでええ。
モジュールの確認してみる。
目視して「なんやこれ」って思うもんは特になかった。
GUI入れてへんからまぁ必要なもん入ってるんやろな。
1
2
3
4
5
6
root@nafslinux-ubu26:~# apt list --installed 2>/dev/null | grep -v 'Listing...' | more
一覧表示...
3cpio/resolute,now 0.14.0-1ubuntu1 amd64 [ インストール済み、自動]
adduser/resolute,now 3.153ubuntu1 all [ インストール済み、自動]
amd64-microcode/resolute,now 3.20251202.1ubuntu2 amd64 [ インストール済み、自動]
:(中略)
念の為、moreをwc -lってすると521個。切り替え完了する頃には624個やった。
1
2
3
root@nafslinux-ubu26:/gvis/script# apt list --installed 2>/dev/null | grep -v 'Listing...' | wc -l
624
root@nafslinux-ubu26:/gvis/script#
他にも不要そうなもんないか検索してみたら、usbと無線LAN系のがひっかかった。libとかfirmwareやし、まぁ、いったんこのまま行こか。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
root@nafslinux-ubu26:~# apt list --installed 2>/dev/null | grep -v 'Listing...' | wc -l
521 ⭐️けっこう入っとるな
root@nafslinux-ubu26:~# apt list --installed 2>/dev/null | grep -v 'Listing...' | grep libreof ⭐️gnome入ってへんしあるわけないけど
root@nafslinux-ubu26:~# apt list --installed 2>/dev/null | grep -v 'Listing...' | grep byobu ⭐️gnome入ってへんしあるわけないけど
root@nafslinux-ubu26:~# apt list --installed 2>/dev/null | grep -v 'Listing...' | grep remmina ⭐️gnome入ってへんしあるわけないけど
root@nafslinux-ubu26:~# apt list --installed 2>/dev/null | grep -v 'Listing...' | grep thunder ⭐️gnome入ってへんしあるわけないけど
root@nafslinux-ubu26:~# apt list --installed 2>/dev/null | grep -v 'Listing...' | grep cups ⭐️いらん
root@nafslinux-ubu26:~# apt list --installed 2>/dev/null | grep -v 'Listing...' | grep printer ⭐️いらん
root@nafslinux-ubu26:~# apt list --installed 2>/dev/null | grep -v 'Listing...' | grep modem ⭐️いらん
root@nafslinux-ubu26:~# apt list --installed 2>/dev/null | grep -v 'Listing...' | grep ppp ⭐️いらん
root@nafslinux-ubu26:~# apt list --installed 2>/dev/null | grep -v 'Listing...' | grep sane ⭐️いらん
root@nafslinux-ubu26:~# apt list --installed 2>/dev/null | grep -v 'Listing...' | grep usb-
libusb-1.0-0/resolute,now 2:1.0.29-2build1 amd64 [ インストール済み、自動] ⭐️いらんような気ぃするけど、まぁこのままいっとこか
root@nafslinux-ubu26:~#
root@nafslinux-ubu26:~# apt list --installed 2>/dev/null | grep -v 'Listing...' | grep wireless ⭐️有線LANしか使ってへんけどfirmwareぐらいはええか
linux-firmware-broadcom-wireless/resolute-updates,now 20260319.git217ca6e4-0ubuntu1.1 all [ インストール済み、自動]
linux-firmware-intel-wireless/resolute-updates,now 20260319.git217ca6e4-0ubuntu2.1 all [ インストール済み、自動]
linux-firmware-marvell-wireless/resolute-updates,now 20260319.git217ca6e4-0ubuntu1.1 all [ インストール済み、自動]
linux-firmware-qualcomm-wireless/resolute,now 20260319.git217ca6e4-0ubuntu1 all [ インスト ール済み、自動]
wireless-regdb/resolute,now 2026.02.04-0ubuntu1 all [ インストール済み、自動]
root@nafslinux-ubu26:~#
モジュールの追加#
自分のメモ使って入れてく。
ubuntuで最初にaptした内容 | ギャバンITサービス
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
apt update
apt upgrade
apt autoremove
apt-get install open-vm-tools ⭐️cuiでも入れとかなvmwareのシャットダウンボタンとか効かへんで
apt-get install nmon ⭐️負荷状態確認で使う
apt install vim pwgen ⭐️まだnano慣れん、パスワードジェネレータ使う
apt install mailutils ⭐️監視メールで使う
apt install postfix mailutils sasl2-bin libsasl2-modules ⭐️監視メールで使う
apt-get install apt-transport-https ca-certificates gnupg ⭐️他のモジュール導入で使う
apt install systemd-timesyncd ⭐️時刻同期で使う
apt install cron ⭐️systemd-timerはまだ覚えとらん
apt install iputils-ping dnsutils traceroute ⭐️ネットワーク確認にいるで
apt install rsync ⭐️バックアップで使う
apt install zip unzip ⭐️バックアップで使う
apt install logrotate ⭐️ログローテートで使う
1日目はいったんここまで。
NTPの同期先#
今までやってこんかったけど、レイテンシー低い国内サーバ使おうかと。
gemini先生に相談してみたら「日本の NTP サーバー(特に NICT の NTP)に変更することを強くおすすめします。日本の国家標準時(日本標準時)を生成・管理している本家本元の機関です。」やとさ。
1
2
3
4
5
6
7
8
9
10
11
12
13
root@nafslinux-ubu26:/gvis/script# timedatectl set-ntp true
root@nafslinux-ubu26:/gvis/script# vi /etc/systemd/timesyncd.conf ⭐️設定いじる
root@nafslinux-ubu26:/gvis/script# tail -2 /etc/systemd/timesyncd.conf
NTP= ntp.nict.jp ntp.mfeed.ad.jp ⭐️国内サーバ使う
FallbackNTP= ntp.ubuntu.com ⭐️もし国内サーバ使えんかったらubuntuのntp参照させる
root@nafslinux-ubu26:/gvis/script# systemctl restart systemd-timesyncd
root@nafslinux-ubu26:/gvis/script# journalctl -u systemd-timesyncd -n 5 --no-pager
8月 01 05:55:43 nafslinux-ubu26 systemd[ 1] : Stopped systemd-timesyncd.service - Network Time Synchronization.
8月 01 05:55:43 nafslinux-ubu26 systemd[ 1] : Starting systemd-timesyncd.service - Network Time Synchronization...
8月 01 05:55:43 nafslinux-ubu26 systemd[ 1] : Started systemd-timesyncd.service - Network Time Synchronization.
8月 01 05:55:43 nafslinux-ubu26 systemd-timesyncd[ 6460] : Contacted time server 133.243.238.164:123 ( ntp.nict.jp) .
8月 01 05:55:43 nafslinux-ubu26 systemd-timesyncd[ 6460] : Initial clock synchronization to Sat 2026-08-01 05:55:43.427993 JST.
root@nafslinux-ubu26:/gvis/script#
フォルダ構成の維持とデータ置き場の準備#
流し込みする前に、OSユーザのuidそろってるか確認。ubuntu24と26で見比べる。
1
2
3
nari@nafslinux-ubu24:/$ id
uid= 1000( nari) gid= 1000( nari) groups= 1000( nari) ,4( adm) ,24( cdrom) ,27( sudo) ,30( dip) ,46( plugdev) ,101( lxd) ,985( docker)
nari@nafslinux-ubu24:/$
1
2
3
nari@nafslinux-ubu26:~$ id
uid= 1000( nari) gid= 1000( nari) groups= 1000( nari) ,4( adm) ,24( cdrom) ,27( sudo) ,30( dip) ,46( plugdev) ,100( users) ,101( lxd)
nari@nafslinux-ubu26:~$
準備するフォルダはdocker/gvis/nari/nari2。
1
2
3
4
5
6
nari@nafslinux-ubu24:/$ ls -l | grep nari
drwx------ 9 nari nari 4096 4月 16 05:08 docker
drwxr-xr-x 7 nari nari 96 6月 1 2024 gvis
drwxr-xr-x 7 nari nari 4096 7月 26 07:34 nari
drwxr-xr-x 2 nari nari 26 6月 1 2024 nari2
nari@nafslinux-ubu24:/$
ubuntu26側に用意してく。gvisはコピーして持ってくるからフォルダは作らん。
1
2
3
4
5
6
root@nafslinux-ubu26:~# mkdir /docker
root@nafslinux-ubu26:~# mkdir /nari
root@nafslinux-ubu26:~# mkdir /nari2
root@nafslinux-ubu26:~# chown nari:nari /docker
root@nafslinux-ubu26:~# chown nari:nari /nari
root@nafslinux-ubu26:~# chown nari:nari /nari2
dockerの永続化領域用#
vmdkを新規で作ってOS再起動する。sdbが見えるはず。
1
2
3
4
5
6
7
8
9
10
nari@nafslinux-ubu26:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 200G 0 disk
├─sda1 8:1 0 1M 0 part
├─sda2 8:2 0 2G 0 part /boot
└─sda3 8:3 0 198G 0 part
└─ubuntu--vg-ubuntu--lv 252:0 0 198G 0 lvm /
sdb 8:16 0 100G 0 disk ⭐️増えとる
sr0 11:0 1 1024M 0 rom
nari@nafslinux-ubu26:~$
パーティション作る。
parted使おうとしたら、ubuntu26に入っとらんかった。昔ながらのfdisk使う。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
root@nafslinux-ubu26:~# fdisk /dev/sdb ⭐️増えたディスクにパーティション作る
fdisk ( util-linux 2.41.3) へようこそ。
ここで設定した内容は、書き込みコマンドを実行するまでメモリのみに保持されます。
書き込みコマンドを使用する際は、注意して実行してください。
デバイスには認識可能なパーティション情報が含まれていません。
新しい DOS ( MBR) ディスクラベルを作成しました。識別子は 0x34f2489f です。
コマンド ( m でヘルプ) : n ⭐️新規作成
パーティションタイプ
p 基本パーティション ( 0 プライマリ, 0 拡張, 4 空き)
e 拡張領域 ( 論理パーティションが入ります)
選択 ( 既定値 p) : p ⭐️基本パーティションね
パーティション番号 ( 1-4, 既定値 1) : ⭐️そのままenter
最初のセクタ ( 2048-209715199, 既定値 2048) : ⭐️そのままenter
最終セクタ, +/-セクタ番号 または +/-サイズ{ K,M,G,T,P} ( 2048-209715199, 既定値 209715199) : ⭐️そのままenter
新しいパーティション 1 をタイプ Linux、サイズ 100 GiB で作成しました。
コマンド ( m でヘルプ) : w ⭐️ディスクに書き込み
パーティション情報が変更されました。
ioctl() を呼び出してパーティション情報を再読み込みします。
ディスクを同期しています。
root@nafslinux-ubu26:~#
パーティションできたからファイルシステム作る。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
root@nafslinux-ubu26:~# sudo mkfs.ext4 /dev/sdb1 ⭐️ext4で作ってちょ
mke2fs 1.47.2 ( 1-Jan-2025)
Creating filesystem with 26214144 4k blocks and 6553600 inodes
Filesystem UUID: 9a8658b7-ca6b-4480-9f6e-b49514c3a52b
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872
Allocating group tables: done
Writing inode tables: done
Creating journal ( 131072 blocks) : done
Writing superblocks and filesystem accounting information: done
root@nafslinux-ubu26:~# mount /dev/sdb1 /docker ⭐️つないでちょ
root@nafslinux-ubu26:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 200G 0 disk
├─sda1 8:1 0 1M 0 part
├─sda2 8:2 0 2G 0 part /boot
└─sda3 8:3 0 198G 0 part
└─ubuntu--vg-ubuntu--lv 252:0 0 198G 0 lvm /
sdb 8:16 0 100G 0 disk
└─sdb1 8:17 0 100G 0 part /docker ⭐️つながった
sr0 11:0 1 1024M 0 rom
root@nafslinux-ubu26:~#
運用スクリプトでmountするから、fstabは変更しない。
gvisのフォルダはubuntu24からtar.gzをそのまま持ってくる#
gvisのフォルダに道具がいろいろ入っててtar.gzしておいたものをteratermのscpでローカルPCに落としてくる。
同じようにteratermでubuntu26へtar.gzを展開する。
1
2
3
4
5
root@nafslinux-ubu26:~# tar xzf /tmp/gvis.tar.gz
root@nafslinux-ubu26:~# mv gvis /
root@nafslinux-ubu26:~# ls -l / | grep gvis
drwxr-xr-x 7 nari nari 4096 Jun 1 2024 gvis
root@nafslinux-ubu26:~#
普段利用するデータ置き場#
nariのフォルダはmkdirだけやっといてubuntu24のvmdkをマウント。
nari2はhdd交換して、vmdk切り替えるときの予備のマウントポイント。
hddまだ3年ぐらいしか使ってへんし価格高騰してるから、今回はデータ引っ越しはせずubuntu24のvmdkそのまま使うかな。
samba/apacheを入れ終わったらマウントする。
システムの起動にかかる時間#
OS起動にかかる時間は、使っていくうちに遅くなっていく。たまにしか確認せんから見とく。
Ubuntu24でgnome利用
1
2
3
4
root@nafslinux-ubu24:~# systemd-analyze
Startup finished in 4.855s (kernel) + 3.238s (userspace) = 8.094s
graphical.target reached after 2.947s in userspace.
root@nafslinux-ubu24:~#
Ubuntu26でgnome未使用
1
2
3
4
root@nafslinux-ubu26:/gvis/script/proc# systemd-analyze
Startup finished in 2.011s (kernel) + 2.121s (initrd) + 3.198s (userspace) = 7.331s
graphical.target reached after 3.197s in userspace. ⭐️なんでgraphical.targetってなってんねん?
root@nafslinux-ubu26:/gvis/script/proc#
gnome入れてへんのにgraphical.targetってなってるから修正する。
Ubuntu26で修正
1
2
3
4
5
6
7
8
root@nafslinux-ubu26:/gvis/script/proc# systemctl get-default ⭐️どないなっとるか確認
graphical.target ⭐️ありゃりゃ
root@nafslinux-ubu26:/gvis/script/proc# sudo systemctl set-default multi-user.target ⭐️昔で言うランレベル3に変更
Created symlink '/etc/systemd/system/default.target' → '/usr/lib/systemd/system/multi-user.target'.
root@nafslinux-ubu26:/gvis/script/proc# systemd-analyze
Startup finished in 2.011s (kernel) + 2.121s (initrd) + 3.198s (userspace) = 7.331s
multi-user.target reached after 3.197s in userspace. ⭐️変更できた
root@nafslinux-ubu26:/gvis/script/proc#
必要モジュールの設定#
母艦の機能をセットアップしてく。dockerでhello worldいってみよか。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
apt-get update
apt-get upgrade
apt install samba
apt install apache2
apt install rclone
apt-get update
apt-get install -y ca-certificates curl gnupg
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc
echo \
"deb [arch= $( dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$( . /etc/os-release && echo " $VERSION_CODENAME" ) stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
apt-get update ⭐️忘れんように!
apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
docker run hello-world ⭐️テスト!
一般ユーザでdocker操作できる設定もしとく。
1
2
nari@nafslinux-ubu26:~$ sudo usermod -aG docker $USER
nari@nafslinux-ubu26:~$
ログインしなおすと、101(lxd),986(docker)ってグループ所属が増えとるのが見える。
1
2
3
nari@nafslinux-ubu26:~$ id
uid= 1000( nari) gid= 1000( nari) groups= 1000( nari) ,4( adm) ,24( cdrom) ,27( sudo) ,30( dip) ,46( plugdev) ,100( users) ,101( lxd) ,986( docker)
nari@nafslinux-ubu26:~$
rcloneの設定#
設定ファイルの$HOME/.config/rclone/rclone.cnfをコピって動かす。
手動で設定やる
と面倒。
googleのアカウント設定で承認とか、APIからパスフレーズ取ってくるとかもやらずに済む。
運用スクリプトから呼び出してる処理でgoogledriveの一覧表示させる箇所を手動で動かして動作確認。
1
2
3
4
5
nari@nafslinux-ubu26:~$ rclone --config /home/nari/.config/rclone/rclone.conf lsl GoogleDrive:/ | more
6545998810 2026-07-26 07:29:39.325000000 configBackup/15_kubernetes/kubernetes.zip
74700452 2026-07-26 07:34:47.082000000 configBackup/03_naFSlinux/nariHome.zip
8337214448 2026-07-26 07:34:42.954000000 configBackup/03_naFSlinux/nariDocs.zip
:( 中略)
gcloudの導入#
googleの自分のリソース使えるようにcli使えるようにしてく。
OSの一般ユーザでgcloud initを手動でやる。
やり方書いてあるページあるからやってみよか。
gcloud CLI をインストールする | Google Cloud SDK Documentation
macのchromeで承認したら使えるようになった。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
nari@nafslinux-ubu26:~$ gcloud init --console-only ⭐️cuiやからコマンドライン承認のオプションつける
Welcome! This command will take you through the configuration of gcloud.
Your current configuration has been set to: [ default]
You can skip diagnostics next time by using the following flag:
gcloud init --skip-diagnostics
Network diagnostic detects and fixes local network connection issues.
Checking network connection...done.
Reachability Check passed.
Network diagnostic passed ( 1/1 checks passed) .
You must sign in to continue . Would you like to sign in ( selecting "Y" will display a link that can
be opened in your browser to complete authentication) ( Y/n) ? Y
Go to the following link in your browser, and complete the sign-in prompts:
https://accounts.google.com/o/oauth2/auth?xxx ⭐️長〜いURLをmac側のchromeに貼り付けて開いて確認コードをコピーする
:( 中略)
Once finished, enter the verification code provided in your browser: ⭐️ここに確認コードを貼り付ける
You are signed in as: [ xxxx@gmail.com] .
Pick cloud project to use:
[ 1] gvis-XXXXXXXXXXXXX
[ 2] Enter a project ID
[ 3] Create a new project
Please enter numeric choice or text value ( must exactly match list item) : 1
Your current project has been set to: [ gvis-XXXXXXXXXXXXX] .
Your project default Compute Engine zone has been set to [ us-east1-b] .
You can change it by running [ gcloud config set compute/zone NAME] .
Your project default Compute Engine region has been set to [ us-east1] .
You can change it by running [ gcloud config set compute/region NAME] .
Created a default .boto configuration file at [ /home/nari/.boto] . See this file and
[ https://cloud.google.com/storage/docs/gsutil/commands/config] for more
information about configuring Google Cloud Storage.
The Google Cloud CLI is configured and ready to use!
* Commands that require authentication will use xxxx@gmail.com by default
* Commands will reference project ` gvis-XXXXXXXXXXXXX` by default
* Compute Engine commands will use region ` us-east1` by default
* Compute Engine commands will use zone ` us-east1-b` by default
Run ` gcloud help config` to learn how to change individual settings
This gcloud configuration is called [ default] . You can create additional configurations if you work with multiple accounts and/or projects.
Run ` gcloud topic configurations` to learn more.
Some things to try next:
* Run ` gcloud --help` to see the Cloud Platform services you can interact with. And run ` gcloud help COMMAND` to get help on any gcloud command.
* Run ` gcloud topic --help` to learn about advanced features of the CLI like arg files and output formatting
* Run ` gcloud cheat-sheet` to see a roster of go-to ` gcloud` commands.
nari@nafslinux-ubu26:~$
gcloudの設定生きてるか確認する。
1
2
3
4
5
6
7
8
9
10
11
nari@nafslinux-ubu26:~$ gcloud config list ⭐️確認してみる
[ compute]
region = us-east1
zone = us-east1-b
[ core]
account = xxxx@gmail.com
disable_usage_reporting = True
project = gvis-XXXXXXXXXXXXX
Your active configuration is: [ default]
nari@nafslinux-ubu26:~$
.bashrcにエイリアス入れとく#
コマンドラインにエイリアスとか、運用スクリプトにパス通す設定とか入れとく。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
alias dff= 'df -h | grep -v DockerSys | grep -v "dev/loop" | grep -v tmpfs | grep -v credentials'
alias tree= "pwd;find . | sort | sed '1d;s/^\.//;s/\/\([^/]*\) $/|--\1/;s/\/[^/|]*/| /g'"
alias sc= 'cd /gvis/script'
alias doc= 'cd /nari/nariDocs'
alias dk= 'cd /docker'
# 配下の.DS_Storeと._xxx を削除
function removegomi () {
find . \( -name '.DS_Store' -or -name '._*' -or -name '.smbdelete*' \) -delete -print;
}
alias rmgomi= removegomi
PATH= /gvis/script/proc:$PATH:$HOME/bin
export PATH
postfixでメール飛ばす設定#
postfixをインストールしたときは設定せんかったけど、メールをリレーできるように対話画面出す。
サテライトとか選んで適当にやってる。
1
sudo dpkg-reconfigure postfix
あとは
このへん
の設定やっとく。
/etc/postfix/main.cf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_security_level=may
smtp_tls_CApath=/etc/ssl/certs
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = nafslinux-ubu26 ⭐️ホスト名変えた
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mydestination = $myhostname, nafslinux-ubu24, localhost.localdomain, , localhost
relayhost = [smtp.lolipop.jp]:587 ⭐️gemini先生に聞いたらカッコ使うのが正解ってさ
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
smtp_tls_security_level = encrypt
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd ⭐️用意しといた
smtp_sasl_security_options = noanonymous
smtp_sasl_mechanism_filter = plain
sender_canonical_maps = hash:/etc/postfix/sender_canonical ⭐️このファイル指定つけてmapしとかんとsmtp認証うまくいかん
sender_canonicalのファイルは作ったらpostmap /etc/postfix/sender_canonicalってやっとく必要ある。
/etc/postfix/sender_canonical
1
2
nari@nafslinux-ubu26 sales@gavann-it.com
root@nafslinux-ubu26 sales@gavann-it.com
状態確認でsystemctl status postfixってやって警告とか出とらんかったらええ。
1
2
3
8月 01 03:39:48 nafslinux-ubu26 systemd[ 1] : Starting postfix.service - Postfix Mail Transport Agent ( main/default instance) ...
8月 01 03:39:48 nafslinux-ubu26 postfix/master[ 6988] : daemon started -- version 3.10.6, configuration /etc/postfix
8月 01 03:39:48 nafslinux-ubu26 systemd[ 1] : Started postfix.service - Postfix Mail Transport Agent ( main/default instance) .
ただし、こういう警告は出る。
1
8月 04 05:54:54 nafslinux-ubu26 postfix/postfix-script[ 2685] : warning: not owned by root: /var/spool/postfix/etc/resolv.conf
gemini先生に聞いたら「システム構成上発生する「無視して問題ない軽微な警告」です。」やってさ。
ホンマかな? しばらく様子見しとこ。
beckyで見たらメール来てた。
ログはsyslog使わんようになったらしくjournalctl -u postfix -n 10 --no-pagerとかで確認すればええ。
docker環境の展開#
dockerの永続化領域とcompose.yaml引っ越しをやってく。
sambaを先に有効にしといてwindowsから接続し、左のubuntu24を右のubuntu26のにコピーする。
永続化領域はnariDockerDatで、中にmariadbやらdjangoのデータが入ってて、所有権やアクセス権崩したくないからtar.gzで固めてからコピーして展開する。
dockerのサービスにnariDockerSysのフォルダ使うよう設定しといたら、/var/lib/dockerの中は完全削除。
コンテナのビルドと利用#
このへん
の方法でビルドしてく。
mariadb/django/ssl/xrdp/oracle21のコンテナをビルドして稼働。
xrdpはブラウザ設定とかvscodeの設定とか手動設定してからイメージ作る。いったんubuntu24のxrdpそのままにしといて別の日に26に上げてく。
oracleのコンテナイメージはビルドに少し手間がかかるのと待ってる時間もある。
できたdockerイメージはこんな感じ。
1
2
3
4
5
6
7
8
9
10
11
12
13
root@nafslinux-ubu26:/docker# docker images
i Info → U In Use
IMAGE ID DISK USAGE CONTENT SIZE EXTRA
docker-sv_jupyter:latest b81209a3027c 690MB 0B U
gvis-ubu24:24gvis 37da24835f34 5.43GB 0B U
mariadb:11.4-noble 5eb84d23187c 334MB 0B U
oracle/database:21.3.0-ee 8b6aeb83ad45 7.94GB 0B U
osixia/openldap:latest 31d1d6e16394 257MB 0B U
osixia/phpldapadmin:latest dbb580facde3 309MB 0B U
steveltn/https-portal:1 501fc63961ee 347MB 0B U
sv_django:5 667a2478007a 1.22GB 0B U
ubu:24gvis 6dc67ff683a8 4.22GB 0B U
root@nafslinux-ubu26:/docker#
コンテナも元気に動いてくれる。
マシン変えてもちゃんと動くし冪等性って楽やわぁ。
1
2
3
4
5
6
7
8
9
10
11
root@nafslinux-ubu26:/docker# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
152e95713f90 osixia/phpldapadmin:latest "/container/tool/run" 3 minutes ago Up 3 minutes 0.0.0.0:11801->80/tcp, [ ::] :11801->80/tcp, 0.0.0.0:11802->443/tcp, [ ::] :11802->443/tcp svldap-admin
37ca61c7ce0c mariadb:11.4-noble "docker-entrypoint.s…" 3 minutes ago Up 3 minutes 0.0.0.0:13306->3306/tcp, [ ::] :13306->3306/tcp docker-sv_mariadb1104-1
82c59ecf1272 steveltn/https-portal:1 "/init" 3 minutes ago Up 3 minutes ( healthy) 0.0.0.0:30080->80/tcp, [ ::] :30080->80/tcp, 0.0.0.0:30443->443/tcp, [ ::] :30443->443/tcp docker-sv_https-portal-1
3019499840d3 sv_django:5 "supervisord -n" 3 minutes ago Up 3 minutes 0.0.0.0:38080->8080/tcp, [ ::] :38080->8080/tcp docker-sv_django-1
20c27e083708 docker-sv_jupyter "jupyter-lab --allow…" 3 minutes ago Up 3 minutes 0.0.0.0:21088->8888/tcp, [ ::] :21088->8888/tcp docker-sv_jupyter-1
d215b9b1b751 osixia/openldap:latest "/container/tool/run" 3 minutes ago Up 3 minutes 0.0.0.0:11389->389/tcp, [ ::] :11389->389/tcp, 0.0.0.0:11636->636/tcp, [ ::] :11636->636/tcp svldap-server
a616ea29b901 oracle/database:21.3.0-ee "/bin/sh -c 'exec $O…" 3 minutes ago Up 3 minutes ( healthy) 0.0.0.0:31521->1521/tcp, [ ::] :31521->1521/tcp, 0.0.0.0:35500->5500/tcp, [ ::] :35500->5500/tcp, 0.0.0.0:35501->5501/tcp, [ ::] :35501->5501/tcp docker-sv_ora21-1
e8fc605986fb gvis-ubu24:24gvis "/usr/bin/run.sh nar…" 2 hours ago Up 3 minutes 0.0.0.0:33389->3389/tcp, [ ::] :33389->3389/tcp docker-cl_ubu24gvis-1
root@nafslinux-ubu26:/docker#
永続化領域の謎#
前から疑問に思ってたことをgemini先生に聞いてみた。
docker用に置いてる永続化領域のマウントポイントがdf/duで数字違うのと、vmdkのサイズの関係。
1
2
3
4
5
6
7
8
9
10
11
12
ubuntu26でdocker動かしているとき、dfで見たディスクの消費量とduで見た消費量に差異があるのはなぜか。
root@nafslinux-ubu26:/gvis/script# dff
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/ubuntu--vg-ubuntu--lv 194G 8.8G 176G 5% /
/dev/sda2 2.0G 129M 1.7G 8% /boot
/dev/sdb1 98G 36G 58G 39% /docker ⭐️なんでか36GBってある
/dev/sdc 5.9T 2.3T 3.3T 41% /nari
root@nafslinux-ubu26:/gvis/script# du -shc /docker
52G /docker ⭐️52GBが正解とちゃうんかな
52G total
root@nafslinux-ubu26:/gvis/script#
そうや、オーバーレイのこと忘れとった。
1
2
3
4
5
6
7
8
df の表示(使用量: 36G)に対して du の表示(使用量: 52G)が大きい、
あるいは数値が食い違う主な原因は、Docker(OverlayFS)による
バインドマウントやオーバーレイ構造を du が二重に計算してしまうこと、
および 削除済みファイルの参照保持 によるものです。
:(中略)
一方、df はファイルシステム(/dev/sdb1)のブロック使用量を直接カーネルから取得するため、
df(36G)の数値が実際の物理ディスク消費量として正確です。
:(中略)
おいおい、vmwareでマウントさせてるdockerの永続化領域は52GB使ってるのにdfのほうがディスク消費量正しいって何やねん。
ファイルシステムで消費しているサイズは52GBなんやけど、たぶん肥大化してるんやな。
zerofreeってのを入れて使うらしいんやけど入ってた。
1
2
3
4
5
6
7
8
9
root@nafslinux-ubu26:/gvis/script# apt install -y zerofree
zerofree はすでに最新バージョン ( 1.1.1-1build6) です。 ⭐️入ってるってさ
zerofree は手動でインストールしたと設定されました。
Summary:
Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 2
root@nafslinux-ubu26:/gvis/script# dd if = /dev/zero of= /docker/zero.fill bs= 1M status= progress ⭐️ゼロ埋めしてみる
65810726912 bytes ( 66 GB, 61 GiB) copied, 29.0049 s, 2.3 GB/sdd: IO error: No space left on device
root@nafslinux-ubu26:/gvis/script# rm -f /docker/zero.fill
root@nafslinux-ubu26:/gvis/script#
いったんホストを停止してディスクの圧縮ボタンを押す。
圧縮終えてサイズ見たら縮んだ。dfの数字に近づいてくれて疑問が解けた。
ssdの容量苦しくなったら、やることにするか。
データ用vmdkのマウント#
windowsのvmwareで、ubuntu24にくっつけてたvmdkをubuntu26につける。
万が一失敗とか破損があったときのため、クラウドへの退避先に保存する処理は別でやっとく。
ユーザIDの番号がそろってたら完全に所有権一致して使える。
ubuntu24はipアドレスを予備のもんに変更して、ubuntu26を母艦用のipに変更する。
cuiではnetplanって仕組みにある定義を変更する。
1
2
3
4
5
6
7
8
9
10
11
12
13
root@nafslinux-ubu26:/gvis/script# cd /etc/netplan
root@nafslinux-ubu26:/etc/netplan# ls
00-installer-config.yaml 00-installer-config.yaml.org
root@nafslinux-ubu26:/etc/netplan# ls -l
total 8
-rw------- 1 root root 374 Aug 4 04:40 00-installer-config.yaml
-rw------- 1 root root 374 Jul 29 06:16 00-installer-config.yaml.org
root@nafslinux-ubu26:/etc/netplan# diff 00-installer-config.yaml 00-installer-config.yaml.org
6c6
< - 192.168.1.118/24 ⭐️母艦用のip
---
> - 192.168.1.108/24 ⭐️さっきまでの予備ip
root@nafslinux-ubu26:/etc/netplan#
宅内ルータのdnsで名前解決されるから、teratermマクロの接続先も新しいほうに向いていく。
macには.ssh/known_hostsにある記述をいったん削っとくのと、ubuntu24/26のリソース配分(メモリとCPUコア)もひっくり返す。
ここまで2日目。それほど大きなトラブルないやん。
windowsから利用#
samba共有の設定少し変えたのでメモ。
zipうまくできるか#
ubuntu22から24に切り替える時、
zipがうまいこと動かん
ことあった。
バックアップ領域にあるデータをzipで固められるか。
1
2
3
4
5
6
7
nari@nafslinux-ubu26:/nari/GVIS/98_backup$ zip -r -P aaa _GVIS.zip ./Maimai_backup/
adding: Maimai_backup/ ( stored 0%)
adding: Maimai_backup/Desktop/ ( stored 0%)
:( 中略)
adding: Maimai_backup/nari/icons/folderredgoogledrive_93221.ico ( deflated 95%)
adding: Maimai_backup/nari/DailyGCPcopy.xml ( deflated 76%)
nari@nafslinux-ubu26:/nari/GVIS/98_backup$
おお、行けた。
「*** buffer overflow detected ***: terminated」って表示されん。
sambaが居眠りする#
メール見る時、beckyはsambaで共有したドライブ領域にexeファイル置いてて、メールデータもsmb共有の中に置いてる。
アプリのインストールなしで、vscode/a5sql/becky/winmergeがすぐに使えてる。
becky開いて30分ぐらい放置したとき、次にメール受信してディスクを読ませようとしたら一瞬固まったみたいになる。
たぶん省電力のためにディスク止めたりしとるんかも。スピンダウンっていうんかな。
タブレットとかやないんやから居眠りせんと常にフルパワーで働けよな。
gemini先生に相談して対策やってみた。
ubuntu24では気にならへんかったから、vmwareの設定は関係ないやろし、windows側のnic設定が省電力モードとかにはなってへんはず。
あとファイル状態がちゃんと見えへんことあったからキャッシュ無効化する。
ubuntu26の設定とsambaの設定を足してしばらく様子見。
1
2
3
4
5
6
7
8
9
10
# systemdのサスペンド・ハイバネーション機能を完全無効化
sudo systemctl mask suspend.target hibernate.target hybrid-sleep.target suspend-then-hibernate.target
# hdparmをインストール(未導入の場合)
sudo apt update && sudo apt install -y hdparm
# ディスクのスピンダウン(APM)を無効化(-B 255)
# ディスクの省電力タイマーをオフ(-S 0)
sudo hdparm -B 255 /dev/sda
sudo hdparm -S 0 /dev/sda
viでsambaの設定いじる。
/etc/samba/smb.conf
1
2
3
4
5
6
7
8
9
[global]
# クライアントとの接続状態を維持(ソケットオプション)
socket options = TCP_NODELAY SO_KEEPALIVE
# デッドタイム(切断判定時間)を無効にする(0 = 無限に維持)
deadtime = 0
# ディレクトリキャッシュを無効化
directory cache = no
samba再起動したら居眠りせんようになった。ちゃんと働いてくれたらええねん。
apacheの確認#
apache2で映画置き場にあるムービー開いたらちゃんと表示できるし、音も鳴ってる。
mp4化したisoファイルを開いてみる。
ちょっと脱線。
ジブリの映画で「時には昔の話を」って曲が流れる話がある。「紅の豚」はストーリーもよかったな。
エンディングのメロディーがなぜか泣けるめっちゃええ曲。
youtube探したらロックでアレンジしたのを置いてる人がいた。
VIDEO
いい曲はAIでアレンジ変えてロックになってもいい曲。
サビの声の割れ方オモロイけど、字幕で流れる歌詞がむちゃくちゃやな。
VIDEO
ここまで3日目。
google cloud利用#
もうgcloud initできてるし、動かしてつないでみる。
google cloudへの接続#
普段は運用スクリプトをteratermマクロで動かしてるから一瞬で終わるけど、母艦の引っ越しなので1つずつ確認してく。
使ってる運用スクリプトは変えてない。
1
2
3
4
5
6
7
8
nari@nafslinux-ubu26:/gvis/script/gcp$ cat 101_Start-gvis-nalinux.sh
date >> /gvis/log/003_gcpLog.log
echo '++++++before Start status++++++' >> /gvis/log/003_gcpLog.log
gcloud compute instances list >> /gvis/log/003_gcpLog.log
gcloud compute instances start numbat-fslinux >> /gvis/log/003_gcpLog.log
echo '++++++after Start status++++++' >> /gvis/log/003_gcpLog.log
gcloud compute instances list >> /gvis/log/003_gcpLog.log
nari@nafslinux-ubu26:/gvis/script/gcp$
動かしてから起動状態見てみる。
1
2
3
4
nari@nafslinux-ubu26:/gvis/script/gcp$ gcloud compute instances list
NAME ZONE MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS
numbat-fslinux xxxxxxxxxx e2-standard-8 xx.xx.xx.xx xx.xx.xx.xx RUNNING
nari@nafslinux-ubu26:/gvis/script/gcp$
母艦のローカルlinuxでポートフォワーディングして、gcpのlinuxのdockerコンテナに接続してる。
ポートフォワーディングの運用スクリプトはこんな感じ。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
nari@nafslinux-ubu26:/gvis/script/gcp$ cat 301_ssh-tunnelCreate.sh
## SSH option
## -N : non command-line
## -f : background
## -C : compress
gcloud compute ssh numbat-fslinux \
--project xxxxxxxxx \
--zone xxxxxxxxx \
--ssh-key-file= /gvis/script/gcp/privateKEY \
-- -N -f -C \
-L nafslinux.intra.gavann-it.com:53306:gcp-gvis-dklinux.intra.gavann-it.com:13306 \
-L nafslinux.intra.gavann-it.com:53389:gcp-gvis-dklinux.intra.gavann-it.com:33389
nari@nafslinux-ubu26:/gvis/script/gcp$
ポートフォワーディングして、システム状態確認の運用スクリプトにあるプロセス確認だけ動かしたらこうなる。
1
2
3
4
nari@nafslinux-ubu26:/gvis/script$ ps -ef | grep ssh | grep gvis | awk '{print $29 "\n" $31 "\n" $33 "\n" $35 }'
nafslinux.intra.gavann-it.com:53306:gcp-gvis-dklinux.intra.gavann-it.com:13306
nafslinux.intra.gavann-it.com:53389:gcp-gvis-dklinux.intra.gavann-it.com:33389
nari@nafslinux-ubu26:/gvis/script$
windows/macからubuntu26へtcp53389へxrdp接続して普通にxrdpコンテナ使えたし、コンテナの中でfirefox/chrome使ってネットやdjangoアプリもssl経由で使えた。
a5sqlからubuntu26へtcp53306接続したらmariadbのデータも読めた。
しっかしgoogle cloudの中のネットワークは速いなぁ。下りで3361Mbpsってなんやねん。
gcpの停止とバックアップ処理は割愛するけど、エラーなく終わってた。
ここまで4日目。
本番データを展開できるか#
バックアップはgoogle driveに入ったファイル類原本とdockerの永続化領域をcyberduckで母艦にダウンロードしておく。
ダウンロードした結果がコレ。
1
2
3
4
5
6
7
8
nari@nafslinux-ubu26:/nari/nariHTTP/configBackup/01_gcp-gvis-dkLinux$ ls -lh
total 8.8G
-rwxr--r--+ 1 nari nari 1.2G Aug 2 08:16 Docker.zip
-rwxr--r--+ 1 nari nari 21M Aug 2 08:10 gvis_conf.zip
-rwxr--r--+ 1 nari nari 2.6M Aug 2 08:10 log.zip
-rwxr--r--+ 1 nari nari 7.7G Aug 2 08:21 nariDocs.zip
-rwxr--r--+ 1 nari nari 15M Aug 2 08:10 script.zip
nari@nafslinux-ubu26:/nari/nariHTTP/configBackup/01_gcp-gvis-dkLinux$
このzip使ってgcpのdockerコンテナの永続化領域を母艦に展開する。
毎度やってるけどwinmergeとかdiffで比べながら更新対象やその他のファイルが維持できてるか確認しながら使う。
1
diff -r /nari/nariDocs/smb/svm/Public /nari/nariHTTP/temp/smb/svm/Public
mariadbのデータ維持具合を確認するときはa5sqlからSQLを投げてみる。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
-- dbmsのバージョン
select @@ version ;
-- mariadbに対するオプション指定の確認
SHOW VARIABLES LIKE 'max_allowed_packet' ;
-- mariadbのテーブル確認
SHOW tables ;
-- データ入ってる件数の確認
SELECT count (* ) FROM GVIS_keihi ;
-- betweenで月指定変えながら、経費テーブルに特定の日付のデータ入ってるか確認
SELECT * FROM GVIS_keihi
WHERE year (workPeriod) = 2026 and month (workPeriod) between 07 and 08
order by workPeriod desc , workShubetsu, workPriority ;
-- 支払った消費税が入ってるか確認
select Kamoku,Tax8Kng,Tax10Kng from GVIS_keihi where Tax8Kng > 0 or Tax10Kng > 0 ;
ubuntu26のmariadbコンテナにつなぐ。
件数と金額が完全一致するのは今回も同じ。
ここまで5日目。
ところが6日目になって、普段やってるバックアップ処理を1時間ほどかけて動かしてみたら、tar.gzやzipの処理でときどきイーサネットカードがハングしてまうことがわかった。
vmxファイルをOSインストール直後に書き換えるの忘れてたのと、イーサネットのオフロード問題があったからvmxの書き換え内容を追加してこのメモ書き直した。
着手して他のことしてた日もあるから、実際の期間は10日ぐらいかかった。
設定のバックアップ#
いろいろ設定したしバックアップ作っとく。
1
2
3
4
5
6
7
8
9
10
root@nafslinux-ubu26:/gvis/gvis_conf/_old/20260809# ll
total 88
drwxr-xr-x 2 root root 4096 Aug 9 03:10 ./
drwxrwxr-x 3 nari nari 4096 Aug 9 02:51 ../
-rw-r--r-- 1 root root 37569 Aug 9 03:00 apache2.tar.gz
-rw-r--r-- 1 root root 19447 Aug 9 03:06 linux.tar.gz
-rw-r--r-- 1 root root 688 Aug 9 02:56 logrotate.tar.gz
-rw-r--r-- 1 root root 6695 Aug 9 03:10 postfix.tar.gz
-rw-r--r-- 1 root root 4305 Aug 9 03:08 samba.tar.gz
root@nafslinux-ubu26:/gvis/gvis_conf/_old/20260809#
それぞれは設定した内容が入ってるから、バックアップ取って維持してく。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
root@nafslinux-ubu26:/gvis/gvis_conf/_old/20260809# for f in *.tar.gz; do echo "=== $f ===" ; tar -ztvf " $f" ; echo "" ; done
=== apache2.tar.gz ===
drwxr-xr-x nari/docker 0 2026-08-09 02:59 apache2/
:(中略)
-rw-r--r-- root/root 7178 2026-07-07 00:33 apache2/apache2.conf.org
-rw-r--r-- root/root 7817 2026-08-04 06:27 apache2/apache2.conf
:(中略)
=== linux.tar.gz ===
drwxr-xr-x root/root 0 2024-06-21 03:45 linux/
-rw-r--r-- root/root 87319 2026-08-09 03:05 linux/811_dpkg-query.txt
-rw-r--r-- root/root 411 2026-07-29 06:17 linux/hosts.allow
-rw-r--r-- root/root 711 2026-07-29 06:17 linux/hosts.deny
-rw-r--r-- root/root 348 2026-08-09 03:02 linux/hosts
=== logrotate.tar.gz ===
drwxr-xr-x root/root 0 2026-08-09 02:52 logrotate/
-rw-r--r-- root/root 591 2026-08-08 08:39 logrotate/logrotate.conf
drwxr-xr-x root/root 0 2026-08-09 02:55 logrotate/logrotate.d/
-rw-r--r-- root/root 644 2026-08-08 08:37 logrotate/logrotate.d/gvislog
=== postfix.tar.gz ===
drwxr-xr-x root/root 0 2026-08-09 03:09 postfix/
:(中略)
-rw-r--r-- root/root 1590 2026-08-01 06:22 postfix/main.cf
-rw------- root/root 12288 2026-08-04 05:41 postfix/sender_canonical.db
-rw-r----- root/root 12288 2026-08-01 06:28 postfix/sasl_passwd.db
drwxr-xr-x root/root 0 2026-05-06 00:45 postfix/postfix-files.d/
-rw-r--r-- root/root 3136 2026-08-01 02:45 postfix/main.cf.org
-rw------- root/root 74 2026-08-01 06:28 postfix/sasl_passwd
-rw-r--r-- root/root 2455 2026-05-06 00:45 postfix/main.cf.proto
drwxr-xr-x root/root 0 2026-05-06 00:45 postfix/sasl/
-rw-r--r-- root/root 7335 2026-05-06 00:45 postfix/master.cf.proto
-rw-r--r-- root/root 7335 2026-07-30 04:56 postfix/master.cf
-rw------- root/root 83 2026-08-04 05:40 postfix/sender_canonical
=== samba.tar.gz ===
drwxr-xr-x root/root 0 2026-08-09 03:08 samba/
-rw-r--r-- root/root 8 2026-03-19 05:21 samba/gdbcommands
-rw-r--r-- root/root 11818 2026-08-08 05:20 samba/smb.conf
-rw-r--r-- root/root 9164 2026-07-25 00:59 samba/smb.conf.org
root@nafslinux-ubu26:/gvis/gvis_conf/_old/20260809#
別ホスト作るときとか見直すときに使う。
ubuntu26になってみて気づいたこと#
けっこう変わってるんやろけど自分で気づいたこと。
syslogやなくjournal利用#
あんまりテキスト保管せんようになってるみたい。
実務でちょっと前にsmtpサーバ作る場面があって、postfixのログ確認がjournalになっとった。
ログローテートとかどうするんやろ。
使いながら調べてたら、syslogってグループなくなってた。
というかログローテート入ってへんから、自分で維持してるログがローテートできてへんかった。
設定入れて9世代compressつきにしといた。
syslog監視の仕組みいったん停止。
cronない#
crontab設定しようとしたらcronが入ってへんかった。
systemd-timerの利用を主体にしようとしてるらしい。
めっちゃcrontabの定義使ってるからどないしたらええか考えなアカンのかな。
イーサネット落ちた#
vmxのファイルに指定する名前を変えとかんと、勝手にオフロードしてハングすることがあった。
windowsでオフロードふん詰まったことあったような気がするけど、Linuxで今までこんなんなかった。
vmwareダウンロードするの使いづらくなってきたし、そろそろ別のに変えたいけどwindows xpのときのゲームがあるから変えるのめんどくさいねんなぁ。
もうちょっと使ってく。
変わらず使えるdocker#
docker普通に動くのはめっちゃありがたい。まだやってへんけどmicrok8sでkubernetesも使えるみたいやし、vmwareだけやなくてutmのゲストOSでいけるはず。
いつかdocker使えへんようになる日が来るかもしれんけど、そのときがubuntuとサヨナラの日やな。
dockerを使わない次のパラダイム来るやろか。
gemini先生の活用#
めちゃ使う。ググってくれるから広告見ずに済む。
自分でググるのは裏付けを取りたいとき。
ubuntu26でのコマンドライン教えてくれるだけやなく、運用スクリプトの内容もアドバイスしてくれる。
妄言出てくることあるけど、生成AI使うと気づく力を養えるんとちゃうかな。
「生成AIは嘘つき」って言う人がいる。
そうかもしれん。でも人間の役割はその嘘を見抜いた上で活用して、結果を出すことや。
実務ではcopilotでpowershellとか書かせたけど、平気でいっぱい間違いよる。
昔にawk使い始めた時
便利な一行野郎
ってのがあったな。
ユーザーのログイン名リストをソートして出力
1
awk -F: '{ print $1 }' /etc/passwd | sort
こういうのを考えるのはgemini先生にほぼ巻き取られた。