Команда Setuid, кажется, не работает

У меня было установлено приложение Windows на компьютере Linux Mint, например, в каталоге Demo. И в папке Demo, у меня есть структура каталогов файлов, как следует

  -rwxrwxrwx spuser spuser aaa.dll 
  -rwxrwxrwx spuser spuser bbb.ttf 
  -rwxrwxrwx spuser spuser ccc.ref 
  -rwsrwxrwx spuser spuser DemoApp.EXE <= I've set setuid command on this file
  drwxrwxrwx spuser spuser icons
  drwxrwxrwx spuser spuser secure
  drwxrwxr-- spuser spuser lang

Если я запускаю DemoApp.EXE с привилегией spuser, он работает нормально, DemoApp.EXE может читать файлы в каталоге lang. Но когда я запускаю DemoApp.EXE с правами обычного пользователя, появляется ошибка, в которой говорится, что не удается прочитать файлы в каталоге lang, и я установил его только для чтения для других (как указано выше в структуре каталогов). Я пытаюсь запустить оба в Linux Mint с WINE или запустить эту программу на ПК с Windows, это имеет тот же результат.

Пожалуйста, сообщите мне, и извините за мой плохой английский.

1 ответ

Для чтения файла в каталоге должен быть установлен исполняемый бит "x" в каталоге.

пока только spuser и члены группы spuser могут нырять в каталог.

просто проверьте это с cd lang когда вы другой пользователь.

chmod o + rx lang это исправит.

Другие вопросы по тегам