RHEL7やRHEL8をGUIつきでインストールすると、各ユーザがログインした際に、gnome-initial-setupコマンドが自動起動し、以下の様な表示を行う。
これは設定をすすめればいいだけではあるんだけど、めんどくさい。
Solaris 7以降でも似たような感じで登録要求画面が表示されてたけど、所定の空ファイルを置くことで表示しないようにできたけど、RHELでもできるかな?と調べて見た。
githubにあるgnome-initial-setupのソースコードを調べていくと、HACKINGに情報を発見。
gnome-initial-setup also has a session mode which activates gnome-initial-setup when a user first logs in. The gnome-initial-setup-first-login.desktop in the
xdg autostart directory utilises gnome-session to check if the user has a
gnome-initial-setup-done file in their XDG_CONFIG_DIR if they don’t
gnome-initial-setup will launch with pages that are suitable for a
non-privileged user and on exiting will write the done file.
各ユーザの環境変数 XDG_CONFIG_DIR で定義されたディレクトリ内に「gnome-initial-setup-done」というファイルがあれば良い、ということ。
しかし、Oracle Linux 8で確認してみると XDG_CONFIG_DIRは定義されていない。
XDG_CONFIG_DIR の定義について調べると「XDG Base Directory Specification」に記載があった。
$XDG_CONFIG_HOME defines the base directory relative to which user specific configuration files should be stored. If $XDG_CONFIG_HOME is either not set or empty, a default equal to $HOME/.config should be used.
定義されていない場合は、各ユーザのホームディレクトリ内にある「.config」となるとのこと。
つまり「~/.config/gnome-initial-setup-done」というファイルを作れば良い、ということになる。
というわけで「touch ~/.config/gnome-initial-setup-done」を実行することで、gnome-initial-setupの起動をさせないようにできた。
ここまでで紹介した手順は各ユーザ単位で表示させなくする設定。
全体として表示させなくする設定が無いかを確認。
先ほども参照したHACKINGのgnome-initial-setup-doneの話の直前に情報がいくつか。
/etc/gdm/custom.confの[daemon]セクションに「InitialSetupEnable=True」と書くとgnome-initial-setupが起動する、ということなので、逆に「InitialSetupEnable=False」と書けばいいのかと試してみたけど、ダメでした。
InitialSetupEnable 関連で検索して「Bug 1226819 – gnome-initial-setup cannot be disabled, forces user creation」を発見。
ユーザを作成する際に初期配置するファイルを置く「/etc/skel」ディレクトリ内に「.config/gnome-initial-setup-done」ファイルを作っちゃえばいいんじゃん?という話が・・・確かに!( mkdir -p /etc/skel/.config && touch /etc/skel/.config/gnome-initial-setup-done を実行する)
他に書かれている/etc/xdg/autostart/gnome-initial-setup-copy-worker.desktop と /etc/xdg/autostart/gnome-initial-setup-first-login.desktop ファイルを削除する、というのは若干いきすぎた対応な気がするので、こちらはどうなのかな・・・
その後、RedHatのナレッジに「RHEL7 の初期インストール後の実行から gnome-initial-setup を無効にする」というのがあり対処方法が記されている、と聞きました。
ユーザ毎の対処方法は上で書いた手法でした。システム全体手法は上記では書いてない方法をとっていました。詳細についてはURLを見てください。