Intereting Posts
Как я могу предупредить о завершении длинной задачи над ssh? Работа с конфликтами GNU Stow Улучшение скорости выполнения сценария яркости экрана Чтобы распечатать время исполнения скрипта из сценария? Lubuntu IP-конфликт как совместить число с% от команды df -k parted – полностью перезаписать USB-устройство Как получить звук, работающий в гостевой системе Windows 10 в VirtualBox (хост Ubuntu)? Получить усеченный файл в NTFS CentOS, как смотреть видео на YouTube с помощью Mozilla Firefox? В emacs существует ли способ Hex редактировать / просматривать буфер без потери информации об отмене? Конфигурирование свойств отображения в openSuse (Gnome), работающем под управлением VirtualBox VM Короткое воспроизведение звука отключено, требуется прогрев или вторичный звук в фоновом режиме Восстановление суперблоков ext4 Как использовать скрипт bash для чтения содержимого двоичного файла?

Почему я не могу подключить «/» внутри пространства имен пользователя?

Почему это не работает?

$ unshare -rm mount --bind / /mnt mount: /mnt: wrong fs type, bad option, bad superblock on /, missing codepage or helper program, or other error. 

Они работают хорошо:

 $ unshare -rm mount --bind /tmp /mnt $ unshare -rm mount --bind /root /mnt $ 

 $ uname -r # Linux kernel version 4.17.3-200.fc28.x86_64 

Разница в том, что / имеет детей монтирует. Внутри пространства имен пользователя вы не можете отделять унаследованные монтирования от их дочерних монтирований. Более очевидным примером является то, что вам не разрешено umount /proc . В противном случае он может внезапно предоставить вам доступ к файлам, которые были скрыты под другими монтируемыми устройствами. Надстройки иногда используются намеренно в качестве меры безопасности.

Вместо этого вы можете создать рекурсивное монтирование, которое сохраняет все дополнительные монтирования:

 $ unshare -rm mount --rbind / /mnt