2019-01-22笔记—重置密码

命令行修改

[root@linux2019 ~]# passwd username

/etc/passwd文件说明(以:来分割)

[root@linux2019 ~]# tail -n1 /etc/passwd
mysql:x:1000:1000::/home/mysql:/sbin/nologin

用户名(login_name):通常长度不超过8个字符,并且由大小写字母和/或数字组成。

口令(passwd):在/etc/passwd文件的口令字段中一般只存放一个特殊的字符,例如“x”或者“*”,真正的加密后的用户口令字存放到/etc/shadow文件中

用户标识号(UID):是一个整数,一般情况下它与用户名是一一对应的。如果几个用户名对应的用户标识号是一样的,系统内部将把它们视为同一个用户,但是它们可以有不同的口令、不同的主目录以及不同的登录Shell等。取值范围是0-65535。0是超级用户root的标识号,1-99由系统保留,作为管理账号,普通用户的标识号从100开始。在Linux系统中,这个界限是500。

组标识号(GID):字段记录的是用户所属的用户组。它对应着/etc/group文件中的一条记录。

注释性描述(users):是一段任意的注释性描述文字

主目录(home_directory):也就是用户的起始工作目录,它是用户在登录到系统之后所处的目录。

登录Shell(Shell):用户登录后,要启动一个进程,负责将用户的操作传给内核,这个进程是用户登录到系统后运行的命令解释器或某个特定的程序,即Shell。Shell是用户与Linux系统之间的接口。Linux的Shell有许多种,每种都有不同的特点。常用的有sh(BourneShell),csh(CShell),ksh(KornShell),tcsh(TENEX/TOPS-20typeCShell),bash(BourneAgainShell)等。系统管理员可以根据系统情况和用户习惯为用户指定某个Shell。如果不指定Shell,那么系统使用sh为默认的登录Shell,即这个字段的值为/bin/sh。

/etc/shadow文件说明(以:来分割)

[root@linux2019 ~]# useradd -M test1
[root@linux2019 ~]# passwd test1
[root@linux2019 ~]# tail -n1 /etc/shadow
test1:$6$5di/aihD$Z2Rs23cv2X6KmGEXPG5NjihDZtGnjXOPSMVil4hh0YMCRfV8tZVB41rs7L2vTYo7XCZLWr3/FOfgLgeiZppID.:17918:0:99999:7:::

登录名:是与/etc/passwd文件中的登录名相一致的用户账号

口令:是加密后的用户口令字。如果为空,则对应用户没有口令,登录时不需要口令;如果含有不属于集合{./0-9A-Za-z}中的字符,则对应的用户不能登录。

最后一次修改时间:表示的是从某个时刻起,到用户最后一次修改口令时的天数。在SCOLinux中,这个时间起点是1970年1月1日。

最小时间间隔:指的是两次修改口令之间所需的最小天数。

最大时间间隔:指的是口令保持有效的最大天数。

警告时间:字段表示的是从系统开始警告用户到用户密码正式失效之间的天数。

不活动时间:表示的是用户没有登录活动但账号仍能保持有效的最大天数。

失效时间:说少天后账户过期,无法登陆。

单用户模式(Centos系统的一个用户级别)

  • 查看用户级别—ll /usr/lib/systemd/system/runlevel*.target
[root@linux2019 ~]# ll /usr/lib/systemd/system/runlevel*.target
lrwxrwxrwx. 1 root root 15 5月  21 2018 /usr/lib/systemd/system/runlevel0.target -> poweroff.target
lrwxrwxrwx. 1 root root 13 5月  21 2018 /usr/lib/systemd/system/runlevel1.target -> rescue.target
lrwxrwxrwx. 1 root root 17 5月  21 2018 /usr/lib/systemd/system/runlevel2.target -> multi-user.target
lrwxrwxrwx. 1 root root 17 5月  21 2018 /usr/lib/systemd/system/runlevel3.target -> multi-user.target
lrwxrwxrwx. 1 root root 17 5月  21 2018 /usr/lib/systemd/system/runlevel4.target -> multi-user.target
lrwxrwxrwx. 1 root root 16 5月  21 2018 /usr/lib/systemd/system/runlevel5.target -> graphical.target
lrwxrwxrwx. 1 root root 13 5月  21 2018 /usr/lib/systemd/system/runlevel6.target -> reboot.target
  1. 重启设备,进入编辑grub界面
  2. 找到linux16开头行,将光标移动到ro,将ro修改为 rw init=/sysroot/bin/sh,ctrl+x启动
  3. 执行LANG=en
  4. 执行 chroot /sysroot/,进入真正的linux系统环境里面
  5. passwd 修改root密码
  6. touch /.autorelabel
  7. exit退出chroot系统环境,到内存环境
  8. reboot重启

救援模式

  1. 虚拟机关机
  2. 虚拟机-电源-启动时进入BIOS
  3. boot-选择cd-rom drive,保存退出重启
  4. troubleshooting-rescue a Centos system
  5. 按照提示选择continue
  6. 按照提示chroot /mnt/sysimage
  7. 执行passwd命令修改密码
  8. 退出重启,同时把镜像光驱断开(也可以从BIOS中将之前修改的boot启动项改回来)

修改系统语言环境

查询当前系统语言环境

[root@linux2019 ~]# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

查询当前系统已配置的字符集
:locale -a #找到要修改的目标字符集

  1. 临时修改
[root@linux2019 ~]# export LANG=zh_CN.UTF8
[root@linux2019 ~]# locale 
LANG=zh_CN.UTF8
LC_CTYPE="zh_CN.UTF8"
LC_NUMERIC="zh_CN.UTF8"
LC_TIME="zh_CN.UTF8"
LC_COLLATE="zh_CN.UTF8"
LC_MONETARY="zh_CN.UTF8"
LC_MESSAGES="zh_CN.UTF8"
LC_PAPER="zh_CN.UTF8"
LC_NAME="zh_CN.UTF8"
LC_ADDRESS="zh_CN.UTF8"
LC_TELEPHONE="zh_CN.UTF8"
LC_MEASUREMENT="zh_CN.UTF8"
LC_IDENTIFICATION="zh_CN.UTF8"
LC_ALL=
  1. 永久修改
[root@linux2019 ~]# vim /etc/locale.conf  #修改字符集
或者
[root@linux2019 ~]# localectl  set-locale LANG=zh_CN.UTF8

因为centos7 在开机初始化时,locale.conf 来自 /etc/profile.d/lang.sh 的加载,所以还需要修改lang.sh脚本,保存重启。
2019-01-22笔记—重置密码_第1张图片

你可能感兴趣的:(linux学习笔记)