По-перше, ви коректуєте, що semanage fcontext -a -t <type> <filepattern>
робить зміни файлів постійними, додаючи їх до політики - вам потрібно буде відновити повторний зв'язок або restorecon -R -v <filepattern>
застосувати ці зміни. chcon
не змінює політику, лише контекст на диску.
Ви можете створити список відмінностей у вашій політиці з маркуванням matchpathcon
, зокрема:
matchpathcon -V /path/to/file
На жаль, він не має рекурсивного варіанту, ймовірно, через те, що ходити по дереву було б дорого, але ви могли б керувати ним:
find / -exec matchpathcon -V {} \;
Однак будьте обережні. Я вважаю, що пошук обмине всі кріплення файлової системи, включаючи файлові системи без розширених атрибутів (xattrs), що може спричинити проблеми. Звичайно, якщо всі ваші файлові системи мають розширені атрибути, це не проблема.
Коли у вас є цей список, ви зможете написати сценарій, щоб вибрати ті, які ви будете semanage
. Однак я не знаю автоматизованого способу зробити це одним ударом.