Файлы спецификаций RPM содержат условные обозначения и переменные, которые могут позволить вам создать RPM, который изменит то, что сделано или установлено, в зависимости от выпуска.
%if 0%{?rhel} = 6
Requires:
%endif
Однако выполнение rpmbuild
не приведет к его отключению. Вам нужно будет использовать mock
. Я настоятельно рекомендую прочитать руководство по скорости вращения Fedora.
https://fedoraproject.org/wiki/How_to_create_an_RPM_package
Что касается вашего другого вопроса, вы не можете предотвратить установку RPM на основе дистрибутива. Как правило, пакет может вызвать блок зависимостей. Зависимость, которая делает это: Требует: redhat-release> = 6.3
.
Думаю, это можно сделать с помощью ssh. Взгляните на переадресацию соединений через ssh.
ssh -R remote_socket:host:hostport
Если, например, ваш веб-серверexample.com
:
ssh -R 8081:localhost:8081 example.com
При запуске на вашем raspberry pi все соединения, указывающие на порт 8081 на вашем веб-сервере, перенаправляются через ssh на ваш raspberry pi.
Я рекомендую сначала попробовать это на другом хосте в вашей локальной сети, чтобы убедиться, что он соответствует вашим потребностям. Из малинового пи:
ssh -R 8081:localhost:8081 other_lan_host
В качестве альтернативы вы можете использовать параметр -L
и запустить команду с хоста локальной сети, который вы тестируете с помощью :
ssh -L 8081:raspberrypihost:8081