Neden bir kullanıcı ad alanında “/” bağlayamıyorum?


13

Bu neden çalışmıyor?

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

Bunlar işe yarıyor:

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

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

Yanıtlar:


16

Fark, /çocuk bağları olması. Bir kullanıcı ad alanı içinde, devralınan bağları alt bağlarından ayırmanıza izin verilmez. Daha açık bir örnek, izin verilmemenizdir umount /proc. Aksi takdirde, aniden diğer bağlantıların altında gizlenen dosyalara erişmenizi sağlayabilir. Aşırı montajlar bazen kasıtlı olarak bir güvenlik önlemi olarak kullanılır.

Bunun yerine, tüm alt bağlantıları koruyan yinelemeli bir bağlama bağlantısı oluşturmanıza izin verilir:

$ unshare -rm mount --rbind / /mnt
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.