追加です。 ちょっと専門的なので、気がひけますが Fedora 34 で試しつつ 先日削除した Rocky を再インストールして sudo 関連を再確認しておきました。
/usr/local/texlive/2021 vs /usr/share/texlive
(最近 docker はやっていないので定かではないですが)おそらく texlive を net-install か iso-image でインストールしたものと、dnf(あるいは yum rpm) などで入れたものでしょう。
redhat 系の場合ですとあるディレクトリ・ファイルがどのパッケージで インストールされたものかチェックすることができます。
% rpm -qf /usr/share/texlive /usr/local/texlive/2021 ↓↓↓↓ texlive-base-20200327-28.fc34.x86_64 ファイル /usr/local/texlive/2021 はどのパッケージにも属していません。
パッケージで導入したものが不要であれば「 dnf list --installed 'texlive' 」 などで調べ 「 sudo dnf remove 'texlive'」などで削除しも良いと思います。
sudo mktexlsr すると ...
これは macOS とは違うところなんですが ...
redhat系 debian 系の sudo は、汚染された環境変数 PATH (だけではない ですが)を使わないようにするため、PATH を強制的に安全なものに置き換 えて sudo 以降のコマンドを実行します。
「echo $PATH」を書き込んだファイル test として 「sudo bash test」 と 実行すれば「/sbin:/bin:/usr/sbin:/usr/bin」となります。
要は、/usr/local/texlive 以下などパッケージマネージャが管理していな いところに設置されたものは標準では使用しません。
どうしてもというときは、bash/zsh なら
sudo $(which mktexlsr)
あるいは、実行したものがさらに別のものをという考慮して
sudo PATH=$PATH $(which mktexlsr)
sudo の配慮を無効にしてしまう方法もあります。