LINUX.ORG.RU
решено ФорумAdmin

Смонтированный раздел есть, но его нет, но он есть.

 , ,


0

1

Коллеги, как так может быть? Есть виртуальная машина в облаке. Есть облачный диск, подключённый к ней. Есть докер-контейнеры на этой машине.

А теперь начинаетя магия. Диск должен быть смонтирован в локальную директорию, скажем /files. /files пробрасывается (bind mount) в контейнеры тоже как /files. ВНАЗАПНО хостовый /files пустой, а в контейнерах - не пустой. Попытка монтирования на хосте не выдаёт никаких ошибок, но в списке монтирования /files или устройство не появляются. umount на хосте говоорит, что директория и устройство не смонтированы.

Контейнеры при этом - довольны и счастливы, чего всем желают.

Как так вообще?

оффтоп - а в тематике оказывается можно под анонимусом писать… а я всё забыл, пошёл регистрироваться…

UPD В общем, у нас какие-то проблемы с ФС. Перегрузили машину, отвалилось всё. Смонтировали диск в /mnt/files - работает. Удалили /files, создали заново - не работает. Удалили, сделали симлинк с /mnt/files, контейнеры обновили - пока всё работает. Ночью будем делать fsck.



Последнее исправление: true_old (всего исправлений: 3)

Контейнер запустился раньше чем на хостовой системе смонтировался /files ?

Допустим у нас / на /dev/sda1, а /files - /dev/sda2

Если запустить контейнер(в котором /files с хоста участвует в bind mount) раньше чем /dev/sda2 будет смонтировано, то контейнер будет писать в директорию /files, лежающую на /dev/sda1. Но ее содержимое НЕ будет видно на хостовой системе, т.к. оно будет перекрыто монтированием пустого /dev/sda2 в /files

Попытка монтирования на хосте не выдаёт никаких ошибок, но в списке монтирования /files или устройство не появляются.

Что у тебя в /etc/mtab и есть ли разница с /proc/self/mounts ? На всех современных системах /etc/mtab должен быть симлинком куда-то в /proc, но мало ли...

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

Контейнер запустился раньше чем на хостовой системе смонтировался /files ?

Нет, не думаю. Не похоже. Тогда бы /files был пустой, а там визуально всё было на места.

true_old
() автор топика
Ответ на: комментарий от true_old

Вообще законно ли монтировать туда-сюда-обратно директорию на хосте, которая проброшена в контейнер?

Да. // далее мелким, плохо читаемым шрифтом написано «под Вашу ответственность»

Надо смотреть, что и как «намантировано» в хостовой системе. Бывают разные глюки флуктуации.

Из моего скромного опыта. Один и тот же образ liveUSB linux, один и тот же компьютер. Но «да», разные «сессии». В «живых» системах есть «слой-ФС-с-изменениями» – то, что нужно обычно бекапить. И есть «админ» (я), который «навалял» скрипт для бекапа. Прямо в «том самом» слое… Но… Однажды оказалось, что рабочая директории «не существует», хотя ls и mc были иного мнения. «Ok», подправил скрипт. Работало ещё какое-то время, пока не пришлось вернуться к первоначальному варианту.

От чего это зависит я не понял.

master_0K
()