linux查看和更改用户附属信息


useradd、usermod、userdel这些都是系统管理员root进行账号管理要用到的重要命令, 也只有root有权限使用,普通用户无权限使用的。 这些命令我们会在后面专门介绍。 linux下的每个用户都有很多附属信息,普通用户除了可以用passwd命令修改自己的密码外, 也可以用finger和chfn命令查看或者修改自己的附属信息。

finger命令

回到顶部
finger中文为手指、指纹的意思。finger可以列出用户的相关附属信息!
当然这些附属信息其实大部分都是存储在/etc/passwd文件中描述字段中。
              [root@study ~]# finger [-s] username
            
选项与参数:
-s :仅列出用户的账号、全名、终端机代号与登入时间等;
-m :列出与后面接的账号相同者,而不是利用部分比对(包括全名部分)
不加任何参数,finger默认列出系统中所有登录在线的用户信息:
              [peter@study ~]$ finger
              Login     Name       Tty      Idle  Login Time   Office     Office Phone
              peter     peter      tty7       3d  Feb 20 12:36 (:0)
              root      root      *tty1       10  Feb 23 14:22
            
查看peter账号相关信息:
[root@study ~]# finger peter
Login: peter          			Name: peter
Directory: /home/peter              	Shell: /bin/bash
On since Thu Feb 20 12:36 (CST) on tty7 from :0
   3 days 1 hour idle
On since Thu Feb 20 19:31 (CST) on tty2   2 days 18 hours idle
     (messages off)
Last login Sat Feb 22 22:08 (CST) on tty1
No mail.
No Plan.
finger列出的信息大部分取自/etc/passwd文件。
这些信息包括:
Login:为登录用的账号名,取自/etc/passwd文件中的第一个字段;
Name:为全名,取自/etc/passwd文件中的第五个字段,注释字段;
Directory:用户家目录,取自/etc/passwd文件中的第六个字段;
Shell:用户登录Shell的可执行程序文件,取自/etc/passwd文件中的第七个字段;
Never logged in.:figner还会查看用户的登录情况!
No mail.:取自/var/spool/mail目录中的信箱资料;
No Plan.:取自~/.plan文件!
Office, Office Phone:用户的办公室地址和电话,这些信息都取自/etc/passwd文件中的第五个字段,注释字段;
root可以用finger查询其他用户的账号信息,如果是普通用户查询其他普通用户的信息,可能会面临权限问题。 所以有些信息可能会查询不到。 上面的~/.plan文件其实是用户自己建立的一个计划文件,这个计划文件其实就是给自己看的,文件中的内容可以随便写。 例如最近想学习英语,于是给自己列了一个英语学习计划,就可以把自己的英语学习计划写到自己用户家目录下的.plan文件中:
[peter@study ~]$ echo "I will study english next month." > ~/.plan
[peter@study ~]$ finger peter
Login: peter          			Name: peter
Directory: /home/peter              	Shell: /bin/bash
On since Thu Feb 20 12:36 (CST) on tty7 from :0
   3 days 1 hour idle
On since Thu Feb 20 19:31 (CST) on tty2   2 days 18 hours idle
     (messages off)
Last login Sat Feb 22 22:08 (CST) on tty1
No mail.
Plan:
I will study english next month.
从上面可以看出finger大部分信息都取自/etc/passwd文件! 所以这个命令有时候会存在安全问题,在很多最新的linux发行版已经去掉了这个命令! 需要用yum或者apt工具自己安装一下就好了。 ubuntu系统使用apt安装:
              [peter@study ~]$ sudo apt install finger
            
centos发行版使用yum安装:
              [peter@study ~]$ sudo yum install finger
            
如果有centos的安装镜像文件,也可以通过光盘镜像文件安装,先将光盘映像文件挂载在/mnt目录下,然后使用rpm命令安装:
              [root@study ~]# mount centos.iso /mnt   #挂载光盘镜像文件!
              [root@study ~]# df -hT /mnt             #确认光盘镜像文件已成功挂载!
              Filesystem Type Size Used Avail Use% Mounted on
              /dev/sr0 iso9660 7.1G 7.1G 0 100% /mnt
              [root@study ~]# rpm -ivh /mnt/Packages/finger-[0-9]* #安装finger软件!
            

chfn命令

回到顶部
chfn为change finger的缩写!顾名思义就是用来修改finger信息的。
chfn命令常用格式如下:
              [root@study ~]# chfn [-foph] [账号名]
            
选项与参数:
-f :后面接完整的大名;
-o :您办公室的房间号码或地址;
-p :办公室的电话号码;
-h :家里的电话号码!
不加任何选项参数,chfn默认修改当前登录用户的所有附属信息:
[vbird1@study ~]$ chfn
Password: 
Changing the user information for peter
Enter the new value, or press ENTER for the default
	Full Name: peter                #全名
	Room Number []: 1920302         #房间号
	Work Phone []: 13861828579      #工作电话
	Home Phone []: 13861828579      #家庭电话
            
通过上面可以看到chfn可以修改的信息包括全名、房间号、工作电话和家庭电话,所有这些信息都是记录在/etc/passwd文件的注释字段, 我们可以通过cat或者grep命令查看确认一下: 也可以通过选项指定要修改的某项信息。
[vbird1@study ~]$ grep peter /etc/passwd
peter:x:1000:1000:peter,1920302,13861828579,13861828579:/home/peter:/bin/bash
            
可以看到chfn修改的信息都记录在/etc/passwd文件中的第五个字段,各项信息用','号分隔。
[vbird1@study ~]$ finger peter
Login: peter          			Name: peter
Directory: /home/peter              	Shell: /bin/bash
Office: 1920302, +1-386-182-8579	Home Phone: +1-386-182-8579
On since Thu Feb 20 12:36 (CST) on tty7 from :0
   3 days 2 hours idle
On since Thu Feb 20 19:31 (CST) on tty2   2 days 19 hours idle
     (messages off)
Last login Sat Feb 22 22:08 (CST) on tty1
No mail.
Plan:
I will study english next month.
chfn修改的这些信息其实对linux来说是可有可无的,对linux的正常运行也没有任何影响。 不过在一个项目团队中,项目成员可以将自己的个人信息记录在这里,甚至是自己的兴趣爱好都可以记录在这里, 有助于团队成员之间的相互了解。 例如项目经理可能需要找某个成员谈话,就可以用finger快速找到这个成员的工作房间号或者电话号码, 去到该成员的工作房间或者用电话呼叫该成员。总之有点类似于手机通讯录的功能。

initroot编辑整理,转载请注明www.initroot.com

100次点赞 100次阅读