Я использую macOS Sierra и у меня установлен XCode

$ defaults read /var/db/receipts/com.apple.pkg.Xcode.plist
{
    InstallDate = "2016-09-13 19:36:06 +0000";
    InstallPrefixPath = "/";
    InstallProcessName = storedownloadd;
    PackageFileName = "Xcode.pkg";
    PackageIdentifier = "com.apple.pkg.Xcode";
    PackageVersion = "8.0.0.0.1.1472435881";
}

Я пытаюсь скомпилировать файл .tex в pdf с использованием latexmk, но у меня проблема с setgid .

$ latexmk -pdf ~/testFile.tex
Latexmk: This is Latexmk, John Collins, 22 April 2016, version: 4.45.
Insecure dependency in open while running setgid at /Library/TeX/texbin/latexmk line 2722.

У меня установлен MacTex. Я даже попытался повторно загрузить latexmk , но проблема не была решена.

Мне пришлось переустанавливать все с нуля, когда я недавно обновил El Capitan, но раньше он работал нормально. Я в недоумении, в чем проблема может быть. Любая помощь будет оценена.

2 ответа2

0

setgid это не команда - это состояние ; специальное разрешение файла вместе с «setuid» и «sticky».

«setuid», возможно, более известен: если исполняемый файл имеет установленный бит «setuid», он всегда будет автоматически иметь права пользователя, которому он принадлежит, а не пользователя, который его запускал. (Например, именно так su и sudo способны выполнять действия только для пользователя root.)

'setgid' работает таким же образом, за исключением того, что он применяется к группе, которой принадлежит файл. В обоих случаях, однако, программа должна быть особенно осторожна, чтобы делать только то, для чего она предназначена , и избегать обмана со стороны пользователя.

Сообщение об ошибке, пришедшее от интерпретатора perl , поскольку latexmk действительно является сценарием Perl, означает, что Perl заметил, что он работает с привилегиями setuid/setgid, и поэтому отказывается выполнять определенные действия в качестве меры предосторожности против небрежно написанных сценариев.

0

Как указано @grawity, вопрос в том , что setgid состояние было установлено для некоторых файлов , необходимых для latexmk сценария. Чтобы найти все файлы с установленным битом, я использовал команду

find / -perm -02000 -ls > search_out

на OSX. Было много результатов, но я нашел тот, который был связан с Тексом.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .