На моем безголовом сетевом sdf1
накопителе (флеш-карта) смонтирована, как /
и /home
примонтирована lv00
(том LVM, поддерживаемый программным RAID). Чтобы получить доступ к машине при сбое RAID, у меня есть копия моего открытого ключа ssh и т. Д. В /home/foo/.ssh
файловой системе из sdf1
.
Для того, чтобы обновить файлы, которые скрыты конными /home
я обычно перемонтирования lv00
в /mnt/home
, делать то , что я должен делать, а затем перейти lv00
обратно на место.
Есть ли способ добиться этого без размонтирования /home
?
32
mount --bind
, но получил только некоторые замысловатые идеи, которые наверняка сломаются, когда мне это понадобится. Это делает именно то, что мне нужно, и даже может использоваться как постоянное крепление. СпасибоЯ пытался добиться чего-то подобного, но ответ ephemient не объяснил семантику метода. Мне это не удалось, и поэтому я задал практически тот же вопрос ранее здесь, на unix.SE. После комментария я понял это самостоятельно и ответил на него. Это отредактированная версия моего ответа, чтобы вписаться в этот контекст здесь. Я удалил свой другой вопрос (и ответ) в пользу этого.
Вот что я пытался сделать:
Пример дела
кронштейны:
После монтирования у
/
меня есть папка/home/joe
для пользователяjoe
. Как только другое место будет смонтировано (/data
), у меня будет полный набор домашних папок, так что я привязываю их на место (/data/home on /home
). Там есть папка/data/home/joe
, поэтому, если установка/dev/sdb1
удалась, он получит содержимое/data/home/joe
, в противном случае он вернется к/home/joe
(вкл/dev/sda1
!).Когда это удастся, как я могу получить доступ к исходному содержимому
/home/joe
(вкл/dev/sda1
!) Вместо того, чтобы привязать его к месту/data/home/joe
?Решение
На основании комментария Патрика по поводу моего вопроса и решения ephemient (принятый ответ здесь) я придумал следующее.
Это является , по- видимому возможно
mount --bind
(илиmount -o bind
) в родительской папке ( это важная часть ) в безвыходном смонтировать в другом месте и , таким образом , доступ к исходному содержанию. Так что для моего примера, вместо того, чтобы пытаться:(т.е. смонтировать уже смонтированные привязки места в другом месте) мне пришлось:
Так вот что Патрик имел в виду в своем комментарии
Пока у вас есть родительская папка в доступном для привязки месте, она будет работать, хотя и с одним косвенным указанием, как показано выше. Если вы что-то монтируете на привязку,
/
вам не повезло, поскольку нет родительской папки для/
.источник
Вы можете переместить крепление в новое место, не размонтируя его, используя
mount --move
:источник