Из справочной страницы xargs(1)
-I replstr
Execute utility for each input line, replacing one or more
occurrences of replstr in up to replacements (or 5 if no -R
flag is specified) arguments to utility with the entire
line of input. The resulting arguments, after replacement
is done, will not be allowed to grow beyond 255 bytes;
а затем, если мы посчитаем символы, сгенерированные вашей командой
$ wc -c out
255 out
Таким образом, вы упираетесь в задокументированный лимит. Обходным путем было бы не делать этого (а зачем тут такой длинный аргумент? )или, возможно, вместо этого установить какую-нибудь версию Linux xargs
и вызвать ее.
Мое решение было похоже на предложение @filbranden в комментариях (спасибо! ).
Администратор принадлежит к определенной группе. Я установил групповое владение /var/lib/db
для этой группы (владение пользователем по-прежнемуroot
)и установил разрешения для этого каталога на 775
(drwxrwxr-x
, группа имеет w
разрешения ).
Теперь, поскольку служба systemd выполняется пользователем с правами администратора, запись в /var/lib/db
происходит без ошибок.