unix – 众所周知的UID是什么?
发布时间:2020-12-15 22:16:24 所属栏目:安全 来源:网络整理
导读:根据useradd联机帮助页,通常为系统帐户保留1000以下的UID. 我正在开发一个将作为自己的用户运行的服务.我知道在/ etc / services中可以找到众所周知的端口. 有没有一个地方我可以找到那里众所周知的UID?我想避免与其他人的UID崩溃. 解决方法 getpwent(3) 遍
根据useradd联机帮助页,通常为系统帐户保留1000以下的UID.
我正在开发一个将作为自己的用户运行的服务.我知道在/ etc / services中可以找到众所周知的端口. 有没有一个地方我可以找到那里众所周知的UID?我想避免与其他人的UID崩溃. 解决方法getpwent(3) 遍历密码数据库(通常是/ etc / passwd,但不一定;例如,系统可能位于NIS域中).应该在那里表示系统已知的任何UID.
为了演示,以下shell片段和C代码都应该打印系统上的所有已知UID. $getent passwd | cut -d: -f3 #include <pwd.h> #include <stdio.h> int main() { struct passwd *pw; while ((pw = getpwent())) printf("%dn",pw->pw_uid); } UID 0总是root,传统上UID 65534是nobody,但你不应该依赖它,也不应该依赖它.正在使用的UID因操作系统,分发甚至系统而异 – 例如,Gentoo上的许多系统服务在安装时分配UID.没有使用UID的中央数据库. 此外,/ etc / login.defs定义了“系统UID”.在我的桌面上,它被配置为UID 100-999被视为系统帐户,UIDS 1000-60000是用户帐户,但这很容易更改. 如果您正在编写服务,我建议编写程序包安装脚本以根据需要分配UID,并且您的软件可配置为使用任何UID /用户名. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- angularjs – 对如何处理CORS OPTIONS预检要求感到困惑
- bootstrap 精简教程
- 8-Shell的整数表达式介绍-实践及企业案例脚本剖析
- bash – 使用波浪号将目录更改为文件中指定的路径
- angular – 如何在其他组件中排除app.component.html的代码
- SmartPhone 2003 手机编程实战之二:自己开发一个天气预报服
- bash – 如何根据curl的HTTP状态代码分支shell脚本?
- About .Net Petshop
- Angular2中的嵌套Observable使用AngularFire2不在视图中渲染
- scala – 如何为ML算法矢量化DataFrame列?
推荐文章
站长推荐
热点阅读