|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
4.文件所有者和文件所有者组:通过stat结构体的注释信息可以看出,stat只能获取文件的uid和gid并不是uid gid对应的用户或组的名称。* U( o9 s3 P2 x& b; V
. @4 u+ p. C: p1 n* K
# F# @/ ?4 t. j& u, Juid找到对应的用户名是可以通过getpwuid这个系统调用获取,这个系统调用接受一个uid返回一个passwd的结构体,这个结构体成员如下:
' l B% w" Q% f% j. F( S, h
; a& _+ z' ]0 S! W7 p' U7 x- P
, S" h& U: j0 R$ @0 j" X- char *pw_name;//User’s login name.
- uid_t pw_uid; //umerical user ID.
- gid_t pw_gid; //Numerical group ID.
- char *pw_dir;//Initial working directory.
- char *pw_shell;//Program to use as shell.<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"> </span>' j" m" l- @7 i. J$ G; X, a' f8 N- V! D
+ g+ ?/ U5 P2 S5 l0 d3 z/ C" u
3 |& I" B+ R3 U7 m: H* {7 }
6 h* R4 `" J6 h+ s
( E) Y1 G4 K5 a5 D* P) `; x# e7 x: K, `; { R* ]
gid对应的组名同样可以找到一个系统调用来获取,通过man我发现可以通过getgrgid()系统调用传入一个gid
* P) V5 U" U( u6 j3 S
# e h6 s# x. P4 m" V! k- ^3 ^- T/ b
0 l( [& B, g+ G$ m
# L8 t: P5 A5 K# V4 n3 ], I, _% x9 G
) G, X. O& j8 C0 L% g# f1 J- F" x- H6 Z( {2 D
|
|