Відповіді:
Розширені дозволи, такі як списки контролю доступу, встановлені setfaclта встановлені прапорами можливостей setcap, зберігаються там же, що і традиційні дозволи та встановлені [ug] id прапори, встановлені chmod: у вкладці файлу.
(Насправді вони можуть зберігатися в окремому блоці на диску, тому що в inode є фіксований розмір, який має місце для традиційних бітів дозволу, але не для потенційно необмежених розширених дозволів. Але це має значення лише в рідкісних випадках, наприклад, якщо потрібно догляд, який setcapміг би вичерпати місця на диску. Але навіть chmodміг вичерпати місце на диску в системі, яка використовує дедуплікацію!
GNU ls не відображає атрибути setcap для файлу. Ви можете відобразити їх за допомогою getcap. Ви можете перелічити всі розширені атрибути за допомогою getfattr -d -m -; атрибут setcap викликається security.capabilityі кодується у двійковому форматі, який getcapдекодує для вас.
setcap встановлює можливості файлів, які зберігаються в розширеному атрибуті файлової системи. Вони пояснюються в man 7 capabilities:
Набори можливостей файлів зберігаються в розширеному атрибуті (див. Setxattr (2)) під назвою security.capability.
Ви можете перевірити можливості запущеного процесу, вивчивши поля CapInh / CapPrm / CapEff в /proc/PID/status. Дивіться мою відповідь на тему " Як встановити можливості за допомогою команди setcap? " Для пояснення того, як ці можливості застосовуються до процесу в exec.
/usr/bin/sleepта надайте можливості цій копії.