Как удалить файл в Linux?

«Как удалить файл в Linux?» — вопрос из категории Linux, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Основная команда — rm (remove). Вот ключевые сценарии использования с точки зрения системного администрирования и DevOps:

# Удалить один файл
rm /var/log/old_app.log

# Удалить несколько файлов
rm /tmp/cache1.tmp /tmp/cache2.tmp

# Принудительное удаление без запросов (полезно в скриптах)
rm -f /path/to/lock.file

# Рекурсивное удаление директории и всего её содержимого
rm -rf /data/obsolete_builds/

Критически важные предупреждения для автоматизации:

  • rm -rf — крайне опасная команда. Перед запуском в скрипте всегда дважды проверяйте путь. Известны случаи потери данных из-за ошибок в переменных (например, пустая переменная $DIR в rm -rf $DIR/ может привести к rm -rf /).
  • В Dockerfile старайтесь объединять операции rm в один слой RUN, чтобы уменьшить размер итогового образа:
    RUN apt-get update && apt-get install -y package 
        && ... 
        && rm -rf /var/lib/apt/lists/* /tmp/*
  • В Linux нет "корзины" по умолчанию. Для безопасного удаления в интерактивной работе можно использовать утилиты типа trash-cli или настроить псевдоним alias rm='rm -i', но в скриптах это не применяется.
  • Для безопасного удаления логов в продакшене чаще используется logrotate, а не прямой вызов rm.