问题,如本文题目
概念:effective id, real id
effective id:有效id:即当前的用户id:通过【id 或者 whoami】查看
real id :原始id(实际id):即当前这个会话的登录用户id:可以通过【who + tty】来查看
那回到本文问题,就很简单了:
运行who、whoami 对比看看:如果相同就是登录上来的;如果不同,就是su切换过来的
可能需要结合tty的终端设备信息来辅助判断
另外的方法,直接通过该tty终端设备来反向查询:
- tty 查到终端设备,假设为T
- lsof T 可以差的shell进程号,假设为P
- cd /proc/P
- 然后,可以查询:loginuid、status 2个文件,一对比uid的值,就能知道了:)