debianи его производные (и, вероятно, большинство других распределений) идут с, busyboxкоторый используется в initramfs.
busybox объединяет большинство основных утилит командной строки в один исполняемый файл.
Вы можете временно использовать символическую ссылку /bin/rmна /bin/busybox:
ln -s busybox /bin/rm
Чтобы получить работу rm(после чего вы можете сделать свое apt-get install --reinstall coreutils).
Тот же самый метод может использоваться для всех других утилит, которые busyboxвключают. Этот список варьируется от одного развертывания к другому. Вы можете получить список с busybox --list.
Однако обратите внимание, что они являются ограниченными версиями соответствующих утилит. Иногда они поддерживают расширения GNU, но, как правило, нет, и некоторые из них даже не поддерживают все стандартные функции / POSIX (некоторые функции могут быть включены / отключены во время компиляции).
В качестве альтернативы вы можете использовать zshвстроенный rm:
#! /bin/zsh
zmodload zsh/files
rm "$@"
zsh/filesМодуль обеспечивает несколько дополнительных встроенных команд ( rm, mv, ln, mkdir, rmdir, chown, chmod, sync). Это полезно в такой ситуации или когда вы не можете разветвлять больше процессов, но у них есть интерактивный zshзапуск.
ksh93также имеет ряд дополнительных / факультативная команд buitin, но не rmсреди них ( basename, chmod, dirname, getconf, head, mkdir, logname, cat, cmp, cut, uname, wc, sync). Вы можете вызвать их с помощью:
command /opt/ast/bin/the-command
в ksh93сценарии.