Home » Ошибки » setfacl: Argument list too long

setfacl: Argument list too long

Столкнулся с неожиданной ошибкой, при установке прав ACL с помощью команды setfacl. Никак не удавалось добавить новые права к каталогу. Текст ошибки совершенно не информативен и не позволяет понять суть ошибки. Решение пришло само в голову, просто догадался.

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом «DevOps практики и инструменты» в OTUS. Курс не для новичков, для поступления нужно пройти .

Есть файловый сервер на CentOS 7. Он заведен в домен, права доступа замечательно настраиваются через галочки в Windows. Но на одну из папок не удалось через винду поставить права, вылетала ошибка доступа, хотя у учетной записи были все необходимые права.

Пошел в консоль сервера, чтобы повнимательнее посмотреть на эту папку. Запросил список прав с помощью getfacl. Все было в порядке, права доступа отображались и они были корректны.

Но вот добавить новые права не получалось, вылетала ошибка:

# setfacl -R -m u:ivandrago:rwx 'Папочка'
setfacl: Папочка: Argument list too long

Тут я призадумался. Сначала полез в гугл искать подобные ошибки. К сожалению, эта ошибка соответствует общему определению и возникает на множестве операций, например find или rm. Но с этими командами примерно понятно, что это означает. Список объектов для обработки слишком большой. Применительно к команде setfacl я не мог понят ее смысл.

Затем обратил внимание, что на этой папке стоит очень много различных прав для групп и пользователей. Больше, чем я обычно делаю и чем следует. Решил проверить версию, что это связано именно с большим списком прав. Удалил некоторых юзеров с помощью:

# setfacl -x u:petrov 'Папочка'

И попробовал заново назначить те же права, что и в начале. Все получилось. Не читал пока подробно теорию про ACL права, хотя надо почитать на всякий случай. Похоже, есть какие-то ограничение на этот счет, с которыми я столкнулся.

Онлайн курс Основы сетевых технологий

Теоретический курс с самыми базовыми знаниями по сетям. Курс подходит и начинающим, и людям с опытом. Практикующим системным администраторам курс поможет упорядочить знания и восполнить пробелы. А те, кто только входит в профессию, получат на курсе базовые знания и навыки, без воды и избыточной теории. После обучения вы сможете ответить на вопросы:
  • На каком уровне модели OSI могут работать коммутаторы;
  • Как лучше организовать работу сети организации с множеством отделов;
  • Для чего и как использовать технологию VLAN;
  • Для чего сервера стоит выносить в DMZ;
  • Как организовать объединение филиалов и удаленный доступ сотрудников по vpn;
  • и многое другое.
Уже знаете ответы на вопросы выше? Или сомневаетесь? Попробуйте пройти тест по основам сетевых технологий. Всего 53 вопроса, в один цикл теста входит 10 вопросов в случайном порядке. Поэтому тест можно проходить несколько раз без потери интереса. Бесплатно и без регистрации. Все подробности на странице .

Помогла статья? Есть возможность отблагодарить автора

Автор Zerox

Zerox
Владимир, системный администратор, автор сайта. Люблю настраивать сервера, изучать что-то новое, делиться знаниями, писать интересные и полезные статьи. Открыт к диалогу и сотрудничеству.

Добавить комментарий

Ваш e-mail не будет опубликован.

Нажимая кнопку "Отправить комментарий" Я даю согласие на обработку персональных данных.