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

352
user3571241

У меня было установлено приложение 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, это дает тот же результат.

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

0
Перекрестная публикация в Unix: http://unix.stackexchange.com/questions/127204/setuid-command-seems-to-not-working John1024 9 лет назад 0
Это также опубликовано в StackOverflow: http://stackoverflow.com/questions/23283251/setuid-seem-to-not-working John1024 9 лет назад 0

1 ответ на вопрос

0
mestia

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

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

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

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

Спасибо за ваш ответ, Местия. И да, когда я использую команду chmod o + rx в каталоге 'lang', DemoApp.exe может работать правильно, но это также заставляет других пользователей читать и в этом каталоге. Я хотел бы, чтобы другие не могли читать или обращаться к этому каталогу, кроме только DemoApp.exe. user3571241 9 лет назад 0

Похожие вопросы