TL; DR
nsenter を知りませんでした。
本題
nspawn コンテナのパッケージを更新するときにわざわざ
$ machinectl login <コンテナ>
して PolicyKit の諸々を通過した後
# pacmatic -Syu # pacman -Scc # pacman-optimize
などをするのが面倒で、これをなんとかする方法をずっと探していた。そしてそれをやっと見つけた。
util-linux パッケージの中に含まれている nsenter というコマンドを使えば出来る。
参考にしたサイトに掲載されていたやつをほぼマルっとパクって下記を書いた:
update packages for arch linux nspawn container
pacmatic ではなく pacman を使っているのは yes コマンドで問答を潰すにはいささか面倒な事態に陥る事が多々あるため。
余談
nsenter で調べるとこういうことやってる情報がそれなりに出てくる。
わからないことを調べるのにも背景の知識が必要ということがよくわかった。
nspawn でやりたいことを解決するのに詰まったら根底にある namespace とか cgroup まで戻るのが大事。