Когда используешь трепать с или без sudo
есть много ловушек. Например, когда вы вошли в систему как root между
rm -rf ~/bin
и
rm -rf /bin
есть только один персонаж, но эта разница может вас сильно расстроить.
Чтобы немного обезопасить себя от таких бедствий, я использую это в своем /etc/bash.bashrc
(общесистемный .bashrc
):
if [ $UID -ne 0 ]; then
# ask me before deleting
alias rm='rm -i'
else
# do not delete / or prompt if deleting more than 3 files at a time
alias rm='rm -I --preserve-root'
fi
При этом я, по крайней мере, должен подтвердить удаление, прежде чем попаду в беду. Может быть, есть еще более опасные команды, такие как rm ...
Какие самые опасные bash-команды и как защитить себя от повседневных бедствий?
Во-первых, никогда не используйте root для выполнения повседневных команд.
Это лучший способ подвергнуть себя опасности.
Имея это в виду, если вы используете sudo, вы можете фактически ограничить команды И параметры команд, которые пользователь может выполнить с помощью sudo.
Например, в вашем файле sudoers вы можете ограничить использование rm следующим образом:
myuser ALL=(root) NOPASSWD: rm -r
Это означало бы, что myuser можно использовать только sudo как корень и может только выполнить rm с -р вариант.
Файл sudoers также поддерживает регулярное выражение, поэтому вы действительно можете настроить то, что может выполняться при использовании sudo.