Как я могу изменить поведение по умолчанию Ubuntu 12.04 (& 12.10), чтобы предотвратить символическую ссылку из /dev/shm на /run/shm, когда-либо создаваемую при загрузке?
При установке Oracle 11gR2 Express Edition в Ubuntu 12.04, следуя инструкциям Oracle 11gR2 Express Edition в Linux, Ubuntu 11.10 и столкнулись с проблемой целевой памяти Oracle /dev/shm
(как описано в разделе 7. этого руководства), так как /dev/shm
теперь реализован по умолчанию как символическая ссылка, как отмечено в примечаниях к выпуску Ubuntu 11.10 от /dev/shm
в /run/shm
, Символическая ссылка несовместима с тем, что ожидает Oracle, и это приводит к ошибке Oracle (ORA-00845: MEMORY_TARGET) при запуске базы данных.
Раздел 7) "Oracle 11gR2 Express Edition в Linux Ubuntu 11.10 howto" документирует скрипт запуска /etc/init.d/oracle-shm
это предназначено для настройки /dev/shm
использовать Ubuntu /run/shm
Однако, похоже, это не оказывает желаемого эффекта на Ubuntu 12.04 и /dev/shm
установлен не так, как ожидалось - предположительно, он работал на 11.10. Хотя это уже было отмечено и предложены различные решения, я решил обойти проблему немного по-другому, добавив запись в /etc/fstab
и модифицирование /etc/init.d/oracle-shm
Сценарий следующим образом:
Добавление записи для временной файловой системы с общей памятью в
/etc/fstab
скажем (для файла объемом 2 гигабайта)shm /dev/shm tmpfs size=2g 0 0
Изменение
mount
линия в/etc/init.d/oracle-shm
от:rm -f /dev/shm mkdir /dev/shm mount -B /run/shm /dev/shm
просто
rm -f /dev/shm mkdir /dev/shm mount /dev/shm
Несмотря на это, все предлагаемые решения включают в себя отмену поведения Ubuntu по умолчанию при загрузке, сначала удалив символическую ссылку, а затем реализуя желаемое поведение.
Я хотел бы иметь возможность настроить файловую систему с общей памятью раз и навсегда:
Добавление записи для временной файловой системы с общей памятью в
/etc/fstab
скажем (для файла объемом 2 гигабайта)shm /dev/shm tmpfs size=2g 0 0
Удалите существующую символическую ссылку на /dev/shm и создайте как каталог, как sudo.
rm –f /dev/shm mkdir /dev/shm
Монтирование разделяемой памяти временной файловой системы
mount /dev/shm
Это все работает нормально, пока вы не перезагрузите компьютер, после чего символическая ссылка из /dev/shm
в /run/shm
вновь появляется вместо /dev/shm
монтируется как временная файловая система с общей памятью.
Вот тогда вопрос.
Как я могу изменить стандартное поведение Ubuntu 12.04 (& 12.10), чтобы предотвратить символическую ссылку /dev/shm
в /run/shm
когда-либо создавался в первую очередь при загрузке?
действие = показать и перенаправляют =OneiricOcelot/TechnicalOverview# Обновление
1 ответ
В /etc/init/mounted-dev.conf
удалить строку
[ -e /dev/shm ] || ln -s /run/shm /dev/shm