电白区住房和城乡建设局网站,公司官网制作多少钱,在线制作效果图,网页设计网站简单静态模板这一章主要介绍了口令文件和组文件的结构和一些围绕这些结构的函数。 口令文件即passwd就是在/etc/passwd中可以查阅。其结构是#xff1a; 上图四个平台能支持的就用黑点表示。 因为加密口令这一项放在passwd这个人人可读的文件中#xff0c;可能会有安全问题。所以现在的Li…这一章主要介绍了口令文件和组文件的结构和一些围绕这些结构的函数。 口令文件即passwd就是在/etc/passwd中可以查阅。其结构是 上图四个平台能支持的就用黑点表示。 因为加密口令这一项放在passwd这个人人可读的文件中可能会有安全问题。所以现在的Linux中的加密口令都是放在/etc/shadow中只有root用户才可以查看。而在passwd文件中加密口令这一项则显示为x。每一项都是用冒号隔开的 POSIX.1就定义了两个函数来让我们获取用户名或者数值用户ID。 #include pwd.h struct passwd *getpwuid(uid_t uid); struct passwd *getpwnam(const char *name); 返回值成功返回指针失败返回NULL 如果有些程序要查看整个口令文件则需要下面三个函数 #include pwd.h struct passwd *getpwent(void); 返回值成功返回指针失败返回NULL void setpwent(void); void endpwent(void); getpwent是查看口令文件中的一项内容setpwent是定位到文件的开始处相当于rewind函数endpwent就是关闭口令文件。 组文件也差不多结构上是这样 其中最后一项的指针元素都是指向各个用户名最后以空指针结束。 与口令文件的函数相似POSIX.1也定义了两个函数来查看文件中的组ID和组名 #include grp.h struct group *getgrgid(gid_t gid); struct group *getgrnam(const char *name); 返回值成功返回指针失败返回NULL 如果需要得知整个组文件的信息也有类似口令文件的三个函数 #include grp.h struct group *getgrent(void); 返回值成功返回指针失败返回NULL void setgernt(void); void endgrent(void); 转载于:https://www.cnblogs.com/fusae-blog/p/4278500.html