重置密码
- 忘记root密码,无法登陆。需要重置密码。用密钥认证,忘记root密码就无所谓,只要记得密钥密码即可
- 密钥跟密码都能远程登录,二选一。密钥认证是ssh远程登录,密码可以远程跟本地。
- 修改密码
- root用户执行passwd,输入两次密码就行,普通用户,passwd username
- userl登录后修改自己密码,只需执行passwd
- 如果忘记密码,也没有用密钥认证。总之无法远程登录了,如何解决?(单用户,救援模式)
单用户模式
- 单用户模式是centos系统的一个用户级别。什么是用户级别?
- 输入: ls -l /usr/lib/systemd/system/runlevel*.target
- 如何进入单用户级别
- 重启机器---按方向键不要让系统马上启动---选中第一个按e进入grub---按方向键找到linux16开头那行,然后挪到ro那里,把ro改为 rw init=/sysroot/bin/sh----再按Ctrl+x 启动---执行LANG=en(切换英文)---再执行chroot /sysroot/ 进入真正的linux系统里----再执行passwd root更改密码--执行touch /.autorelabel(touch命令是用来创建新文件或者说更改文件时间的命令)l---执行exit退出chroot系统环境,到内存环境---再执行reboot,重启。
救援模式
- 跟单用户模式类似,它需要用系统盘启动,是一个内存操作系统。
- 如何进入救援模式(相当于windows用pe系统进入)
- 关机---点击右键电源启动时进入BIOS---进入BIOS里面选择boot,把光驱放到第一位,按f10---选择troubleleshooting回车选择rescue a centos system----选择continue--回车执行 chroot /mnt/sysimage---执行passwd---执行exit,然后执行reboot,同时把光驱断开。
- 关闭selinux(防火墙)
- vi /etc/selinux/config 把SELINUX=enforcing改为SELINUX=disabled 重启系统生效。
- 临时改selinux的策略:setenforce 0 临时关闭,重启后,还会引用配置文件里面的配置
- getenforce 查看你的selinux状态
ls命令
- man ls(查看ls的命令文档)
- 常用的:
- -a(查看隐藏文件或者目录)
- -l(查看文件的详细信息)时间,大小,权限,属主,属组,文件属性
- - 普通文件
- d 目录
- l 软连接文件
- b 块设备文件(磁盘)
- c 字符设备文件(键盘,鼠标)
- s 套接字文件(socket文件,这个文件Unix/linux系统里面用来通信的,进程间通信文件)
- p 管道文件(命名管道)
- -d 查看目录本身
- -t 按照时间排序,最新的在上面
- -i inode(在格式化磁盘的时候生成的)
chmod命令(修改文件权限)
- r==read(读)只读数字为4 否则为0
- w==write(写)只写数字为2 否则为0
- x==execute(执行)执行数字为1 否则为0
- 注意上面的截图表示的是drwx --- --- 有三组,对应的就是上面的(rwx)所有者 (rwx)所属组 (rwx)其他用户
- 假如我要把所有者权限改为只读只写,所属组权限改为只读,其他用户都没有,就是 4+2+0 4+0+0 0+0+0 这样得出就是640(rwxr-----)
- ls -l查看文件权限 第一段的2-10位就是上面所说的权限(rwx)(rwx)(rwx)
- t---》stick权限(作用是:谁的文件,谁做主,无法限制root用户)
- chmod 所有者 u 所属组 g 其他用户 o u+g+o ==a
- chmod u+x
- chmod g-w
- chmod o+t