Нет, каждое ядро реализует свои собственные функции по-своему. Существует большая часть совместимости с POSIX, но как только вы выйдете из нее, исполняемые файлы должны быть скомпилированы с уже имеющимися механизмами ядра. Многие проекты содержат исходный код, который компилируется только в том случае, если вы явно указываете, что компилируете для FreeBSD или Linux. По сути, это и есть kFreeBSD. Инструменты поддерживают ядро FreeBSD, но для этого они должны быть скомпилированы.
Например, если вы попытаетесь использовать epoll_create
во FreeBSD, все будет работать не так, как ожидалось.
Конечно, вы можете кросс-компилировать инструменты из системы BSD в стиле LFS, но это, вероятно, займет вечность. Не так просто, как просто скомпилировать новое ядро.
Это работает как надо.
man acl
имеет следующее сказать о ACL по умолчанию:
ACL TYPES
Каждый объект может рассматриваться как связанный с ним ACL, который управляет дискреционным доступом к нему. объект; этот ACL называется ACL доступа. Кроме того, каталог может иметь связанный ACL , который управляет начальным ACL доступа для объектов, созданных в этом каталоге ; этот ACL называется ACL по умолчанию.
(выделено мной)
Что вы указали в вашем ACL, так это то, что только владелец имеет права доступа rwx к каталогу. ACL по умолчанию для каталога определяет следующее:
Если вы измените права доступа к родительскому каталогу или добавите ACL группы / пользователя, который разрешает доступ , то все файлы внутри будут работать должным образом.
В вашей системе файлы в /tmp
исчезают при перезагрузке, верно? Возможно, это не лучшее место для постоянного решения. При установке ACL на каталог, который должен применять ACL ко всем новым объектам файловой системы в каталоге, не забудьте установить две маски: (1) маску для самого каталога и (2) маску по умолчанию (для всех новых объектов файловой системы).
setfacl -m u::rwx,g::r-x,o::--- /tmp/test
setfacl -d -m u::rwx,g::r-x,o::--- /tmp/test
Выше, переключатель -m
является маской для /tmp/test
, а переключатель -d
делает эту маску маской по умолчанию для всех новых объектов файловой системы в том же каталоге. Это эквивалентно 0750. Также могут использоваться восьмеричные значения.
Маски пользователя, группы и другие работают аналогичным образом: g:groupname:---
или в комбинации: u:username:---,g:groupname:---,o::---
. Если не указывать имя пользователя или имя группы, маска применяется к текущему владельцу пользователя/группы.
Имейте в виду, что не все программное обеспечение знает ACL. Например, не все клиенты SFTP/SCP знают о них.