Исправление Pinkbyte, (текущая версия) :
Если задача делать это интерактивно(то есть защищать только вводимые непосредственно пользователем команды, а не запускаемые им внешние скрипты), то можно поступить например так:
unset rm
ORIG_RM="$(type -p rm)"
function rm() {
[[ $* == *"-rf "* ]] && echo "No!" && return 1
${ORIG_RM} $*
}
Пихаешь это в .bash_profile выбранного пользователя и наслаждаешься. По вкусу можешь приправить проверкой на интерактивность шелла.
Исходная версия Pinkbyte, :
Если задача делать это интерактивно(то есть защищать только вводимые непосредственно пользователем команды, а не запускаемые им внешние скрипты), то можно поступить например так:
unset rm
ORIG_RM="$(type -p rm)"
function rm() {
[[ $* == *"-rf "* ]] && echo "No!" && return 1
echo ${ORIG_RM} $*
}
Пихаешь это в .bash_profile выбранного пользователя и наслаждаешься. По вкусу можешь приправить проверкой на интерактивность шелла.