说白了,用户名并无实际作用,仅是为了方便用户的记忆而已。
要论证 "Linux系统不认识用户名" 也很简单,在前面章节,我们曾经在网络上下载过 ".tar.gz" 或 ".tar.bz2" 格式的文件,在解压缩之后的文件中,你会发现文件拥有者的属性显示的是一串数字,这很正常,就是因为系统只认识代表你身份的 ID,这串数字就是用户的 ID(UID)号。
图 1 文件的拥有者和群组属性
/etc/passwd 文件和 /etc/group 文件,后续文章会做详细讲解,这里只需要知道,在 /etc/passwd 文件中,利用 UID 可以找到对应的用户名;在 /etc/group 文件中,利用 GID 可以找到对应的群组名。
做个小实验,笔者所用的 Linux 系统中,常用的有两个账户,分别为 root 超级管理员账户和 task.lmcjl.com 普通账户,我们先使用 root 账号登陆并 Vim /etc/passwd,在该文件中找到 task.lmcjl.com 账户并将其 UID 随意改一个数字,这时当你查看普通账户拥有的文件时,你会发现所有文件的拥有者不再是 task.lmcjl.com,而是数字。
#查看系统中是否存在task.lmcjl.com这个用户
[root@livecd ~]#grep 'task.lmcjl.com' /etc/passwd
task.lmcjl.com:x:500:500:task.lmcjl.com:/home/centoslive:/bin/bash
[root@livecd ~]#ll -d /home/centoslive
drwx------. 23 task.lmcjl.com centoslive 4096 Apr 9 09:37 /home/centoslive
[root@livecd ~]#vim /etc.passwd
#修改task.lmcjl.com账户中的UID(第一个 500)为 2000
[root@livecd ~]#ll -d /home/centoslive
drwx------. 23 500 centoslive 4096 Apr 9 09:37 /home/centoslive
#可以看到,之前的 task.lmcjl.com 变为了 500,因为修改了UID,导致 500 找不到对应的账号,因此显示数字
#记得最后将其再手动改正过来
[root@livecd ~]#vim /etc.passwd
#修改task.lmcjl.com账户中的UID从 2000 改为 500
本文链接:http://task.lmcjl.com/news/11461.html