2011-12-20 2 views
0

Мне нужно создать chroot тюрьму для моей программы. Программе необходимо, чтобы содержимое/dev выполнялось должным образом. Я не хочу копировать содержимое/dev в тюрьме chroot, потому что я хочу избежать дублирования элементов в тюрьме.Как создать ссылку на/dev в chroot тюрьме, которая исключает доказательство?

Я нашел 2 решения этой проблемы, но ни один из них не в полной мере решить мою проблему:

  • Монтаж/Dev: работает, но системный администратор может удалить/Dev, если он удаляет CHROOT острог через «rm -rf». Это плохо ...
  • Символическая ссылка на/dev: не работает, потому что символические ссылки, указывающие за пределами тюрьмы, не работают.

Знаете ли вы решение, которое позволяет избежать дублирования, безопасно удалять и работает?

+0

Какая ОС это? – fge

+0

Более того, вы говорите, что хотите избежать дублирования элементов ... Хорошо, но тогда вы используете только статические двоичные файлы? В противном случае вы не сможете избежать копирования необходимых библиотек в свой chroot. – fge

ответ

0

На Linux:

  • Вы можете монтировать файловую систему Devfs: крепление -t devtmpfs нет/Тюрьма/DEV

На FreeBSD:

  • Вы можете монтировать файловую систему Devfs: mount -t devfs none/jail/dev
  • Или для установки папки (не рекомендуется Ded для разработчика): mount_nullfs/DEV/Тюрьма/DEV

Если вы не хотите, чтобы не было дублирования, необходимо размонтировать, прежде чем удалить острог. Вы можете монтировать только в режиме чтения, но у вас могут быть проблемы с программным обеспечением (зависит от использования тюрьмы).