exec
часто используется в сценариях оболочки, которые в основном выступают в качестве обертки для запуска других двоичных файлов. Например:
#!/bin/sh
if stuff;
EXTRA_OPTIONS="-x -y -z"
else
EXTRA_OPTIONS="-a foo"
fi
exec /usr/local/bin/the.real.binary $EXTRA_OPTIONS "$@"
чтобы после завершения работы обертки "настоящий" двоичный файл перешел к работе, и больше не было никаких следов скрипта-обертки, который временно занимал тот же слот в таблице процессов. Настоящий" двоичный файл является прямым потомком того, что его запустило, а не внуком.
В своем вопросе вы также упоминаете перенаправление ввода-вывода. Это совсем другой случай использования exec
и не имеет ничего общего с заменой оболочки другим процессом. Когда exec
не имеет аргументов, как например:
exec 3>>/tmp/logfile
тогда перенаправления ввода/вывода в командной строке вступают в силу в текущем процессе оболочки, но текущий процесс оболочки продолжает выполняться и переходит к следующей команде в сценарии.
Удалить epel-6
репо
yum remove epel-release
Включить epel-7
репо:
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -ivh epel-release-latest-7.noarch.rpm
или
wget https://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-9.noarch.rpm
rpm -ivh epel-release-7-9.noarch.rpm
отредактируйте файл /etc/yum.repos.d/epel.repo
и убедитесь, что у вас enabled = 1
, или запустите yum-config-manager --enable epel
затем установите openvpn
:
yum update
yum install openvpn easy-rsa
Si tiene la intención de usar yum, es posible que desee omitir el wget y simplemente descargar el paquete con yum. De lo contrario, cuando vuelva a ejecutar yum, recibirá una advertencia sobre la actualización/instalación de paquetes fuera de yum.
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm