Это проще с zsh
:
$ array=(saf sri trip tata strokes)
$ pattern='*tr*'
$ printf '%s\n' ${(M)array:#$~pattern}
trip
strokes
$ {array: #pattern}
: расширяется до элементов массива, которые не соответствуют шаблону. (M)
(для соответствия): возвращает значение оператора : #
, чтобы развернуть его до соответствующих элементов. $ ~ pattern
, вызывает содержимое $ pattern
, который следует использовать в качестве шаблона. CentOS включает SELinux по умолчанию, что накладывает дополнительные ограничения безопасности на систему. Политика по умолчанию в основном охватывает стандартные конфигурации/конфигурации по умолчанию для ограниченного программного обеспечения. Когда доступ запрещен, обычно в журналах аудита создается запись в /var/log/audit/audit.log
.
При использовании съемного носителя следует рассмотреть возможность подключения устройства с опцией контекста SELinux. Таким образом, вы избежите изменения политики SELinux вашей системы и необходимости перемаркировки файловой системы на съемном устройстве. Вы можете использовать samba_share_t
, если вы собираетесь использовать только точку монтирования с samba. Если вы используете/маркируете тип user_home_t
,файлы будут обрабатываться так, как если бы они находились в домашнем каталоге пользователя.
mount -t ext4 /dev/sdb /mnt/ELEMENTERY-1TB \
-o context="system_u:object_r:samba_share_t:s0"
Или в/etc/fstab
UUID=<...> /mnt/ELEMENTERY-1TB/ ext4 defaults,errors=remount-ro,context="system_u:object_r:samba_share_t:s0" 0 1
Если у вас по-прежнему возникают проблемы с SELinux, вы можете использовать audit2why
, чтобы узнать, почему доступ был запрещен, и, возможно, существует ли логическое значение SELinux , разрешающее доступ. Если вам нужно изменить политику SELinux, вы можете использоватьaudit2allow
для создания модуля политики, чтобы разрешить доступ.
Есть также два логических значения samba_export_all_ro
и samba_export_all_rw
, если они включены, разрешают Samba доступ к (и совместное использование )любых файлов. В этом случае это дает samba значительно больший доступ, чем требуется, и поэтому не следует использовать в этой ситуации , так как параметры монтирования можно легко настроить.