Linux的基础命令(3)

一、历史命令

1、history命令

作用:查看或者调用历史命令 语法: history +【选项】 选项: -a:把当前的命令记录追加到历史命令文件 -c:清空历史 -w:保存历史命令
#几个相关history文件
.bash_history     这里记录了很多的历史命令
#指定了默认的历史记录是多少个命令
[root@RHEL8-Master ~]# grep HISTSIZE /etc/profile
HISTSIZE=1000
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL


#几个常见的历史命令的操作
!n:执行第n条命令
!systemctl:指定最近的一systemctl开头的命令
!!:重新执行上一条命令

#清空历史命令
[root@RHEL8-Master ~]# history -c
[root@RHEL8-Master ~]# history 
    1  history 

 

二、用户管理

1、用户相关配置文件

/etc/skel/
[root@RHEL8-Master ~]# ls -a /etc/skel/
.  ..  .bash_logout  .bash_profile  .bashrc

这里面保存的就是用户登录的基础环境
创建用户的时候默认会把这里边的内容复制到用户的家目录
比如说:
[root@RHEL8-Master ~]# useradd zhangsan
[root@RHEL8-Master ~]# ls -a /home/zhangsan/
.  ..  .bash_logout  .bash_profile  .bashrc
/etc/login.defs
[root@RHEL8-Master ~]# grep -v "^#" /etc/login.defs  | grep -v "^$"
MAIL_DIR    /var/spool/mail              #定义了邮件的目录
PASS_MAX_DAYS    99999                 #定义了密码默认的时效时间
PASS_MIN_DAYS    0
PASS_MIN_LEN    5
PASS_WARN_AGE    7
UID_MIN                  1000             #定义了普通用户的UID最小值
UID_MAX                 60000             #定义了普通用户的UID最大值
SYS_UID_MIN               201
SYS_UID_MAX               999
GID_MIN                  1000            #定义了组ID最小值
GID_MAX                 60000            #定义了组ID最大值
SYS_GID_MIN               201            #定义了系统用户UID
SYS_GID_MAX               999            #定义了系统用户最大UID
CREATE_HOME    yes                   #是否创建用户的家目录
UMASK           077                    
USERGROUPS_ENAB yes
ENCRYPT_METHOD SHA512                    #用户的密码加密方式
/etc/passwd
[root@RHEL8-Master ~]# head -2 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin

这里定义了用户密码的文件,
用户名:密码位:UID:GID:用户的描述信息:家目录:shell的解释器
中间是用:相隔开

 

/etc/shadow
[root@RHEL8-Master ~]# head -2 /etc/shadow
root:$6$ZcWcRSjQIL7tr4um$RHrYHNXJwKom2fYCx8.8wEpdIBXT2ym6RNRQY0DgXtWxn11qYNfTP6EQSv7YHRRUCW56aJ/AtwZKTD5wIkO3W1::0:99999:7:::
bin:*:18027:0:99999:7:::

#这里定义真正的密码位置
用户名:密码加密字符串:密码的修改日期:密码再过几天可以被更变:密码最后限期修改:修改密码提前告知日期:口令失效的时间

如果密码位是:!!代表还没有设定密码
Linux的计算日期的时间是以1970年1月1日作为第一天,不断累加的

 

2、useradd命令

作用:创建用户 语法: useradd 【选项】 用户名 选项: -b:指定用户的默认家目录--->在指定的目录下创建和用户同名的家目录 -d:直接指定的目录就是家目录路径---->没有默认的环境 -c:添加用户的注释信息 -e:指定用户密码的过期时间--->直接使用是登陆就得改密码 -g:指定用户的用户组 -G:指定用户的附加组,一般都是用这个 -m:指定用户的主目录,一般是和-d一起使用, -M:创建用户的时候不创建家目录 -r:添加系统用户 -s:指定用户的shell -p:创建的时候创建密码 -u:指定用户的UID
#普通创建用户
[root@RHEL8-Master ~]# useradd lisi
[root@RHEL8-Master ~]# id lisi
uid=1001(lisi) gid=1002(lisi) groups=1002(lisi)

#指定家用户创建用户
[root@RHEL8-Master ~]# useradd user1 -d /data/user1
[root@RHEL8-Master ~]# su - user1
[user1@RHEL8-Master ~]$ pwd
/data/user1

#创建系统用户,并且指定这个用户是无法登陆的
[root@RHEL8-Master ~]# useradd -r nginx -s /sbin/nologin
[root@RHEL8-Master ~]# id nginx
uid=995(nginx) gid=992(nginx) groups=992(nginx)

 

3、usermod命令

作用:修改用户的信息 语法: usermod+选项+用户名 选项: -c:修改用户的描述信息 -d:修改用户的家目录--通常和-m一并使用 -e:修改用户密码的失效时间 -f: 过期 INACTIVE 天数后,设定密码为失效状态 -g: 强制使用 GROUP 为新主组 -G: 新的附加组列表 GROUPS -a:将用户追加至上边 -G 中提到的附加组中,并不从其它组中删除此用户 -l: 新的登录名称 -L:锁定用户帐号 -m: 将家目录内容移至新位置 (仅于 -d 一起使用) -p:将加密过的密码 (PASSWORD) 设为新密码 -R:chroot 到的目录 -s:该用户帐号的新登录 shell -u:用户帐号的新 UID -U: 解锁用户帐号
#锁定用户
[root@RHEL8-Master ~]# usermod -L user1
这样子没法登陆
[C:\~]$ ssh user1@192.168.75.21
Connecting to 192.168.75.21:22...
Connection established.

#添加用户的解释信息
[root@RHEL8-Master ~]# usermod -c "this is a test user" user1
[root@RHEL8-Master ~]# 
[root@RHEL8-Master ~]# grep user1  /etc/passwd
user1:x:1002:1003:this is a test user:/data/user1:/bin/bash

#修改用户的默认shell
[root@RHEL8-Master ~]# usermod -s /sbin/nologin lisi

 

4、userdel命令

作用:删除用户 用法:userdel+选项+用户名 选项: -r:删除用户家目录 -f:强制删除
[root@RHEL8-Master ~]# userdel -rf user1
[root@RHEL8-Master ~]# id uer1
id: ‘uer1’: no such user

 

上一篇:基础权限管理命令


下一篇:sql注入