linux系统中创建子进程的程序,不知道该用getpid()还是getppid()

linux系统中创建子进程的程序,不知道该用getpid()还是getppid(),第1张

进程返回的是是子进程号。他再getppid就成了他父亲的了。他这里是要返回他儿子的进程号。他儿子返回的是0,getppid得到他父亲的进程号。所以只有在父亲这里才可以得到子进程号。

Linux系统中,每个用户的ID都有两种,即用户ID(User ID,简称UID)和组ID(Group

ID,简称GID),这与文件拥有者和拥有群组两种属性所对应。

文章开头也提到了,Linux系统并不认识我们的用户名和密码,那问题来了,文件是如何判别它的拥有者名称及群组名称的呢?

每个文件都有自己的拥有者ID和群组ID,在显示文件属性时,系统会根据/etc/passwd和/etc/group文件中的内容,分别找到UID和GID所对应的用户名和群组名,最终显示出来。

在/etc/passwd文件中,利用UID可以找到所对应的用户名,在/etc/group文件中,利用GID可以找到所对应的群组名。

可以做个小实验,在Linux *** 作系统中,常用的有两个账户,分别为root超级管理员账户和普通账户,我们可以先使用root账号登录并执行命令vim

/etc/passwd,在该文件中找到普通用户并将其UID随意改一个数字,这是你会发现,当你查看普通账户所拥有的文件时,你会发现所有文件的拥有者并不是普通用户,而是数字。

一般情况下,当登录Linux *** 作系统后,会先寻找/etc/passwd是否有输入账号,如果没有,则跳出,如果有,则读取对应的UID与GID,随后进入/etc/shadow核对密码,一切完成后,则进入shell管控。

由此可见,UID与GID在日常的账户管理中,发挥着非常重要的作用,因为一不小心就可能访问不了自己的文件,所以温馨提示大家,不要随便改动自己的/etc/passwd与/etc/group文件。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7252357.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存