Хорошо, найденный ответом. Если autossh называют с-f опцией, он разветвляет себя как демон и выходы родительского процесса. Следовательно init повторно порождает его снова.. и снова....
Я думаю, что не должен был использовать autossh, но просто ssh перепорождение причины сделан init и существует, я предполагаю, никакая потребность в другом autorespawning autossh. Я изменил строку на просто tu:2345:respawn:/usr/bin/ssh -n -N -T -R 6791:localhost:22 me@servername.cz
Также я добавил
ServerAliveInterval 15
ServerAliveCountMax 2
в/etc/ssh/ssh_config для поддержания соединения.
Я думаю, что эта установка могла бы работать вполне прилично.
Можно выполнить в том предотвращении подстановочные знаки sudoers
(но получение состояния состязания вместо этого, которое, кажется, не проблема здесь, хотя) путем помещения шаблонов в файл:
grep -r -f /path/to/file/with/patterns /path/to/restricted-dir
Это может быть вставлено sudoers
.
Другим решением является сценарий обертки (который вставляется sudoers
):
sudo /wrapper/script pattern1 pattern2
Сценарий работал бы как это:
#! /bin/bash
test $# -eq 0 && exit 0 # no arguments
index=0
pattern_args=()
while [ $# -gt 0 ]; do
pattern_args[index]="-e"
((index++))
pattern_args[index]="$1"
((index++))
shift
done
grep -r "${pattern_args[@]}" /path/to/restricted-dir