Android linux中的UID是什么?
linux中的UID是什么? 维基和其他在线资源说这是用户ID。但用户ID到底是什么? “用户id”这个名字让我感觉是用户在使用操作系统。就像我只有一个用户一样,我的用户id应该是1。对于root,我知道它是0 但是我看到每个进程(应用程序?)都有用户id。那么,每个进程都有不同的uid吗?为什么我们已经有了pid来区分它们呢Android linux中的UID是什么?,android,linux,unix,process,uid,Android,Linux,Unix,Process,Uid,linux中的UID是什么? 维基和其他在线资源说这是用户ID。但用户ID到底是什么? “用户id”这个名字让我感觉是用户在使用操作系统。就像我只有一个用户一样,我的用户id应该是1。对于root,我知道它是0 但是我看到每个进程(应用程序?)都有用户id。那么,每个进程都有不同的uid吗?为什么我们已经有了pid来区分它们呢 Ex : root:/ # ps 8533 USER PID PPID VSIZE RSS WCHAN PC NAME u0_
Ex :
root:/ # ps 8533
USER PID PPID VSIZE RSS WCHAN PC NAME
u0_a78 8533 363 1526628 52668 ffffffff b6f80d04 S com.google.android.keep
root:/ # cat /proc/8533/status
Name: le.android.keep
State: S (sleeping)
Tgid: 8533
Pid: 8533
PPid: 363
TracerPid: 0
Uid: 10078 10078 10078 10078
....
因此,对于google keep的过程,UID是10078。那么,是否有超过10000个用户?如果是,那么到底谁是用户?UID是Linux用户ID 用户ID不必从0或1开始计数。没有任何东西表明用户ID从0、1、2。。。因此,UID是10078这一事实并不奇怪 在Android上,每个应用程序都有自己的Linux用户。这样做是出于安全管理的原因;每个用户的权限=可以通过这种方式在操作系统级别管理每个应用程序。每次安装新应用程序时,都会为该应用程序创建一个新的Linux用户 下面将对此进行更详细的说明:
Linux用户是操作系统级用户,与使用Android设备的用户没有任何直接关系。我注意到,在Android(至少5和6)中,任何大于10000的uid都对应于非系统用户,即非系统应用。太好了!“在安卓系统上,每个应用程序都有自己的Linux用户。”-这像gem一样回答了我的问题。那么,我可以假设有超过10000个应用程序安装完成了吗?为了澄清我的理解,在ubuntu中,uid指的是使用操作系统的实际用户吗?不是。也许它从10000开始计算。也许数字10078意味着你已经安装了79个应用程序。在Ubuntu中,每一个实际用户都有一个Linux用户,还有许多其他用途的Linux用户。谢谢jesper。这里的这个博客说,uid可以在/etc/passwd中看到。虽然我在安卓系统中找不到这个路径,但在ubuntu中,它由“pulse:x:110:119:PulseAudio daemon,,,,:/var/run/pulse:/bin/false”等数据组成,其中110是UID。但我在这里期待的是我的名字(用户),而不是应用程序“脉冲”。对不起,打扰你了。你能对此发表评论吗?PulseAudio有一个单独的用户。正如我所说的,Linux用户不仅仅是真正的人类用户。也有Linux用户负责特定进程,例如PulseAudio等。请参阅感谢您的澄清。