Представьте, что вы случайно используете mount --bind
прятаться /bin
так что umount
(и большинство других двоичных файлов) больше не отображается.
Как бы вы вышли из этой ситуации?
Есть ли какой-нибудь способ кроме жесткой перезагрузки?
К счастью /bin
на самом деле довольно маленький, это только самые простые утилиты и оболочки. Пока у вас все еще открыта корневая оболочка, вы сможете использовать инструменты в / usr / bin для загрузки пакета, который должен был монтироваться в вашем дистрибутиве (например, apt-get install -d mount
в Debian), затем извлеките файл из загруженного пакета вручную (dpkg-deb -x mount.whatever.deb /some/temp/folder
), а затем используйте ./umount
в этой папке.
Ха, перезагрузка может даже не сработать, так как для этого могут потребоваться инструменты из /bin
слишком :)
Я предполагаю, что это не сработает:
Я бы просто перезагрузился. В этом нет ничего плохого :)
Если вы не хотите перезагружаться, я бы попытался scp / w получить копию / bin / umount с другого компьютера с той же ОС и запустить ее.
На самом деле, вы, вероятно, могли бы вернуться к тем прекрасным резервным копиям, которые вы храните, и восстановить соответствующие области, которые вам не хватает, если вы не хотите перезагружаться. (лично я бы перезагрузился, чтобы все было в чистоте).
Если ваша корневая файловая система поддерживает снимок, вы можете сделать снимок и скопировать файлы / bin из снимка, который должен быть скопирован в раздел (забыл, что вы не можете его смонтировать).
в противном случае, если у вас есть запасной раздел, вы можете использовать dd, чтобы скопировать туда корневой раздел и таким образом получить обратно файлы / bin. скорее всего с внешним USB-накопителем.
наконец, если ваша сеть работает, вы можете просто скопировать команду из аналогичной системы.