AlmaLinux 8な環境で、
- dnf updateすると- Failed to set locale, defaulting to C.UTF-8と出る、更新はできるけどなんか気持ち悪い。
- ロケールを日本語にしたい- sudo localectl set-locale ja_JP.UTF-8しても- Failed to issue method call: Specified locale is not installed: ja_JP.UTF-8と怒られる。
- localectl list-locales | grep jaに日本語がない
 
といった時に。
主にvagrant up almalinux/8した時用。
解決策
glibcのlangpackを入れる。
$ sudo dnf install glibc-langpack-ja -y
インストールされた。
$ localectl list-locales | grep ja
ja_JP.eucjp
ja_JP.utf8
set-localeが怒られなくなる。
$ sudo localectl set-locale ja_JP.UTF-8
確認
$ localectl status
   System Locale: LANG=ja_JP.UTF-8
       VC Keymap: us
      X11 Layout: us
おまけ
vagrant up almalinux/8した時はタイムゾーンがUTCなので、
$ timedatectl show -p Timezone
Timezone=UTC
必要ならJSTに変えておく。
$ sudo timedatectl set-timezone Asia/Tokyo
$ timedatectl show -p Timezone
Timezone=Asia/Tokyo
Vagrantfileに書いておくと楽
# -*- mode: ruby -*-
# vi: set ft=ruby :
# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what
# you're doing.
Vagrant.configure("2") do |config|
# 中略
  config.vm.provision "shell", inline: <<-SHELL
    dnf install glibc-langpack-ja -y
    localectl set-locale ja_JP.UTF-8
    timedatectl set-timezone Asia/Tokyo
  SHELL
end