查看Linux中的passwd文件,其中每行对应着一个用户
每个Linux都会有root账号,以此来说明,从内容上看,每行都使用【:】分隔(注意:每行前面的数字是行号,不是内容),所以一共有七部分内容,分别是:
关于登陆行需要注意以下几点:
- 通常有一个root登陆项,用户ID是0(超级用户)
- 加密口令字段包含了一个占位符
- 口令文件项中某些字段为空,
- shell字段包含了一个可执行程序名,被用作登录shell,默认为/bin/bash。
- 使用Nobody用户名的目的是使任何人都可登陆至系统,但是其用户ID和组ID不提供任何特权。
下面连个函数用来获取口令文件项的函数:
#include <pwd.h>
struct passwd * getpwuid(uid_t uid);
//逐一搜索参数uid 指定的用户识别码, 找到时便将该用户的数据以结构返回结构请参考将该用户的数据以passwd 结构返回.
struct passwd * getpwnam(const char * name);
//来逐一搜索参数name 指定的账号名称, 找到时便将该用户的数据以pas