crouton startxfce4 から起動した chroot を正しく終了するにはログアウトするといいっぽい

startxfce4 から起動した chroot の終了の仕方がドキュメントをみてもよくわからなかったから crosh から実行するときも -b オプションを利用せずに foreground で起動していたけどそろそろ background で起動させたいのでいろいろやってみると、どうやら chroot 側でログアウト処理を実行すると crouton integration で使われる WebSocket サーバも含めて正しく終了されるっぽいことがわかった。これでいいのかはよくわかってない。

XWindow をあまり利用してこなかったから知らなかったけどターミナルで logout コマンドを実行すると「not login shell」と怒られる。そりゃそうか。軽く調べてみると killall -u $USER でいいって出てくるけど chroot でこれやると終了はできるけど Chromebook 側のユーザのプロセスも合わせて落とされるのでやめたほうがいい。

結局よくわかってないけど素直に GUI のログアウトから実行すればいい。crosh shell から終了できるように crouton にそれ用のコマンドがあってもいい気はする。

GUI のログアウトボタンから何が実行されているかは調べてみてもいいかもしれない。もしくは誰か教えてください。