操作
20260728 redmineユーザーをcontainer-executerへリネーム¶
タイトルの通り。
ユーザーをリネームするだけだけどpodman周りが詰まった。
現状¶
redmineというユーザーがいてredmineコンテナを動かしている。
他にもコンテナが立つかもしれないので名前をredmineからcontainer-executerへ変更したい。
課題¶
podmanでプロセスを動かしている
解法¶
AI(Gemini)を信じる
作業¶
- /home/redmineやredmineユーザーを参照している箇所の確認
- podmanのコンテナ終了
- redmineユーザーのプロセス終了
- プライマリグループredmineのリネーム
- ユーザー名のリネーム
- ホームディレクトリの移動・コピー
- podmanの立上げ(詰まった)
/home/redmineやredmineユーザーを参照している箇所の確認¶
grep -rli /home/redmine /etc
grep -rli redmine /etc
何かで調べる。関係しそうなのはAIが言ってたもの以外特になかった
podmanのコンテナ終了¶
podman compose stop
redmineユーザーのプロセス終了¶
# ps -u redmine
# loginctl terminate-user redmine
# ps -u redmine
2回目のpsコマンドで何も出ないことを確認する。
プライマリグループredmineのリネーム¶
Geminiの指示通り以下を実行
sudo groupmod -n container-executer redmine
一応、打つ前に意味をチェック
$ groupmod --help
使い方: groupmod [オプション] GROUP
オプション:
-a, --append append the users mentioned by -U option to the group
without removing existing user members
-g, --gid GID グループの ID を GID に変更します
-h, --help このヘルプを表示して終了する
-n, --new-name NEW_GROUP 名前を NEW_GROUP に変更する
-o, --non-unique 他と重なる GID を許可する
-p, --password PASSWORD パスワードをこの (暗号化された) PASSWORD
に変更する
-R, --root CHROOT_DIR chroot するディレクトリ
-P, --prefix PREFIX_DIR prefix directory where are located the /etc/* files
-U, --users USERS list of user members of this group
単なる名前変更なので安心
ユーザー名のリネーム¶
Geminiを信じて以下を打つ:
sudo usermod -l container-executer -d /home/container-executer -m redmine
の前に確認。以下、該当オプションだけヘルプをピックアップします。
$ usermod --help
使い方: usermod [オプション] LOGIN
オプション:
-d, --home HOME_DIR ユーザアカウントのホームディレクトリを
-l, --login NEW_LOGIN ログイン名を変更する
-m, --move-home 現ホームディレクトリの内容を新たな場所に
ホームディレクトリの移動・コピー¶
上の節で実行済み
podmanの立上げ(詰まった)¶
Geminiからのお告げを打っていく。
自動起動できるようにユーザー設定とpodmanがちゃんと動くか確認
# loginctl enable-linger container-executer
$ podman info
Failed to obtain podman configuration: lstat /run/user/1002: no such file or directory
うろたえる。Geminiに一度ログアウトして入りなおせと言われたので実行すると回復
$ podman info
Error: database static dir "/home/redmine/.local/share/containers/storage/libpod" does not match our static dir "/home/container-executer/.local/share/containers/storage/libpod": database configuration mismatch
再びうろたえる。podmanが保持するDB内に/home/redmineへの参照があるらしくエラーになるらしい。
キャッシュ的な情報なので削除してやり直す
rm -rf ~/.local/share/containers/storage
rm -rf /run/user/1002/containers
rm -rf /run/user/1002/podman*
これをしたら
podman info
で情報が出たので
docker compose up -d
でコンテナ立上げ直して終わり
sylow castle さんが20日前に更新 · 1件の履歴