再インストールした方が確実と思いますが、RPM データベースと照合して、足りないディレクトリ、ファイルを手動で作成する方法が考えられます。
(1) 足りないディレクトリ or ファイルを見つける。
(例)
# LANG=C rpm -qaV | grep /var/cache
missing /var/cache/bpf
missing /var/cache/ldconfig
missing /var/cache/realmd
missing /var/cache/libX11
missing /var/cache/libX11/compose
missing /var/cache/PackageKit
missing /var/cache/app-info
missing /var/cache/app-info/icons
missing /var/cache/app-info/xmls
missing /var/cache/httpd
missing /var/cache/httpd/proxy
missing /var/cache/krb5rcache
missing /var/cache/dnf
missing /var/cache/man
missing /var/cache/httpd/ssl
(2) 種類(ディレクトリ、ファイル、リンク、など)とオーナー、パーミッションを確認して、再作成する。
(例: /var/cache/ldconfig の場合)
# rpm -qlvf /var/cache/ldconfig | grep /var/cache
drwx------ 2 root root 0 Jul 21 2020 /var/cache/ldconfig
-rw------- 1 root root 0 Jul 21 2020 /var/cache/ldconfig/aux-cache
# mkdir /var/cache/ldconfig
# chown root:root /var/cache/ldconfig
# chmod 700 /var/cache/ldconfig
# touch /var/cache/ldconfig/aux-cache
# chown root:root /var/cache/ldconfig/aux-cache
# chmod 600 /var/cache/ldconfig/aux-cache
# restorecon -R /var/cache/ldconfig (SELinux が有効なら)
# rpm -qVf /var/cache/ldconfig (Verify)