命令行修改
[[email protected] ~]# passwd username
/etc/passwd文件说明(以:来分割)
[[email protected] ~]# 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文件说明(以:来分割)
[[email protected] ~]# useradd -M test1
[[email protected] ~]# passwd test1
[[email protected] ~]# 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
[[email protected] ~]# 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
- 重启设备,进入编辑grub界面
- 找到linux16开头行,将光标移动到ro,将ro修改为 rw init=/sysroot/bin/sh,ctrl+x启动
- 执行LANG=en
- 执行 chroot /sysroot/,进入真正的linux系统环境里面
- passwd 修改root密码
- touch /.autorelabel
- exit退出chroot系统环境,到内存环境
- reboot重启
救援模式
- 虚拟机关机
- 虚拟机-电源-启动时进入BIOS
- boot-选择cd-rom drive,保存退出重启
- troubleshooting-rescue a Centos system
- 按照提示选择continue
- 按照提示chroot /mnt/sysimage
- 执行passwd命令修改密码
- 退出重启,同时把镜像光驱断开(也可以从BIOS中将之前修改的boot启动项改回来)
修改系统语言环境
查询当前系统语言环境
[[email protected] ~]# 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 #找到要修改的目标字符集
- 临时修改
[[email protected] ~]# export LANG=zh_CN.UTF8
[[email protected] ~]# 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=
- 永久修改
[[email protected] ~]# vim /etc/locale.conf #修改字符集
或者
[[email protected] ~]# localectl set-locale LANG=zh_CN.UTF8
因为centos7 在开机初始化时,locale.conf 来自 /etc/profile.d/lang.sh 的加载,所以还需要修改lang.sh脚本,保存重启。