Are sharing a memory-mapped file and sharing a memory region implemented based on each other?
В конце концов, /dev/shm
— это просто виртуальный диск.
Does a "memory-mapped file" reside on disk or main memory?
Да!
Части файла, к которым осуществляется доступ, копируются (модулем подкачки )в буферы -, которые представляют собой ОЗУ.
Любые записи в эту память будут немедленно видны в файле, но не будут записаны на физический диск, пока буфер не будет синхронизирован или очищен.
Нет, не рекомендуется.
В общем, у вас будет несколько файловых систем, которые могут использоваться совместно (некоторые даже для чтения -только ), но корневая файловая система не входит в их число. Процесс загрузки системы использует эту файловую систему.
В вашем случае я бы разделил /usr
и, возможно, /opt
. Вы должны хранить отдельно для каждой машины размеры rootfs (на моей машине; просто чтобы дать вам представление об использовании памяти):
15M bin
94M boot
34M etc
778M lib
28M lib64
Вы, вероятно, будете хранить отдельные файлы для каждой машины.
4.9G var
Это потому, что здесь хранятся журналы. Вы не должны смешивать журналирование ваших экземпляров таким образом.
Вы по-прежнему будете делиться
22G usr
4.7G opt
426G home
В соответствии с РЕДАКТИРОВАТЬ 2_
Эта ссылка, которую вы делаете, не будет работать. Вы позволяете /usr
на /dev/sda1
указывать на /mnt/mnt/usr
. Не к /usr
на sdb1, а к /mnt/mnt/usr
.
Однако вы сделали нечто большее; /sbin
все еще должен быть в rootfs. То, что его нет, просто неправильно.
Что вам нужно сделать, так это повторно -установить обе машины (извините ), используя точно такой же установочный носитель и те же параметры.
Машина 1:
Когда появится редактор разделов -, выберите раздел следующим образом:
/dev/sda1
:корневая файловая система(/
)/dev/sdb1
:/usr
/dev/sdb2
:/home
/dev/sdb3
:/opt
Затем установите партию.
Когда машина 1 заработает, выключите ее.
Далее, для машины 2 :точно так же. Убедитесь, что sda — это собственный диск, а sdb — общий диск.
Обратите внимание, что обновление и обновления будут выполняться в рамках PITA, но, поскольку это виртуальная среда, вы можете -время от времени выполнять повторную установку.
____Еще одно редактирование_____
Поскольку debian использует systemd
, описанный метод больше невозможен. См.https://fedoraproject.org/wiki/Features/UsrMoveдля объяснения почему. (Федора,но применимо ко всем дистрибутивам systemd -)