Вы получаете эту ошибку, потому что Apache работает не от имени того же пользователя, который запускает этот скрипт в командной строке. Я бы не стал использовать CGI в эти дни. Я бы настроил Mason для работы с FastCGI. Черт, я бы даже отказался от Apache и использовал NGINX. Чтобы решить эту проблему, вам нужно либо
/etc/apache2/envvars
и проверьте переменные APACHE_RUN_GROUP
и APACHE_RUN_USER
На самом деле я нашел 2 интересных репозитория:
$ sudo dnf install https://extras.getpagespeed.com/release-latest.rpm
является коммерческим и требует подписки.
Этот:
$ sudo rpm -ivh http://repo.okay.com.mx/centos/8/x86_64/release/okay-release-1-5.el8.noarch.rpm
также содержит некоторое программное обеспечение и обновления.
Некоторое необходимое программное обеспечение, которое я нашел в Snap:
$ sudo dnf install snapd ... $ sudo systemctl enable --now snapd.socket ... $ sudo snap install snap-store ...
Примечание. :Завершение работы systemctl занимает несколько минут, и вы, вероятно, получите несколько предупреждений SELinux и сообщение:
error: too early for operation, device not yet seeded or device model not acknowledged
В моем случае, после получасового ожидания, перезагрузка и повторная попытка -установки хранилища продолжились, и я смог установить нужные мне пакеты.
Еще одним источником программного обеспечения является Flatpak/Flathub. Я не пробовал, хотя он содержал более старые версии программного обеспечения.
Если вы ищете новейшие и лучшие пакеты, CentOS/RHEL, вероятно, не подходит для вас. Идеология управления версиями пакетов в CentOS/RHEL должна быть прежде всего стабильной -. Это часто означает, что пакеты удерживаются на определенном уровне функций, а из текущей версии переносятся только исправления ошибок.
Запуск более новых пакетов, чем предполагалось разработчиками, может показаться безвредным, и в большинстве случаев так и есть, но всегда есть небольшой шанс, что что-то пойдет не так. В мире Debian это называется созданием FrankenDebian, и это может привести к поломке вашей системы, если внешний репозиторий предложит более новые версии основных библиотек и, таким образом, перезапишет установленные и известные -хорошие. Я часто вижу это, когда пользователи устанавливают программы из внешних репозиториев, которые перезаписывают glibc
, и в этот момент мы обычно просто переустанавливаем всю систему, так как не стоит расхлебывать.
Ниже я приведу ссылку на страницу Don't Break Debian, поскольку она обычно применима к CentOS/RHEL и другим «стабильным» дистрибутивам Linux. В общем, это хороший менталитет, если вы хотите сохранить здравомыслие, работая в Linux.