Sunday, 17 October 2010

chroot: cannot run command `/bin/bash': No such file or directory

С такой проблемой столкнуться очень легко - достаточно удалить пару библиотек внутри системы или VPS. Бороться с напастью мы будем из Debian LiveCD.

Ставим спецовый баш, который не имеет зависимостей - он слинкован статически (и удаленные либы ему безразличны):
apt-get install -y bash-static

Данный пакетик несет в себе множество файлов:
dpkg -L bash-static
/.
/bin
/bin/bash-static
/usr
/usr/share
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/bash-static.1.gz
/usr/share/doc
/usr/share/doc/bash-static
/usr/share/doc/bash-static/copyright
/usr/share/doc/bash-static/changelog.Debian.gz

Но нам нужен лишь один - /bin/bash-static.

Итак, допустим сломанная система смонтирована как /mnt. Тогда нужно сделать следующее:
cp /bin/bash-static /mnt/bin
chroot /mnt /bin/bash-static

Вуаяля, чрут сработал :)

No comments:

Post a Comment

Note: only a member of this blog may post a comment.