Linux中的UID、GID和SID

一、 UID和GID

vi /etc/passwd查看用户配置情况
在这里插入图片描述
GID 是组ID (Group Identify),表示组的身份唯一标识
UID 是用户ID (User Identify),表示用户身份唯一标识

用户分类
centos6
超级用户 UID=0 root
普通用户 UID=500起 oldboy
虚拟用户 UID=1-499 存在满足文件或者服务启动的需要。一般不需要登录;(傀儡)
centos7
超级用户 UID=0 root
普通用户 UID=1001起
虚拟用户 UID=1-1000 存在满足文件或者服务启动的需要。一般不需要登录;(傀儡)

root:(账号名称):x(:账号密码):0(:账号UID):0(:账号GID):root(:用户说明):/root(:用户家目录):/bin/bash(:shell解析)
1、账号名称:和用户UID对应,这是用户登录时使用的账号名称,在系统中是唯一的,不能重复。
2、账号密码:早期的Unix系统中,该字段是存放账号密码的,由于安全原因,后来把这个密码字段内容移动到/etc/shadown中,这里可以看到一个字母表示该用户密码在/etc/shadown中保护
3、账户UID:账号UID一般由一个整数表示的,范围是0~65535。
4、账户GID:账号GID一般也是由一个整数表示的,范围是0~65535,当添加账户时,默认情况下会同时建立一个与用户同名且UID和GID相同的组。
5、用户说明:这个字段是对这个账号二队描述说明。
6、用户家目录:用户登录后首先进入的目录,一般为(/home/用户名)这样的目录
7、shell解析器:当前用户登录后所使用的shell,在centos/rhel等linux中,默认的shell为bash,就是在这里设置的。如果不希望用户登录系统,可以用个usermod或者手工修改passwd配置,将该字段改为/sbin/nologin即可。如果仔细看passwd文件,会发现大部分内置系统虚拟账号的这个字段都是/sbin/nologin,表示禁止登录系统,这是出于安全考虑的。(echo $SHELL及cat /etc/shells)。[1]

二、 SID

SID是System IDentifier的缩写,而ORACLE_SID就是Oracle System Identifier的缩写,在Oracle系统中,ORACLE_SID以环境变量的形式出现,在特定版本的Oracle软件安装(也就是ORACLE_HOME)下,当Oracle实例启动时,操作系统上fork的进程必须通过这个SID将实例与其他实例区分开来,这就是SID的作用。
官方定义[2]:
Oracle System Identifier (SID)
A name that identifies a specific instance of a running pre-release 8.1 Oracle database. For any database, there is at least one instance referencing the database.
For pre-release 8.1 databases, SID is used to identify the database. The SID is included in the connect descriptor of a tnsnames.ora file and in the definition of the listener in the listener.ora file.
用于标识运行的8.1版之前的Oracle数据库的特定实例。对于任何数据库,至少有一个实例引用该数据库。
对于8.1版之前的数据库,SID用于标识数据库。SID包含在tnsnames.ora文件的连接描述符中,也包含在listener.ora文件中的侦听器定义中。
意思是系统标识,用于区分实例。

参考

以上为个人整理总结的知识,如有遗漏或错误欢迎留言指出、点评,如要引用,请联系通知,未经允许谢绝转载。
[1]https://www.cnblogs.com/wangguangtao/p/9832687.html
[2]https://docs.oracle.com/cd/B19306_01/network.102/b14212/glossary.htm#sthref1963

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章