Linux下的su指令和last指令

1 切换用户命令(su)

su 命令可以切换成不同的用户身份,命令格式如下:

[root@localhost ~]# su [选项] 用户名

选项:
-:选项只使用"-"代表连带用户的环境变量一起切换;
-c 命令:仅执行一次命令,而不切换用户身份

"-"不能省略,它代表切换用户身份时,用户的环境变量也要切换成新用户的环境变量。大家知道环境变量是用来定义用户的操作环境的,如果环境变量没有随用户身份切换,那么很多操作将无法正确执行。

例如,普通用户 lamp 切换成超级用户 root,但是没有加入"-",那么虽然是 root 用户,但是 $PATH 环境变量还是 lamp 用户的,不包含 /sbin、/usr/sbin 等超级用户命令保存路径,所以无法使用管理员命令;而且 root 用户在接收邮件时,还会发现收到的是 lamp 用户的邮件,因为环境变量 $MAIL 没有切换过来。

【例 1】

[lamp@localhost ~]$ whoami


lamp
#查询用户身份,我是lamp
[lamp@localhost ~]$ su root
密码:
<-输入root密码

#切换到root,但是没有切换环境变量。注意:普通用户切换到root需要密码
[root@localhost ~]# env | grep lamp

#查看环境变量,提取包含lamp的行
USER=lamp
#用户名还是lamp,而不是root
PATH=/usr/lib/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/u

2 查看本机的所有登录记录(last)

Linux last 命令用于显示用户最近登录信息。

单独执行 last 指令,它会读取位于 /var/log/目录下,名称为 wtmp 的文件,并把该文件记录登录的用户名,全部显示出来。
在这里插入图片描述
参数说明:

options:

  • -R 省略主机名 hostname 的列
  • -a  把从何处登入系统的主机名称或IP地址显示在最后一行。
  • -d  将IP地址转换成主机名称。
  • -f<记录文件>  指定记录文件。
  • -n<显示行数>或-<显示行数>  显示名单的行数。
  • -R  不显示登入系统的主机名称或IP地址。
  • -x  显示系统关机,重新开机,以及执行等级的改变等信息。
    username:
  • username: 显示指定用户 username 的登录信息。
    tty:
  • tty 设置登录的终端,tty 的名称可以缩写, last 0 与 last tty0 相同。

3 退出当前登录账户(exit)

4 su和last的详细解释

  1. su指令:

在Linux系统中,su(Substitute User)指令用于切换当前用户身份到其他用户身份。它可以让普通用户临时提升为超级用户(root),或者从一个用户切换到另一个用户。下面是对su指令的详细解释:

su命令的基本语法如下:

su [选项] [-] [用户名]

其中,选项主要包括:

  • -: 以目标用户的环境变量来运行shell。
  • -c:后跟指令,执行完毕后退出。
  • -l-: 以目标用户的环境变量来运行shell。

如果不指定用户名,则默认切换到超级用户(root)。当提供了用户名时,su会要求输入目标用户的密码来验证身份。

su指令的主要功能包括:

  • 切换用户:通过su命令可以切换到其他用户,比如从普通用户切换到root用户。这样可以获得超级用户权限,执行需要特殊权限才能完成的任务。
  • 执行命令:使用-c选项,可以在切换用户后直接执行特定的命令,而无需手动切换用户。

注意事项:

  • 需要正确输入目标用户的密码才能切换成功。
  • 使用su命令切换到root用户时,请确保谨慎操作,并只在必要时使用。因为root用户具有最高权限,错误的操作可能导致系统损坏或数据丢失。
  1. last指令:

在Linux系统中,last指令用于显示登录系统的用户信息记录。它能够列出过去登录到系统的用户列表,以及他们登录和注销的时间。下面是对last指令的详细解释:

last命令的基本语法如下:

last [选项] [用户名]

其中,选项主要包括:

  • -f:指定记录文件路径,默认为/var/log/wtmp。
  • -n NUM:显示最近的NUM个记录。
  • -t YYYYMMDDHHMMSS:仅显示指定时间之后的记录。
  • 用户名:显示指定用户的登录记录。

last指令的主要功能包括:

  • 显示登录记录:通过last命令可以查看系统中所有用户最近的登录记录信息,包括登录和注销的时间、登录IP地址等。
  • 过滤特定用户:可以指定用户名来过滤出某个特定用户的登录记录。

注意事项:

  • last命令默认读取/var/log/wtmp文件作为记录文件,该文件记录了用户的登录和注销信息。若想查看历史登录记录需具备相应权限。
  • last命令只能显示已经注销的用户记录,无法实时跟踪当前正在登录使用中的用户。

总结起来,su指令可用于切换用户身份,允许普通用户提升权限或从一个用户切换到另一个用户;last指令用于显示登录系统的用户信息记录,列出过去登录到系统

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

乘凉~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值