On Mon, Sep 22, 2008 at 04:32:42PM +0400, Vladimir Lettiev wrote: > Добрый день. > > Вот такой код: > > #include > #include > #include > > int main(int argc, char *argv[]) { > gid_t egid; > struct group *group; > > egid = getegid (); > group = getgrgid (egid); > > fprintf (stderr, "egid: %d, egroup: %s\n", egid, group->gr_name); > } > > скомпилировал, поменял группу владельца на root, установил sgid флаг > > $ gcc -o program program.c > $ sudo chgrp root program > $ sudo chmod 2755 program > > $ ./program > egid:500, egroup:crux > > ? > > Это всё происходит на системе с ALT Sisyphus. > Таже самая программа собранная в ubuntu, как и ожидалось, выдаёт: > egid:0, egroup: root > > Почему так? Файловая система смонтирована с nosuid? -- Regards, Kirill A. Shutemov + Belarus, Minsk + ALT Linux Team, http://www.altlinux.com/