यह संभावना छोड़कर कि आप गलत समूह आईडी की आपूर्ति कर रहे हैं, यह एलडीएपी सेटअप में एक बग हो सकता है, जो रिवर्स समूह रिज़ॉल्यूशन में प्रकट होता है काम नहीं करता है। यह इस तथ्य से प्रबलित है कि यह एक सादा "फाइल" सेटअप पर काम करता है।
getent (1) में कहा गया है:
group When no key is provided, use setgrent(3), getgrent(3), and
endgrent(3) to enumerate the group database. When one or
more key arguments are provided, pass each numeric key to
getgrgid(3) and each nonnumeric key to getgrnam(3) and
display the result.
यह है कि getgrgid (3) अपने स्थापना पर विफल रहता है हो सकता है।
यह परीक्षण इस कार्यक्रम (getgrgid_test.c) के साथ "getgrgid_test बनाने" संकलन करने के लिए:
#include <stdio.h>
#include <sys/types.h>
#include <grp.h>
int
main(int argc, char **argv)
{
int gid;
struct group *g;
if (argc != 2) {
fprintf(stderr, "Invalid number of positional arguments\n");
fprintf(stderr, "Usage getgrid_test GID\n");
return 1;
}
gid = atoi(argv[1]);
g = getgrgid(gid);
if (g == NULL) {
fprintf(stderr, "gid %d not found\n", gid);
return 1;
}
printf("%s\n", g->gr_name);
return 0;
}
तो इस तरह से अपनी gid साथ इसे चलाने:
getgrgid_test GID
यदि यह उत्पादन नहीं करता है आपके सिस्टम प्रशासकों को समूह नाम रिपोर्ट।
अन्यथा, यदि यह काम करता है, लेकिन "गेटेंट समूह जीआईडी" नहीं है, तो यह "गेटेंट" में एक बग है।
एसएलएस 11.2 पर मेरे लिए काम करता है। – jwilleke