扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
可以使用whoami.
目前创新互联已为上1000家的企业提供了网站建设、域名、虚拟空间、网站托管运营、企业网站设计、仙游网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
具体参考如下:
命 令:whoami 或者 who am i
功能说明:显示用户名称。
语法:whoami [--help][--version]
补充说明:显示自身的用户名称,本指令相当于执行"id -un"指令。
whoami 命令显示登录名。与使用命令 who 并指定 am i
不同,whoami 命令在有 root 用户权限时也有效,因为它不检查 /etc/utmp 文件。
该命令只出现在windows系列中的
windows 2000中。
参数:
--help 在线帮助。
--version 显示版本信息。
附:whoami
与who am i 的区别
who这个命令重点是用来查看当前有哪些用户登录到了本台机器上。
who -m的作用和who am
i的作用是一样的。
who -q用来显示当前登录用户的个数。
who am i
显示的是实际用户的用户名,即用户登陆的时候的用户ID。此命令相当于who -m。
who am i显示的是“登录用户”的用户名。
用Linux的术语来解释就是:(实际用户=uid,即user id。有效用户=euid,即effective user id)
whoami 显示的是有效用户ID.
whoami显示的是当前“操作用户”的用户名。
先看看这三个命令的输出信息:
[jb51@jb51 ~]$ whoami
jb51
[jb51@jb51 ~]$ who am i
jb51
pts/3 2011-07-25 13:17 (:0.0)
[jb51@jb51 ~]$ who
jb51 :0 2011-07-25
09:54
jb51 pts/0 2011-07-25 09:55 (:0.0)
jb51 pts/1 2011-07-25 09:57
(:0.0)
jb51 pts/3 2011-07-25 13:17 (:0.0)
当我用sudo su(或者sudo su
-)更换到root用户之后,你再看看:
[jb51@jb51 ~]$ sudo su
[root@jb51 jb51]# whoami
root
[root@jb51 jb51]# who am i
jb51 pts/3 2011-07-25 13:17 (:0.0)
[root@jb51 jb51]# who
jb51 :0 2011-07-25 09:54
jb51 pts/0 2011-07-25
09:55 (:0.0)
jb51 pts/1 2011-07-25 09:57 (:0.0)
jb51 pts/3 2011-07-25
13:17 (:0.0)
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文件。
用户的ID就是USER
ID喽,也就是常说的UID.有一个文件专门存放UID信息的,在/etc/passwd里。root用户的ID是0.
从1~499的大多是系统服务或软件厂商自定议的ID。而普通的用户的UID是从500开始往后依次加1.
你也可以用
cat
/etc/passwd
|
grep
你的用户名
来查看你的ID。
yxk3688909
同学回答的也是正常的。但只能看自己的ID。
1.增加一个新用户
在Linux系统中,只有root用户才能够创建一个新用户,例如:创建一个登录名为abcd的用户
sudo useradd abcd
只是建立了用户,目前还无法进行登录,要为它设置初始密码,因为没有密码的用户是不能够登录的。在默认情况下,将会在/home目录下新建一个与用户名相同的用户主目录。
完成了这一操作后,你还应该使用passwd命令为其设置一个初始密码。输入该命令后,会系统会请求输入密码。
sudo passwd 用户名
2.删除一个用户
删除用户,只需使用一个简单的命令:
sudo userdel 用户名
不过最好将它留在系统上的文件也删除掉,你可以使用“userdel -r 用户名”来实现这一目的。
3.增加一个组
如下命令将创建一个名称为avatar的用户组:
sudo groupadd avatar
4.删除一个组
同样的,我们有时会需要删除一个组,它的命令就是groupdel。
Linux中可以使用usermod命令更改用户名,具体的操作方法如下:
1、首先打开linux的终端,输入指令修改用户名,简单的用户名修改是usermod加参数l,后面跟新用户名,最后是旧用户名。
2、此时用cd命令来到home目录,会发现存在一点小问题,就是只能修改用户名而不能更新用户目录下的该用户文件。
3、如果要更新home目录下的文件夹名字,还需要使用参数d,后面跟home的路径加上新用户名,在加上m参数和新用户名就可以更新用户目录的名字了。
4、最后进入来进入home目录,就会发现已经成功更新目录名了。
方法一:groups 命令法,groups 命令可以查看某个用户所属的用户组
只执行 groups 命令,可以查看系统当前登录用户的所属组
查询特定用户的用户组,在 groups 后面跟用户名即可
例如:groups root
方法二:查看 /etc/group 法
/etc/group 是用户组配置文件,可以查看此文件通过 grep 查询某个用户所在的用户组
例如:
cat /etc/group | grep root
方法三:id 命令法,id 命令也可以查看某个用户所属的用户组
只执行 id 命令,可以查看系统当前登录用户的用户组
查询特定用户的用户组,在 id 后面跟用户名即可
例如:
id root
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流