用户功能id,finger下载安装使用,chfn,chsh


不论是 useradd/usermod/userdel ,那都是系统管理员所能够使用的指令, 如果我是一般身份使用者,那么我是否除了密码之外,就无法更改其他的数据呢? 当然不是啦!这里我们介绍几个一般身份用户常用的账号数据变更与查询指令啰!

id

[root@study ~]# id [username]

范例一:查阅 root 自己的相关 ID 信息!
[root@study ~]# id
uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
# 上面信息其实是同一行的数据!包括会显示 UID/GID 以及支持的所有群组!
# 至于后面那个 context=... 则是 SELinux 的内容,先不要理会他!

范例二:查阅一下 vbird1 吧~
[root@study ~]# id vbird1
uid=1003(vbird1) gid=1004(vbird1) groups=1004(vbird1)
[root@study ~]# id vbird100
id: vbird100: No such user		<== id 这个指令也可以用来判断系统上面有无某账号!

finger

安装finger(redhat没有带)

finger 的中文字面意义是:『手指』或者是『指纹』的意思。这个 finger 可以查阅很多用户相关的信息喔! 大部分都是在 /etc/passwd 这个文件里面的信息啦!不过,这个指令有点危险,所以新的版本中已经默认不安装这个软件! 好啦!现在继续来安装软件先~记得第九章 dos2unix 的安装方式!假设你已经将光驱或光盘映像文件挂载在 /mnt 底下了,所以:

[root@study ~]# df -hT /mnt
Filesystem Type
Size
/dev/sr0 iso9660 7.1G
Used Avail Use% Mounted on
7.1G
0 100% /mnt
# 先确定是有挂载光盘的啦!
[root@study ~]# rpm -ivh /mnt/Packages/finger-[0-9]*

或网上搜索

yum search finger   <==列出包名
。。。。。。
yum install -y 包名(自选,试一试)	<==下载
[root@study ~] finger [-s] username
选项与参数:
-s :仅列出用户的账号、全名、终端机代号与登入时间等等;
-m :列出与后面接的账号相同者,而不是利用部分比对 (包括全名部分)
范例一:观察 vbird1 的用户相关账号属性
[root@study ~] finger vbird1
Login: vbird1 							Name:
Directory: /home/vbird1 				Shell: /bin/bash
Never logged in.
No mail.
No Plan.
  • Login:为使用者账号,亦即 /etc/passwd 内的第一字段;
  • Name:为全名,亦即 /etc/passwd 内的第五字段(或称为批注);
  • Directory:就是家目录了;
  • Shell:就是使用的 Shell 文件所在;
  • Never logged in.:figner 还会调查用户登入主机的情况喔!
  • No mail.:调查 /var/spool/mail 当中的信箱资料;
  • No Plan.:调查 ~vbird1/.plan 文件,并将该文件取出来说明!

此外,我们可以建立自己想要执行的预定计划,当然,最多是给自己看的!可
以这样做:

范例二:利用 vbird1 建立自己的计划档
[vbird1@study ~]$ echo "I will study Linux during this year." > ~/.plan
[vbird1@study ~]$ finger vbird1
Login: vbird1 Name:
Directory: /home/vbird1 Shell: /bin/bash
Last login Mon Jul 20 23:06 (CST) on pts/0
No mail.
Plan:I will study Linux during this year.
范例三:找出目前在系统上面登入的用户与登入时间
[vbird1@study ~]$ finger
Login Name Tty Idle
dmtsai dmtsai tty2 11d
dmtsai dmtsai pts/0
Login Time
Jul
Office
Office Phone
Host
7 23:07
Jul 20 17:59

信息还会有 Office, Office Phone 等信息,那这些信息要如何记录呢?
底下我们会介绍 chfn 这个指令!

chfn

chfn 有点像是: change finger 的意思!这玩意的使用方法如下:

[root@study ~]# chfn [-foph] [账号名]
选项与参数:
-f :后面接完整的大名;
-o :您办公室的房间号码;
-p :办公室的电话号码;
-h :家里的电话号码!
范例一:vbird1 自己更改一下自己的相关信息!
[vbird1@study ~]$ chfn
Changing finger information for vbird1.
Name []: VBird Tsai test <==输入你想要呈现的全名
Office []: DIC in KSU <==办公室号码
Office Phone []: 06-2727175#356 <==办公室电话
Home Phone []: 06-1234567 <==家里电话号码
Password:<==确认身份,所以输入自己的密码
Finger information changed.
[vbird1@study ~]$ grep vbird1 /etc/passwd
vbird1:x:1003:1004:VBird Tsai test,DIC in KSU,06-2727175#356,06-1234567:/home/vbird1:/bin/bash
# 其实就是改到第五个字段,该字段里面用多个『 , 』分隔就是了!
[vbird1@study ~]$ finger vbird1
Login: vbird1 Name: VBird Tsai test
Directory: /home/vbird1 Shell: /bin/bash
Office: DIC in KSU, 06-2727175#356 Home Phone: 06-1234567
Last login Mon Jul 20 23:12 (CST) on pts/0
No mail.
Plan:
I will study Linux during this year.
# 就是上面特殊字体呈现的那些地方是由 chfn 所修改出来的!

这个指令说实在的,除非是你的主机有很多的用户,否则倒真是用不着这个程序!这就有点像是 bbs里头更改你『个人属性』的那一个资料啦!不过还是可以自己玩一玩!尤其是用来提醒自己相关资料啦! _

chsh

这就是 change shell 的简写!

[vbird1@study ~]$ chsh [-ls]
选项与参数:
-l :列出目前系统上面可用的 shell ,其实就是 /etc/shells 的内容!
-s :设定修改自己的 Shell 啰
范例一:用 vbird1 的身份列出系统上所有合法的 shell,并且指定 csh 为自己的 shell
[vbird1@study ~]$ chsh -l
/bin/sh
/bin/bash
/sbin/nologin
<==所谓:合法不可登入的 Shell 就是这玩意!
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
<==这就是 C shell 啦!
/bin/csh
# 其实上面的信息就是我们在 bash 中谈到的 /etc/shells 啦!
[vbird1@study ~]$ chsh -s /bin/csh; grep vbird1 /etc/passwd
Changing shell for vbird1.
Password:
<==确认身份,请输入 vbird1 的密码
Shell changed.
vbird1:x:1003:1004:VBird Tsai test,DIC in KSU,06-2727175#356,06-1234567:/home/vbird1:/bin/csh
[vbird1@study ~]$ chsh -s /bin/bash
# 测试完毕后,立刻改回来!
[vbird1@study ~]$ ll $(which chsh)
-rws--x--x. 1 root root 23856 Mar
6 13:59 /bin/chsh

不论是 chfn 与 chsh ,都是能够让一般用户修改 /etc/passwd 这个系统文件的!所以你猜猜,这两个文件的权限是什么? 一定是 SUID 的功能啦!看到这里,想到前面! 这就是 Linux 的学习方法~^_^

猜你喜欢

转载自blog.csdn.net/qq_52835624/article/details/119203318