Jak przekonać apparmor, aby zezwolił na tę operację?
[28763.284171] type=1400 audit(1344273461.387:192): apparmor="DENIED"
operation="mount" info="failed type match" error=-13 parent=7101
profile="lxc-container-with-nesting" name="/" pid=7112 comm="su"
flags="ro, remount, bind"
Zasadniczo próbuję ponownie zamontować główny system plików tylko do odczytu (w przestrzeni nazw montowania zagnieżdżonej w kontenerze LXC). Konfiguracja to kilka mocowań łączących wokół miejsca kończących się na:
mount --rbind / /
mount -o remount,ro /
Próbowałem każdej kombinacji:
mount options=(ro, remount, bind) / -> /,
Mógłbym wymyślić. Dodanie reguły audit mount,
pokazuje wszystkie inne montowania, które robię, ale nie te, które działają na /. Najbliższe, jakie mogę dostać, to to, mount -> /,
które IMHO jest zbyt luźne. Nawet mount / -> /,
zaprzecza ponownemu podłączeniu (podczas gdy dozwolone jest podłączenie pierwszego wiązania).
Odpowiedzi:
Zgodnie z: http://lwn.net/Articles/281157/
Bindy mają takie same opcje jak oryginał, więc możesz powiązać zamontować kopię rw z / .. chyba, że ponownie zamontujesz całą / do ro .. co, jak sądzę, nie chcesz tego robić.
Musi być w dwóch krokach.
mount --bind /vital_data /untrusted_container/vital_data
mount -o remount,ro /untrusted_container/vital_data
źródło