Если Ваши инструменты являются сценариями, которые содержат команды как
java -jar somejafile.jar
затем необходимо отредактировать их для содержания корректного пути
java -jar /full/path/to/somefile.jar
Я настоятельно рекомендовал бы, чтобы перезагрузка чисто согласовала вещи.
Но если Вы против этого, попробовать umount -l
.
Монтирование чего-то на /
скрывает все существующее монтирование. Для восстановления с этого Вам будет нужен некоторый путь к проблеме a mount
или umount
системный вызов как корень.
Если Вы работаете umount /
с umount
программа от vgpool-lvstuff7
, это собирается перестать работать, потому что объем будет использоваться самой программой, делающей размонтирование. Я думаю umount -l
будет работать: предположение, что нет других программ, работающих от vgpool-lvstuff7
(если будут, уничтожат их сначала), то объем будет размонтирован когда umount
выходы.
Другой потенциальный подход должен играть с mount --bind
и mount --move
. Смонтируйте a tmpfs
файловая система где-нибудь (mkdir /z; mount -t tmpfs scratch /z; mkdir /z/root
) и попытайтесь копировать или создать a mount
программируйте там, и выполнение mount --bind / /z/root
. Объем vgpool-lvstuff7
затем будет доступно в /z/root
. Я не уверен, можно ли переместить корневое монтирование в ту точку все же.
Если у Вас нет доступа к mount
программа, это в порядке, пока у Вас есть способ получить корневую оболочку и к /proc
. Можно получить доступ к исходному корню как /proc/1/root
. Хотя это похоже на бесполезную символьную ссылку на /
, это - на самом деле волшебная ссылка — разыменование, это приносит Вам к фактическому корневому разделу программы с PID 1 (init). Таким образом, Вы будете всегда иметь umount
доступный в /proc/1/root/bin/umount
.
Если Вы не имеете /proc
, другой способ добраться umount
программа должна была бы скопировать его с где-нибудь, или даже просто небольшой двоичный файл, который просто звонит umount
syscall, или Вы могли вызвать syscall с некоторого интерпретируемого языка, такого как жемчуг.
/proc/*/root
! я боюсь в данном случае однако, что это не могло бы быть возможно - после того как Вы монтируете фс только для данных по rootfs, Вы в значительной степени достигли тупика.
– peterph
11.06.2013, 12:02
Проверить /proc/mounts
, нет df
. Это появляется df
перепутан (вероятно, потому что /etc/mtab
является неправильным).
Если они были на самом деле оба смонтированы на /
, затем df
показал бы ту же статистику (размер, используемый, бесплатный, процент) для обоих.
umount -l /
— Я только что протестировал, это на VM — является отличным способом, требуют перезагрузки. По крайней мере, если на самом деле rootfs. – derobert 10.06.2013, 23:18man 2 umount
— фактический вызов к ядру дает точку монтирования. Когда Вы передаете устройство (или маркировка, или безотносительно) к/sbin/umount
, программа переводит его в точку монтирования (через/etc/mtab
, вероятно), и затем передача та точка монтирования кumount2
. – derobert 10.06.2013, 23:35